Valeur Alphabetique retourné pâr une dll
Valeur Alphabetique retourné pâr une dll
Comment faire pour récuperer une valeur alphabétique retourné par une fonction dans une dll , pure basic ne retournant que des valeurs numérique. ?
Un exemple de programmation concret m'aiderait beaucoup a avancer.
Merci par avance
Un exemple de programmation concret m'aiderait beaucoup a avancer.
Merci par avance
Ne sachant pas si tu as fait la DLL ou pas, je te propose les deux :
Si c'est toi qui fait la DLL, il faut faire
Et pour récupérer dans ton programme
Je pense que lorsque tu n'écris pas la DLL, le deuxième code fonctionne aussi mais je n'ai jamais testé.
Par contre, je n'ai pas testé ce code mais c'est comme ça que je procède (il ce peut qu'il y ai une erreur au niveau du nom d'une procédure
)
Oliv
Si c'est toi qui fait la DLL, il faut faire
Code : Tout sélectionner
ProcedureDLL Lettre()
Global Lettre.s
Lettre = "Voici une chaine de caractères"
ProcedureReturn @Lettre ; Renvoi le pointeur de la chaine de caractères
EndProcedure
Code : Tout sélectionner
Recuperation.s = PeekS(CallFunction(#Librairie,"Lettre"))
Debug Recuperation
Par contre, je n'ai pas testé ce code mais c'est comme ça que je procède (il ce peut qu'il y ai une erreur au niveau du nom d'une procédure

Oliv
J'ai oublié, il te faut au préalable initialiser ta chaîne de caractère pour qu'elle soit capable de recevoir les données, donc on va lui donner une certaine longueur avec space().
En voici un exemple:
Autre chose importante, avec cette fonction, tu seras obligé de créer un exécutable si tu veux vérifier que ça marche.
J'espère que ça va t'aider!

En voici un exemple:
Code : Tout sélectionner
;Avec AutoItDLL version v1.11
szTitle.s=Space(100)
If OpenLibrary(0,"AutoitDll")
CallFunction(0,"AUTOIT_WinGetActiveTitle",@szTitle)
MessageRequester("info", szTitle)
CloseLibrary(0)
EndIf
J'espère que ça va t'aider!
