Plateforme Level Extreme
Abonnement
Profil corporatif
Produits & Services
Support
Légal
English
Data Conversions and structures
Message
De
29/04/1999 14:32:28
 
 
À
29/04/1999 12:55:57
Information générale
Forum:
Visual FoxPro
Catégorie:
Fonctions Windows API
Divers
Thread ID:
00213418
Message ID:
00213573
Vues:
33
>>>>Is there a class out there that will convert datatypes from vfp to standard dll/(c/c++) datatypes. For instance...
>>>>
>>>>ulong
>>>>pStr
>>>>etc...
>>>>
>>>
>>>What do you need to do? Simple data types declared via DECLARE DLL are converted by VFP for you; you need to know a good deal more to handle structures and pointers. You might want to look at Paul Tatavu's POINTERS class and my CLSHEAP class, which both provide mechanisms for doing some of the conversions and allocations needed to interface C-style .DLLs with VFP.
>>
>>Thanx for a fast reply...
>>
>>
>>I need to call a function that is defined like this:
>>
>>ULONG PacketGetAdapterNames(PTSTR pStr, PULONG pSize)
>>
>>I can get it to work in Visual Basic, and even Access(scary!) but not in VFP...
>>
>>Both Arguments should be passed by reference.
>>
>>In VFP:
>>
>>declare PacketGetAdapterNames in c:\newpack.dll string @ long @
>
>
DECLARE INTEGER PacketGetAdapterNames IN c:\NEWPACK.DLL ;
>   STRING @ Arg1, ;
>   INTEGER @ Arg2
>
>You forgot to declare the return type, and left out the comma separating the arguments in the DECLARE...DLL; the revised one should do what you want.
>
>>and then:
>>mike = PacketGetAdapterNames(@buf,@namelength)
>>and VFP returns:
>>"Too Many Arguments."


Ok... maybe not a pointer....

But possibly a unicode string?
or HEX and unicode? I tried STRCONV but it made it worse... I get some readable text with boxes in between the letters, I ran
buf2 = STRCONV(buf,6)
but I recieve even more boxes and a character that looks like a cross....
then i run buf3 = STRCONV(buf2,2)
same result as the prior...
As I ran another function I recieved a string that looked like it was unicode:
boxes in between 3 characters... but one of the characters was a (Y) with a seriff on top... Which makes me wonder if it is in HEX also...



Thanx again,



Michael Mead
Précédent
Suivant
Répondre
Fil
Voir

Click here to load this message in the networking platform