Jeg har nogle gammel C kode, som jeg vil have konverteret til VS 2003.
Det er vigtigt at funktionerne bibeholder typen "unsigned char*"
--------------------------- Kode start ---------------------- // DLL needed headers #include <windows.h>
// Headers included by the programmer. // These headers are function dependent and will vary from time to time. #include <stdlib.h> // prototypes for memory allocation functions.
char *buffer = 0; const int STRMAX = 255;
BOOL WINAPI DllEntryPoint( HINSTANCE hinstDll, DWORD fdwRreason, LPVOID plvReserved) { switch (fdwRreason) { case DLL_THREAD_ATTACH: case DLL_THREAD_DETACH: return 1;
case DLL_PROCESS_ATTACH: // Put initialization code here (Run the first time DllOpen is called) // for each process buffer = (char*)malloc(STRMAX*sizeof(char)); if( NULL == buffer ) return 0; else return 1;
case DLL_PROCESS_DETACH: free(buffer); return 1 ; }
return 0; }
// Definition of the Dynamic Link Library exported functions. // Remember to include your own functions here.!
Når jeg oversætter min kode efter at have tilføjet denne linie får jeg 9 fejl.
De første 3 er: Error 1 error C3861: 'malloc': identifier not found Error 2 error C3861: 'free': identifier not found Error 3 error C2146: syntax error : missing ';' before identifier 'STR2UPPER'
BOOL WINAPI DllMain( HINSTANCE hinstDll, DWORD fdwRreason, LPVOID plvReserved) { switch (fdwRreason) { case DLL_THREAD_ATTACH: case DLL_THREAD_DETACH: return 1;
case DLL_PROCESS_ATTACH: // Put initialization code here (Run the first time DllOpen is called) // for each process buffer = (char*)malloc(STRMAX*sizeof(char)); if( NULL == buffer ) return 0; else return 1;
case DLL_PROCESS_DETACH: free(buffer); return 1 ; }
Jeg samler ikke point. Bare godt hvis min kommentar hjalp dig i den rigtige retning. Y.
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.