/ Forside / Teknologi / Udvikling / C/C++ / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
C/C++
#NavnPoint
BertelBra.. 2425
pmbruun 695
Master_of.. 501
jdjespers.. 500
kyllekylle 500
Bech_bb 500
scootergr.. 300
gibson 300
molokyle 287
10  strarup 270
shared memory og based pointer
Fra : maulwurf


Dato : 16-01-02 12:29

Hej

Jeg er ved af lave mig en DLL hvor jeg fra et EXE program kalder denne
DLL og aflever en pointer til CTreeCtrl denne pointer vil jeg godt share
men et andet EXE program så det kan ænder i træet.

jeg har lavet en funktion som skulle share pointerne men der er noget
galt med

pBasedPointer = Test;

når man har den i memory hvordan kan den anden EXE så få fat i den ?

her er koden af shered funktionen lavet i Visual C++:

extern "C"
BOOL Funk(CTreeCtrl * Test)
{
HANDLE hfm;

// Creat file mapping object
hfm = CreateFileMapping
((HANDLE)0xffffffff,0,PAGE_READWRITE,0,0,"RICK_DATA");

if(hfm == 0)
{
MessageBox(NULL,"Unable to Create File Mapping","Message",MB_OK);
return ( FALSE );
}

// Exit if named obect already exists
if (GetLastError() == ERROR_ALREADY_EXISTS)
{
MessageBox(NULL,"File Mapping Already Exists","Message",MB_OK);
CloseHandle ( hfm );
return ( FALSE );
}

// Create view of file mapping object
CTreeCtrl _based(Test) *pBasedPointer;
Test = (CTreeCtrl *) MapViewOfFile(hfm,FILE_MAP_WRITE,0,0,0);
pBasedPointer = Test;


pBasedPointer->InsertItem("det er en test");
MessageBox(NULL,"den virker n", "Funk:", MB_OK);


return ( TRUE );
}

MVH

René


 
 
Søg
Reklame
Statistik
Spørgsmål : 177500
Tips : 31968
Nyheder : 719565
Indlæg : 6408518
Brugere : 218887

Månedens bedste
Årets bedste
Sidste års bedste