Plateforme Level Extreme
Abonnement
Profil corporatif
Produits & Services
Support
Légal
English
Complex forms software to replace Delrina FF
Message
De
23/11/2004 14:11:25
 
 
À
23/11/2004 13:15:23
Information générale
Forum:
Visual FoxPro
Catégorie:
Autre
Divers
Thread ID:
00931761
Message ID:
00963980
Vues:
46
Hi Tracy,

Well the trouble turned out to be in the DECLARE DLL for the CreateProcess() function - and it probably did not turn up for others unless they passed in a different value for the parameter. I stared bleary eyed at why your test program worked and if I copied your declare statement into mine, mine also worked but could not find it (intially). Here is the original function setup I had copied which was throwing the error:
IF ASCAN(dllarray,'CREATEPROCESS') = 0
    DECLARE INTEGER CreateProcess IN kernel32;
        INTEGER lpAppName, STRING lpCmdLine, INTEGER lpProcAttr,;
        INTEGER lpThrAttr, INTEGER bInhHandles, INTEGER dwCrFlags,;
        INTEGER lpEnvir, INTEGER lpCurDir, ;
        STRING @lpStInfo, STRING @lpProcInfo
ENDIF

* and here is the one you just gave to me to test which worked:

       DECLARE INTEGER CreateProcess IN kernel32 ;
          STRING lpApplicationName, STRING lpCommandLine, ;
          INTEGER lpProcessAttributes, INTEGER lpThreadAttributes, ;
          INTEGER bInheritHandles, INTEGER dwCreationFlags, ;
          INTEGER lpEnvironment, STRING lpCurrentDirectory, ;
          STRING @lpStartupInfo, STRING @lpProcessInformation
I looked and looked and finally saw that the 1st parameter was declared an INTEGER in the original and a STRING in the 2nd; same went for parameter lpCurDir. This is one of those "gotchas" - should have maybe reformatted the two into a single column and might have found it quicker...thanks for the help.

Albert
Précédent
Suivant
Répondre
Fil
Voir

Click here to load this message in the networking platform