Ciao ho fatto un software che contiene una classe di nome clienti, per motivi vari
questa classe la devo condividere con un'altro software, in pratica i due programmi puntare nella stessa classe.
Ho provato a fare questo codice ma quando faccio la mappatura della classe per inviarmi l'indirizzo della classe non me la invia...
Codice SoftWare 1 dove creo la classe (clCliente e invio l'indirizzo al software 2):
//Creo la classie + i Handle della mappatura
HANDLE hMapMemoryObject;
LPVOID pBufObject, pTempObject;
Clienti clCliente = new Clienti( "Nome", "Cognome", 22 );
hMapMemoryObject = CreateFileMapping( INVALID_HANDLE_VALUE, NULL, PAGE_READWRITE, 0, BUF_SIZE, "clienteprova" );
pBufObject = MapViewOfFile( hMapMemoryObject, FILE_MAP_ALL_ACCESS, 0, 0, BUF_SIZE );
pTempObject = (Clienti *)clCliente;
CopyMemory(pBufObject1, pTempObject, sizeof(pTempObject));
Codice SoftWare 2:
HANDLE hMapMemoryObject;
LPVOID pBufObject;
Clienti clCliente;
hMapMemoryObject = OpenFileMapping( FILE_MAP_ALL_ACCESS, TRUE, "clienteprova" );
pBufObject = MapViewOfFile( hMapMemoryObject, FILE_MAP_ALL_ACCESS, 0, 0, BUF_SIZE );
clCliente= (Cliente *)pBufObject;