Bonjour a tous,
Cela fait un moment que je perds mon temps a essayer de debugguer ma DLL.
En effet, je travail sur une dll qui implémente la norme hllapi (il n'est pas utile de savoir ce que c'est), le but final est que cette DLL puisse etre charge par mon programme Word qui contient une macro qui fait appel a une fonction exporter de cette dernière (la DLL). Seulement la macro est ecrite en VB et que lors du passage des parametres il se peut que celle-ci ne les initialise pas correctement, mais elle marche tres bien avec une précédente version de la DLL qui utilise du JNI (forcement puisque si elles ne sont pas initialise c'est java qui les initialise).
Mon problème est que lors de l'appel a ma fonction exportée a travers la macro, il a quelques variables qui ne sont pas initialises. J'ai donc cherche a intercepte les variables non initialise en faisant un truc du genre:
if((long)(value) == 0xcccccccc){
int a = 0;
int* mvalue;
mvalue = &a;
value= (LPWORD)mvalue;
}
La signature de ma fonction exporter est :
#define HLLAPI_API __declspec(dllexport)
HLLAPI_API long __stdcall hllapi(LPWORD function, LPSTR data, LPWORD length, LPWORD value)
Mon souci c'est que l'affectation que je fais de ma variable ne marche pas. Et je n'ai trouve nul part comment initialiser le LPWORD value par exemple
Donc si qqun veux bien m'aider...
Merci
Partager