Plateforme Level Extreme
Abonnement
Profil corporatif
Produits & Services
Support
Légal
English
Debugger bug
Message
De
07/11/2013 08:55:43
 
 
À
07/11/2013 08:32:31
Information générale
Forum:
Visual FoxPro
Catégorie:
Codage, syntaxe et commandes
Titre:
Versions des environnements
Visual FoxPro:
VFP 5
OS:
Windows Server 2012
Network:
Windows 2008 Server
Database:
MS SQL Server
Application:
Web
Divers
Thread ID:
01587352
Message ID:
01587480
Vues:
57
>>The arrow is pointing 5 lines before the line that is about to be executed
>>
>>So:
>>
>>
>>Line of code  <<=== debug arrow
>>
>>Line of code
>>susp
>>
>>lcVar1 = 'cat'   <<=== the debug arrow should be here
>>lcVar2 = 'dog'
>>
>>
>>In the above, the watch window shows lcVar1 and lcVar2 as undefined.
>>
>>Now I press the step button and this is what happens:
>>
>>
>>Line of code  
>>                     <<=== debug arrow
>>Line of code
>>susp
>>
>>lcVar1 = 'cat'   
>>lcVar2 = 'dog'  <<=== the debug arrow should be here
>>
>>
>>In the above, the watch window shows lcVar1 = 'cat' and and lcVar2 is undefined.
>
>That, I've never seen.
>Tamar

I have never seen this in VFP's debugger. However, in other systems I have seen this when the source code is stale, or out-of-synch with the compiled code. I used to see this in the CodeView debugger back in the DOS days. There was no check to see if the compiled .EXE you were debugging was using the same version as what's on disk for your source file.

You might look for some special characters in your file, such as odd line-ending characters, or non-standard bytes. You could:
lcFile = FILETOSTR("c:\temp\myprog.prg")

* Note:  You may need to extend this k variable to include other characters you use properly in your program.
k = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789*&:\-.,=()'+[]$?_<>;!" + CHR(34) + CHR(9)

* Perform the conversion, to remove everything except line ending characters
lcFile = STRTRAN(CHRTRAN(lcFile, k, SPACE(LEN(k))), SPACE(1), SPACE(0))

*_cliptext = lcFile
* Note:  You can test it out by pasting the clipboard at this step into a text editor and see other characters you need to filter out.

* Save it back out and bring it up in the hex editor
STRTOFILE(lcFile, "c:\temp\myprog.hex")
DO (HOME() + "tools\hexedit\hexedit.app") WITH "c:\temp\myprog.hex"
When the window pops up, you should see only consistent line characters throughout the file, such as nothing but matched pairs of 0D,0A repeated throughout. If it ever changes or shifts, then you likely have some non-standard line endings which is causing the problem.
Précédent
Suivant
Répondre
Fil
Voir

Click here to load this message in the networking platform