This article describes the C + + process sharing data between the implementation method, share for everyone to reference. The implementation methods are as follows:
Copy Code code as follows:
int main (int argc, char *argv[])
{
Recursivedelete ("c:\\20_128\\");
Selfrun ("Runmodel");
Inter-process memory sharing
LPCTSTR lpname= "Hello";
LPCTSTR lpcontent = "123456";
HANDLE Hmap =:: OpenFileMapping (File_map_all_access, FALSE, lpname);
if (NULL = = hmap)//Open failed
{
Create
Hmap =:: CreateFileMapping (Invalid_handle_value, NULL, Page_execute_readwrite, 0, strlen (lpcontent), lpname);
if (Hmap = NULL)
{
return-1;
}
Write
LPVOID lpbase =:: MapViewOfFile (Hmap, file_map_all_access, 0, 0, 0);
strcpy ((char*) lpbase, lpcontent);
printf ("Write%s\n", lpcontent);
}
Else
{
Open successfully Read only
LPVOID lpbase =:: MapViewOfFile (Hmap, file_map_all_access, 0, 0, 0);
if (lpbase = NULL)
{
return-1;
}
printf ("Read%s\n", (char*) lpbase);
}
GetChar ();
return 0;
}
I hope this article will help you with the C + + program design.