@KCC pourquoi ne pas utiliser ton hyper-sensibilité et tes indéniables talents d'écrivain pour nous pondre un best-seller??
Mon reve en C Majeur....
Re: Mon reve en C Majeur....
sans vouloir m'incruster dans une conversation d'anciens
@KCC pourquoi ne pas utiliser ton hyper-sensibilité et tes indéniables talents d'écrivain pour nous pondre un best-seller??
@KCC pourquoi ne pas utiliser ton hyper-sensibilité et tes indéniables talents d'écrivain pour nous pondre un best-seller??
Feel The Power Of PureBasic
.................................................................................................................................................................
Soyez indulgents: je debute!
.................................................................................................................................................................
Soyez indulgents: je debute!
Re: Mon reve en C Majeur....
J'ai trouvé des trucs pour toi:
http://vb.mvps.org/tips/vb5dll.asp
http://xcell05.free.fr/pages/api/utilisation.htm (tu dois déjà l'avoir)
et ça qui te permettra de convertir ces BSTRs. http://www.forums.purebasic.com/english ... 2c#p236896
Avec tout ça tu devrais pouvoir passer des chaines de PB à VB.
http://vb.mvps.org/tips/vb5dll.asp
http://xcell05.free.fr/pages/api/utilisation.htm (tu dois déjà l'avoir)
et ça qui te permettra de convertir ces BSTRs. http://www.forums.purebasic.com/english ... 2c#p236896
Avec tout ça tu devrais pouvoir passer des chaines de PB à VB.
- Kwai chang caine
- Messages : 6992
- Inscription : sam. 23/sept./2006 18:32
- Localisation : Isere
Re: Mon reve en C Majeur....
Merci beaucoup DJES, je vais regarder ça de suite 
Depuis mes 5 ans que je cherche, j'ai eu a travers mes presques 50 codes qui marchent pas, exploré toutes les possibilité qu'il fallait pas faire
Je te rassure je ne fait pas que ça, mais chacun de mes programmes me rammenent un jour ou l'autre a ce transfert
Mais dernierement, j'ai avancé enfin, car SROD y me disait toujours "Use SafeArray IDIOT
Use SafeArray it's very simple, since several month i say that to you Use SafeArray!!!
(Il etait tres amical avec moi)
"Youse séfaré" "Youse séfaré", il en de bonnes lui, est ce que je lui disait, mange des grenouilles, mange des grenouilles tu verras c'est facile
Et j'avais essayé, a maintes reprises, les "séfaré" mais pas moyen je scratchais (Bon tu va me dire pour un ex DJ c'est cool
), mais la je scratchais mon RAD VB6, et c'etait pas cool 
Puis a force de pleurer sur tous les forums C/PB/VB ....une ame sensible a décidé de m'aider, et la miracle, je me suis fait un copain...enfin je suis pas sur, car je lui ai cassé les "roustonbignols" pendant une semaine
Il m'a donné plein de codes pour me guider, et j'ai plus de nouvelles.
SPARKIE a déménagé, SROD a déménagé, "Mon copain" ....en fin de compte y'a pas que les centrales nucleaires qui font demenager...y'a KCC
Bref, "Mon copain" m'a donné le declic, car il faut pas grand chose pour comprendre...enfin pour moi un peu plus.
Car ce gland de bilou, il ne fait pas que donner un pointeur de SafeArray...non non non, ce serais trop simple, et comme il savait qu'un jour une burne du nom de KCC il esssaierait de devoiler ses parties les plus intimes, il a fait plus compliqué
VB quand il envoie un tableau de string, il envoie un pointeur de pointeur de SafeArray
Nadine boudin....j'savais meme pas que ça existait ça..les pointeurs et qui plus est de SafeArray, c'etait deja assez compliqué
Alors "Mon copain" y m'a dit, c'est simple il faut dereferencer le pointeur transmis, c'est a dire abaisser l'elevation d'un niveau
Ouaaaaaf Ouaaaaaf Ouaaaaaf Ouaaaaaf !!! mais ouaih..pourquoi n'y ai je pas pensé plus tot
c'etait pourtant si intuitif ..je me demande pourquoi j'ai passé 5 ans la dessus seul devant mon PC
Alors depuis que j'ai compris ça, je suis arrivé a faire les fonctions de transfert de tableaux, mais il me reste le meilleur....les structures
Je m'en regale rien que d'y penser...je vais m'y attaquer des ce jour, car melanger les BSTR, les Integer, Les long tout ça sous SafeArray UNICODE , pour y envoyer dans une DLL ASCII qui ne comprend que les LPSTR, et les pointeurs....j'me tripote le clavier d'avance
Et je lache pas l'affaire des CGI non plus ça a l'air interessant, grace a ton aide, celle de DROOPY et de FREEPUREBASIC d'ici à 2020, KCC il pourra lancer un exe sur son serveur
En tout cas merci de ta gentillesse et de ton soutiens dans une periode ou KCC y se sent bien seul
Je te souhaite une excelente journée
Depuis mes 5 ans que je cherche, j'ai eu a travers mes presques 50 codes qui marchent pas, exploré toutes les possibilité qu'il fallait pas faire
Je te rassure je ne fait pas que ça, mais chacun de mes programmes me rammenent un jour ou l'autre a ce transfert
Mais dernierement, j'ai avancé enfin, car SROD y me disait toujours "Use SafeArray IDIOT
"Youse séfaré" "Youse séfaré", il en de bonnes lui, est ce que je lui disait, mange des grenouilles, mange des grenouilles tu verras c'est facile
Et j'avais essayé, a maintes reprises, les "séfaré" mais pas moyen je scratchais (Bon tu va me dire pour un ex DJ c'est cool
Puis a force de pleurer sur tous les forums C/PB/VB ....une ame sensible a décidé de m'aider, et la miracle, je me suis fait un copain...enfin je suis pas sur, car je lui ai cassé les "roustonbignols" pendant une semaine
Il m'a donné plein de codes pour me guider, et j'ai plus de nouvelles.
SPARKIE a déménagé, SROD a déménagé, "Mon copain" ....en fin de compte y'a pas que les centrales nucleaires qui font demenager...y'a KCC
Bref, "Mon copain" m'a donné le declic, car il faut pas grand chose pour comprendre...enfin pour moi un peu plus.
Car ce gland de bilou, il ne fait pas que donner un pointeur de SafeArray...non non non, ce serais trop simple, et comme il savait qu'un jour une burne du nom de KCC il esssaierait de devoiler ses parties les plus intimes, il a fait plus compliqué
VB quand il envoie un tableau de string, il envoie un pointeur de pointeur de SafeArray
Nadine boudin....j'savais meme pas que ça existait ça..les pointeurs et qui plus est de SafeArray, c'etait deja assez compliqué
Alors "Mon copain" y m'a dit, c'est simple il faut dereferencer le pointeur transmis, c'est a dire abaisser l'elevation d'un niveau
Ouaaaaaf Ouaaaaaf Ouaaaaaf Ouaaaaaf !!! mais ouaih..pourquoi n'y ai je pas pensé plus tot
Alors depuis que j'ai compris ça, je suis arrivé a faire les fonctions de transfert de tableaux, mais il me reste le meilleur....les structures
Je m'en regale rien que d'y penser...je vais m'y attaquer des ce jour, car melanger les BSTR, les Integer, Les long tout ça sous SafeArray UNICODE , pour y envoyer dans une DLL ASCII qui ne comprend que les LPSTR, et les pointeurs....j'me tripote le clavier d'avance
Et je lache pas l'affaire des CGI non plus ça a l'air interessant, grace a ton aide, celle de DROOPY et de FREEPUREBASIC d'ici à 2020, KCC il pourra lancer un exe sur son serveur
En tout cas merci de ta gentillesse et de ton soutiens dans une periode ou KCC y se sent bien seul
Je te souhaite une excelente journée
Dernière modification par Kwai chang caine le jeu. 17/mars/2011 10:01, modifié 7 fois.
- Kwai chang caine
- Messages : 6992
- Inscription : sam. 23/sept./2006 18:32
- Localisation : Isere
Re: Mon reve en C Majeur....
Bon j'sais que c'est un peu tard pour une reponse, excuse moi, mais KCC il a pris des vacances on va dire ..."forcées"swolf a écrit :sans vouloir m'incruster dans une conversation d'anciens![]()
@KCC pourquoi ne pas utiliser ton hyper-sensibilité et tes indéniables talents d'écrivain pour nous pondre un best-seller??
En temps normal, je repond beaucoup plus vite, voir meme beaucoup trop vite
Et je repond toujours, que ce soit sur n'importe quel sujet, c'est pour moi une marque de politesse, mais j'avais pas vu ton message, donc si tu repasses un jour par la ..
Deja tu es le bienvenu, et en plus si c'est pour dire des choses gentilles sur le sujet que je prefere le plus, c'est à dire Mouuuuaaaaaahh !!!
C'est tres gentil ce compliment qui me va droit au coeur, tu n'es pas le premier à me le dire
Mais bon quand tu vois que ici mes textes sont gratuits et plus personne ne veut les lire ou presque..alors j'ai peur que si on rajoute 20 euros dans la balance, ma librairie soit fermée d'avance
Mais j'y pense quand meme ne serait ce que sur un site, comme ça ne viendront que ceux qui me supporte, et en plus j'ai toujours tellement de choses à dire, et j'aime tellement faire rire, le rire des autres allegent un court instant ma tristesse
Des centaines de choses que je n'ai encore jamais évoquées sur ces forums, car comme le disent tout mon entourage, y parait que j'ai pas une vie "normale".....remarque ça explique aussi que je n'ai pas un comportement tres normal non plus
Encore merci ....et au plaisir de reparler de ce sujet
Re: Mon reve en C Majeur....
re-Explique ton problème KCC , j'ai eu le même soucis en c++ pour faire revenir une chaine de caractère dans le résultat d'une fonction.
- Kwai chang caine
- Messages : 6992
- Inscription : sam. 23/sept./2006 18:32
- Localisation : Isere
Re: Mon reve en C Majeur....
Bah en fait, c'est lié a la gestion de VB6
Il parait que VB.NET ne gere plus du tout comme ça
Les tableaux de VB6 ne sont pas des tableaux comme le C/PB
Ce sont des safeArray, c'est a dire une structure que FRED a d'ailleurs incorporé dernierement dans PB qui donne la taille du tableau, les pointeurs des data, la dimension, et d'autres choses que j'ai pas tout compris
Donc quand les tableaux se passent par reference dans VB, ils ont toutes les caracteristiques avec, et faut reconnaitre que c'est cool.
Fred a un peu fait ça en mettant 8 octet avant le debut du tableau la taille
Le deuxieme soucis c'est que les strings qui sont dans ces tableaux, ne sont pas des strings comme C/PB
Ce sont des BSTR, en PB/C ce sont des LPSTR
La BSTR c'est une string avec devant la longueur de la string
Et pour finir VB utilise communement l'UNICODE, ce que je ne veux pas utiliser dans ma DLL
Parfois il traduit en ASCII selon la declaration de l'appel de la fonction dans la DLL, mais parfois il envoie en UNICODE
Alors quand tu melange tout ça, en passant par exemple une structure, ou voir meme un tableau de structure....
Et ben comme VB6 et C/PB ne parle pas un mot pareil, ça fait comme moi qui parle sur le forum anglais et allemand...c'est pas facile..voir impossible
Il parait que VB.NET ne gere plus du tout comme ça
Les tableaux de VB6 ne sont pas des tableaux comme le C/PB
Ce sont des safeArray, c'est a dire une structure que FRED a d'ailleurs incorporé dernierement dans PB qui donne la taille du tableau, les pointeurs des data, la dimension, et d'autres choses que j'ai pas tout compris
Donc quand les tableaux se passent par reference dans VB, ils ont toutes les caracteristiques avec, et faut reconnaitre que c'est cool.
Fred a un peu fait ça en mettant 8 octet avant le debut du tableau la taille
Le deuxieme soucis c'est que les strings qui sont dans ces tableaux, ne sont pas des strings comme C/PB
Ce sont des BSTR, en PB/C ce sont des LPSTR
La BSTR c'est une string avec devant la longueur de la string
Et pour finir VB utilise communement l'UNICODE, ce que je ne veux pas utiliser dans ma DLL
Parfois il traduit en ASCII selon la declaration de l'appel de la fonction dans la DLL, mais parfois il envoie en UNICODE
Alors quand tu melange tout ça, en passant par exemple une structure, ou voir meme un tableau de structure....
Et ben comme VB6 et C/PB ne parle pas un mot pareil, ça fait comme moi qui parle sur le forum anglais et allemand...c'est pas facile..voir impossible
Re: Mon reve en C Majeur....
C 'est pas impossible, je vais jeter un oeil, tout les langages parlent pareil en finalité, mais utilise un patois propre a chacun.
- Kwai chang caine
- Messages : 6992
- Inscription : sam. 23/sept./2006 18:32
- Localisation : Isere
Re: Mon reve en C Majeur....
Merci GRom
@DJES
J'ai jeté un oeil a tes liens, le premier collait bien a ce que je cherche, le passage des UDT, les structures quoi
J'ai essayé de faire comme ils disent, mais VB y veut pas, il me dit convention d'appel incorrect
A croire qu'il veut pas que je rammene un UDT, remarque que c'est qu'a moitié etonnant, car PB il sait retourner que des long
Par contre j'ai vu dans le code C du debut, des trucs que je comprend pas
Et c'est peut etre la qu'est l'astuce, peut etre que C sait faire des choses que PB ne sait pas faire
Peut etre que C sait retourner des UDT pour que VB les reconnaisse comme UDT ??
Enfin, je sais que c'est pas votre partie le VB, et comme j'vous dit c'est vraiment un monde a part
Bilou il a tellement voulu simplifier les choses que VB converti, "devine", etc tout en arriere plan
Et seul ceux qui ont beaucoup utilisé VB6 savent comment il s'y prend pour envoyer les parametres etc...
Regardez rien que les variant...c'est un truc a VB, je crois....
Je viens d'apprendre y'a pas vieux, qu'en fait le variant c'est la valeur de la variable et on livre avec, le type de la variable
C'est pour ça que c'est deux fois plus gros un variant....
Enfin c'est plein de joyeuserie comme ça, avec lesquelles je m'eclate depuis 5 ans.
Remarque vouloir marier une brouette avec une baguette de pain....y'a que KCC
@DJES
J'ai jeté un oeil a tes liens, le premier collait bien a ce que je cherche, le passage des UDT, les structures quoi
J'ai essayé de faire comme ils disent, mais VB y veut pas, il me dit convention d'appel incorrect
Code : Tout sélectionner
Private Declare Function CreationStructureStandard Lib "DllPb.dll" () As Complexe
Dim VariableStructurer As Complexe
VariableStructurer = CreationStructureStandard
Par contre j'ai vu dans le code C du debut, des trucs que je comprend pas
Code : Tout sélectionner
VariantChangeType(&pUdt->vnt, &pUdt->vnt, NULL, VT_BSTR);Peut etre que C sait retourner des UDT pour que VB les reconnaisse comme UDT ??
Enfin, je sais que c'est pas votre partie le VB, et comme j'vous dit c'est vraiment un monde a part
Bilou il a tellement voulu simplifier les choses que VB converti, "devine", etc tout en arriere plan
Et seul ceux qui ont beaucoup utilisé VB6 savent comment il s'y prend pour envoyer les parametres etc...
Regardez rien que les variant...c'est un truc a VB, je crois....
Je viens d'apprendre y'a pas vieux, qu'en fait le variant c'est la valeur de la variable et on livre avec, le type de la variable
C'est pour ça que c'est deux fois plus gros un variant....
Enfin c'est plein de joyeuserie comme ça, avec lesquelles je m'eclate depuis 5 ans.
Remarque vouloir marier une brouette avec une baguette de pain....y'a que KCC
Dernière modification par Kwai chang caine le jeu. 17/mars/2011 12:55, modifié 1 fois.
Re: Mon reve en C Majeur....
j'ai regardé vite fait
on peut traduire les SafeArray de cette manière en PB :
Evidement , il faut que tu soit un roi du peek / poke pour récupérer les données car le Dim rgsabound.SafeArrayBound(1) dans la structure risque de posé problème
je l'ai juste mis pour simplifier la lecture. pour le moment , tu as une fonction en VB prête a renvoyer un pointeur de SAFEARRAY ?
on peut traduire les SafeArray de cette manière en PB :
Code : Tout sélectionner
Structure SafeArrayBound
cElements.i ; Number element of dimension
lLBound.i ; Lower bound
EndStructure
Structure SafeArray
cDims.u
fFeatures.u
cbElements.i
cLocks.i
*pvData.i
Dim rgsabound.SafeArrayBound(1) ; Risque de problème ici , PB ne va pas adresser automatiquement la taille
EndStructure
*Pointer.SafeArray = AllocateMemory(SizeOf(SafeArray))
*Pointer = FonctionVbQuiRenvoisUnPointeurDeSafeArray()
For Dimension = 0 To *Pointer\cDims-1
Debug "Dimension = "+Str(Dimension)
For element = *Pointer\rgsabound(Dimension)\lLBound To *Pointer\rgsabound(Dimension)\cElements
ElementSize = *Pointer\cbElements
*ptrElement = *pvData + (element * ElementSize) ; <---- TON ELEMENT EST LA !
Next
Next Evidement , il faut que tu soit un roi du peek / poke pour récupérer les données car le Dim rgsabound.SafeArrayBound(1) dans la structure risque de posé problème
je l'ai juste mis pour simplifier la lecture. pour le moment , tu as une fonction en VB prête a renvoyer un pointeur de SAFEARRAY ?
- Kwai chang caine
- Messages : 6992
- Inscription : sam. 23/sept./2006 18:32
- Localisation : Isere
Re: Mon reve en C Majeur....
Merci beaucoup GRom
Mais maintenant, pour tout ce qui est des tableaux de strings, je pense avoir trouvé
Mon probleme maintenant c'est les Structures, Je ne sais pas comment les gere VB
En plus je crois que VB les "modifie" en route pour optimiser
Style une structure que tu ecrirais comme ça
VB va la transformer en arriere plan comme ça
Car y'a une histoire d'octets a economiser, il les classe par ordre de grandeur, pour ne pas avoir d'octets de perdu
"Mon copain" il a essayé de m'expliquer.....mais j'ai pas tout compris
En fin de compte y'a tellement de chose a comprendre en VB, car il fait ce qu'il veut
Ce que tu code, n'est pas du tout ce qui sort
VB a ses regles, pour soit disant optimiser, et faciliter la vie..c'est vrai si on essaie pas de mettre les mains dans le cambouis
Alors si c'est bien vrai qu'il modifie les structures selon une convention a lui, comment s'y retrouver de l'autre coté ??
Il faudrait que je connaisse son raisonnement et que je créé la structure comme il l'optimiserait, comme ça il y touchera pas
En plus actuellement j'essais juste de retourner une structure créée dans PB...et bin ..a moi la peur
Je suis arrivé a faire l'inverse, normal, c'est toujours simple avec PB
Mais pour une fois VB a l'air de convertir en ASCII direct et c'est pour ça que avec PB ça marche
Donc lire une structure VB avec PB...ça ça marche:
Code PB de la DLL
Code VB
Maintenant, j'arrive pas a faire marcher la reception d'une structure créé par PB
Code VB
Code PB de la DLL
C'est ce que je disais au dessus a DJES, apparement VB ne veut pas que je retourne directement un UDT
Alors qu'avec l'exemple du premier lien de DJES avec du C, c'est ce qu'il preconisent
Mais le C sait peut etre faire des choses que PB ne sait pas faire
Car j'ai vue la ligne
Et ça en PB ?????
Mais maintenant, pour tout ce qui est des tableaux de strings, je pense avoir trouvé
Mon probleme maintenant c'est les Structures, Je ne sais pas comment les gere VB
En plus je crois que VB les "modifie" en route pour optimiser
Style une structure que tu ecrirais comme ça
Code : Tout sélectionner
Type
Grom As Integer
Kcc As "String"
Djes As Integer
End Type Code : Tout sélectionner
Type
Grom As Integer
Djes As Integer
Kcc As "String"
End Type "Mon copain" il a essayé de m'expliquer.....mais j'ai pas tout compris
En fin de compte y'a tellement de chose a comprendre en VB, car il fait ce qu'il veut
Ce que tu code, n'est pas du tout ce qui sort
VB a ses regles, pour soit disant optimiser, et faciliter la vie..c'est vrai si on essaie pas de mettre les mains dans le cambouis
Alors si c'est bien vrai qu'il modifie les structures selon une convention a lui, comment s'y retrouver de l'autre coté ??
Il faudrait que je connaisse son raisonnement et que je créé la structure comme il l'optimiserait, comme ça il y touchera pas
En plus actuellement j'essais juste de retourner une structure créée dans PB...et bin ..a moi la peur
Je suis arrivé a faire l'inverse, normal, c'est toujours simple avec PB
Mais pour une fois VB a l'air de convertir en ASCII direct et c'est pour ça que avec PB ça marche
Donc lire une structure VB avec PB...ça ça marche:
Code PB de la DLL
Code : Tout sélectionner
Structure Complexe
String.s
Long.l
Integer.i
EndStructure
ProcedureDLL AfficheStructure(*Ptr.Complexe)
Phrase$ + Str(*Ptr\Integer) + Chr(13)
Phrase$ + Str(*Ptr\Long) + Chr(13)
Phrase$ + *Ptr\String
MessageRequester("", Phrase$)
EndProcedure Code : Tout sélectionner
Public Type Complexe
String As String
Long As Long
Integer As Integer
End Type
Private Declare Function AfficheStructure Lib "DllPb.dll" (Variable As Complexe) As Long
Sub EmmissionStructure()
Dim VariableStructurer As Complexe
ChDir App.Path
VariableStructurer.String = "Robert"
VariableStructurer.Integer = 25
VariableStructurer.Long = 77777
AfficheStructure VariableStructurer
End SubCode VB
Code : Tout sélectionner
Public Type Complexe
String As String
Long As Long
Integer As Integer
End Type
Private Declare Function CreationStructureStandard Lib "DllPb.dll" () As Complexe
Public Declare Sub CopyMemoryStructure Lib "kernel32.dll" Alias "RtlMoveMemory" (ByRef Destination As Complexe, ByRef Source As Long, ByVal Length As Long)
Sub ReceptionStructureStandard()
Dim VariableStructurer As Complexe, Phrase As String, Pointeur As Long
ChDir App.Path
VariableStructurer = CreationStructureStandard
CopyMemoryStructure VariableStructurer, Pointeur, 20
Phrase = Str(VariableStructurer.Integer) + Chr(13)
Phrase = Phrase + Str(VariableStructurer.Long) + Chr(13)
Phrase = Phrase + VariableStructurer.String
MsgBox Phrase, vbOKOnly, "Visual Basic - Reception d'une structure Standard de la DLL"
End SubCode : Tout sélectionner
Structure Complexe
String.s
Long.l
Integer.i
EndStructure
ProcedureDLL CreationStructureStandard()
Static VariableStructurer.Complexe
VariableStructurer\Integer = 10
VariableStructurer\Long = 1457859
VariableStructurer\String = "Coucou je viens de la DLL et je suis une structure"
ProcedureReturn @VariableStructurer
EndProcedureAlors qu'avec l'exemple du premier lien de DJES avec du C, c'est ce qu'il preconisent
Mais le C sait peut etre faire des choses que PB ne sait pas faire
Car j'ai vue la ligne
Code : Tout sélectionner
VariantChangeType(&pUdt->vnt, &pUdt->vnt, NULL, VT_BSTR);Re: Mon reve en C Majeur....
je ferais plutôt de cette manière au niveau de PB :
Code : Tout sélectionner
Structure Complexe
String.s
Long.l
Integer.i
EndStructure
Global *VariableStructurer.Complexe = AllocateMemory(SizeOf(Complexe))
ProcedureDLL.i CreationStructureStandard()
*VariableStructurer\Integer = 10
*VariableStructurer\Long = 1457859
*VariableStructurer\String = "Coucou je viens de la DLL et je suis une structure"
ProcedureReturn *VariableStructurer
EndProcedure- Kwai chang caine
- Messages : 6992
- Inscription : sam. 23/sept./2006 18:32
- Localisation : Isere
Re: Mon reve en C Majeur....
Je vais essayer ...
- Kwai chang caine
- Messages : 6992
- Inscription : sam. 23/sept./2006 18:32
- Localisation : Isere
Re: Mon reve en C Majeur....
Pas mieux ça crashe VB
Code : Tout sélectionner
Public Declare Sub CopyMemoryStructure Lib "kernel32.dll" Alias "RtlMoveMemory" (ByRef Destination As Complexe, ByRef Source As Long, ByVal Length As Long)
Private Declare Function CreationStructureStandard Lib "DllPb.dll" () As Long
Sub ReceptionStructureStandard()
Dim VariableStructurer As Complexe, Phrase As String, Pointeur As Long
ChDir App.Path
Pointeur = CreationStructureStandard
CopyMemoryStructure VariableStructurer, Pointeur, 12
Phrase = Str(VariableStructurer.Integer) + Chr(13)
Phrase = Phrase + Str(VariableStructurer.Long) + Chr(13)
Phrase = Phrase + VariableStructurer.String
MsgBox Phrase, vbOKOnly, "Visual Basic - Reception d'une structure Standard de la DLL"
End SubCode : Tout sélectionner
Structure Complexe
String.s
Long.l
Integer.i
EndStructure
Global *VariableStructurer.Complexe = AllocateMemory(SizeOf(Complexe))
ProcedureDLL.i CreationStructureStandard()
*VariableStructurer\Integer = 10
*VariableStructurer\Long = 1457859
*VariableStructurer\String = "Coucou je viens de la DLL et je suis une structure"
ProcedureReturn *VariableStructurer
EndProcedure
Re: Mon reve en C Majeur....
Surement à cause de "Global"
essaye ca :
essaye ca :
Code : Tout sélectionner
Structure Complexe
String.s
Long.l
Integer.i
EndStructure
ProcedureDLL.i CreationStructureStandard()
*VariableStructurer.Complexe = AllocateMemory(SizeOf(Complexe))
*VariableStructurer\Integer = 10
*VariableStructurer\Long = 1457859
*VariableStructurer\String = "Coucou je viens de la DLL et je suis une structure"
ProcedureReturn *VariableStructurer
EndProcedure- Kwai chang caine
- Messages : 6992
- Inscription : sam. 23/sept./2006 18:32
- Localisation : Isere
Re: Mon reve en C Majeur....
Bah non..c'est pas mieux...
Moi je pense plutot que je vais pas lire ou y faut avec le CopyMemoryStructure
Car je remonte bien un LONG dans "Pointeur"
Mais a la ligne
Et ben je fait l'economie du bouton quitter de VB 
Moi je pense plutot que je vais pas lire ou y faut avec le CopyMemoryStructure
Car je remonte bien un LONG dans "Pointeur"
Mais a la ligne
Code : Tout sélectionner
CopyMemoryStructure VariableStructurer, Pointeur, 12