Le 31/10/2012 06:04, Bruce a écrit : > I have a library which contains classes to analyse horse trial times. > These classes rely on some files which contain some static data about > the various analyses, these files are all called AbcZyx.meta where > AbcXyz is the name of the relevant class (note the mixed case in both). > When the first instance of any of these classes is created, it reads > that associated file and sets up the static data. > > Somehow lately a strange thing has happened, one of the classes when it > loads has it's name converted to lower case. All the others preserve > the case of the class name. > > I've put the following trace into the early methods for some of the > projects that use this library: > Dim wkclass As Class > For Each wkclass In Classes > If Not IsNull(wkclass.Parent) Then > If wkclass.Parent.Name = "BaseBO" Then Print wkclass.Name > Endif > Next > > and generally this is what I get vs the "real" class name: > ClassNameloaded ClassNamereal > --------------- -------------- > TrialSpeeds TrialSpeeds > TrialSpeed1 TrialSpeed1 > TrialSpeed3 TrialSpeed3 > TrialSpeed2 TrialSpeed2 > TrackMap TrackMap > TrackAltMap TrackAltMap > Horse Horse > trackname TrackName <------???? > Jockey Jockey > Track Track > > So all of them, except TrackName have the expected class name. > > and when it tries to load the file via > Dim sFilename as String > Dim hMetaFile as File > sFileName=Object.Class(Me).Name&".meta" > Try hMetafile = Open $templatepath &/ sFileName For Input > etc > it fails, because of the case mismatching of the names. > > I have searched every file in the library project and all of the client > projects and can not find any instance of the string "trackname". I > have cleaned, recompiled etc etc each of these projects and this fail > still occurs. > > Is there something special about a class called "TrackName"? It only > ever happens for that class. > > Totally bewildered? > Bruce >
There must be an occurence of "trackname" in lower case somewhere in your source code. The name of the class is the first name encountered by the interpreter. Regards, -- Benoît Minisini ------------------------------------------------------------------------------ Everyone hates slow websites. So do we. Make your web apps faster with AppDynamics Download AppDynamics Lite for free today: http://p.sf.net/sfu/appdyn_sfd2d_oct _______________________________________________ Gambas-user mailing list Gambas-user@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/gambas-user