Bonour
Voila, j'essaye de passer une chaine de caractère en char* en parametre à ma Dll et ca explose completement.
En mode debug, je n'arrive pas à voir le contenu de la chaine :
Mon .h
Mon .cpp
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8 extern "C" { #define TESTDLL_API __declspec(dllexport) TESTDLL_API int fnTestDll(char *test,char *res); TESTDLL_API int fnTest1(void); }
Là, je ne vois pas ce qui coince
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42 #include "stdafx.h" #include "TestDll.h" #include "stdio.h" #ifdef _MANAGED #pragma managed(push, off) #endif BOOL APIENTRY DllMain( HMODULE hModule, DWORD ul_reason_for_call, LPVOID lpReserved ) { switch (ul_reason_for_call) { case DLL_PROCESS_ATTACH: case DLL_THREAD_ATTACH: case DLL_THREAD_DETACH: case DLL_PROCESS_DETACH: break; } return TRUE; } #ifdef _MANAGED #pragma managed(pop) #endif // Il s'agit d'un exemple de fonction exportée. int fnTest1(void) { return 40; } int fnTestDll(char *test,char *res) { printf(test); return 42; }
Je suis en Visual Studio 2005 et j'ai fais une Dll sans MFC
Merci pour votre aide
Partager