Posto un po' di codice così vediamo se l'errore viene fuori:
Dll.cpp:
codice:
#pragma data_seg("DLL_SHARED")
int sharedint = 1;
#pragma data_seg()
#pragma comment(linker, "/section:DLL_SHARED,RWS")
int __stdcall getShared(){
return sharedint;
}
void __stdcall setShared(int i){
sharedint = i;
}
Dll.def
codice:
LIBRARY WifiMonitorDLL.dll
EXPORTS
getShared
setShared
Process1.cpp
codice:
int __stdcall getShared();
void __stdcall setShared(int i);
cout << getShared(); // 1
setShared(5);
cout << getShared(); // 5
Process2.cpp
codice:
int __stdcall getShared();
void __stdcall setShared(int i);
cout << getShared(); // 1
Eseguendo prima Process1, in Process2 dovrei vedere 5 ma non succede