Plateforme Level Extreme
Abonnement
Profil corporatif
Produits & Services
Support
Légal
English
Compile Errors - Anyone Able to Help
Message
De
12/09/2007 17:13:27
 
Information générale
Forum:
Visual FoxPro
Catégorie:
VFP Compiler for .NET
Versions des environnements
Visual FoxPro:
VFP 9 SP1
OS:
Windows XP SP2
Network:
Windows 2003 Server
Database:
MS SQL Server
Divers
Thread ID:
01253985
Message ID:
01254012
Vues:
18
Thanks Samuel! :o)

Tracy



>Tracy,
>
>The compiler / runtime does not support SET commands yet. The functionality implemented for the May Preview is at: http://etecnologia.net/Products/VFPCompiler/ImplementedFunctionality.htm.
>
>Because internally the compiler skips that GLOBAL block it tries to recover but fails and skip all the code. This is an issue we are aware for the global procedure.
>
>If you comment the not implemented lines, it compiles and run fine. NOTE: I also commented the line with the logical testing, there was an error in the runtime handling logical variables in the May preview.
>
>
>
>*	set talk OFF
>*	set echo OFF
>*	set exclusive OFF
>	gltestvar1 = .t.
>	gctestvar1 = 'Test Variable'
>	gntestvar1 = 1
>
>*	=MESSAGEBOX('gltestvar1='+IIF(gltestvar1,'T','F'),0+48+4096)
>	=MESSAGEBOX('gctestvar1='+gctestvar1,0+48+4096)
>	=MESSAGEBOX('gntestvar1='+ALLTRIM(STR(gntestvar1)),0+48+4096)
>
>	return
>
>
>
>With The following code the compiler tell you something is wrong. The compiler is smarter inside classes.
>
>
>DEFINE CLASS SomeClass
>
>	PROCEDURE SetTest
>	set talk OFF
>	set echo OFF
>	set exclusive OFF
>	gltestvar1 = .t.
>	gctestvar1 = 'Test Variable'
>	gntestvar1 = 1
>
>	=MESSAGEBOX('gltestvar1='+IIF(gltestvar1,'T','F'),0+48+4096)
>	=MESSAGEBOX('gctestvar1='+gctestvar1,0+48+4096)
>	=MESSAGEBOX('gntestvar1='+ALLTRIM(STR(gntestvar1)),0+48+4096)
>
>	return
>
>
>ENDDEFINE
>
>>Putting all of the stuff in one directory appears to work (more or less). When I run your sample, it appears to work. However, I tried our main.prg for our app and the output in the exe is empty. I then decided to try a more basic approach and tried this .prg:
>>
>>
>>set talk OFF
>>set echo OFF
>>set exclusive OFF
>>gltestvar1 = .t.
>>gctestvar1 = 'Test Variable'
>>gntestvar1 = 1
>>
>>=MESSAGEBOX('gltestvar1='+IIF(gltestvar1,'T','F'),0+48+4096)
>>=MESSAGEBOX('gctestvar1='+gctestvar1,0+48+4096)
>>=MESSAGEBOX('gntestvar1='+ALLTRIM(STR(gntestvar1)),0+48+4096)
>>
>>return
>>
>>
>>
>>The result is an empty exe with an error:
>>
>>
>>VFPCW0003: WARNING: Local variable '_26G0X02BI' is not used.

>>
>>It looks like the compiler or vs doesn't know what to do with VFP's compiled code. I may be wrong, but that variable looks like something the vfp runtime or compiler (not your stuff I mean) kicks out (the runtime?)
>>
>>Am I missing something? I tried this months ago with the samples and I was very impressed but can't seem to get it working now.
>>
>>Tracy
>>
>>
>>The output is:
>>
>>
>>public sealed class TestModule
>>{
>>    // Methods
>>    private TestModule()
>>    {
>>        this.InternalInitialize();
>>    }
>>
>>    public override object InternalInitialize()
>>    {
>>        object obj2;
>>        return obj2;
>>    }
>>
>>    public static void Main()
>>    {
>>        int num = VFPVM.GlobalVM.EnterProcedure();
>>        VFPVM.GlobalVM.ExitProcedure();
>>    }
>>}
>>
>>
>>That's it.
.·*´¨)
.·`TCH
(..·*

010000110101001101101000011000010111001001110000010011110111001001000010011101010111001101110100
"When the debate is lost, slander becomes the tool of the loser." - Socrates
Vita contingit, Vive cum eo. (Life Happens, Live With it.)
"Life is not measured by the number of breaths we take, but by the moments that take our breath away." -- author unknown
"De omnibus dubitandum"
Précédent
Répondre
Fil
Voir

Click here to load this message in the networking platform