Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <windows.h>
- #include <iostream>
- using namespace std;
- int main() {
- // Nome della memoria condivisa
- const char* sharedMemoryName = "ZonaDiMemoria";
- // Dimensione della memoria condivisa
- const size_t sharedMemorySize = 256;
- cout << "Apertura del file mapping...";
- HANDLE hMapFile = OpenFileMappingA(
- FILE_MAP_ALL_ACCESS, // Modalità di accesso
- FALSE, // Non ereditabile
- sharedMemoryName // Nome della memoria condivisa
- );
- if (hMapFile == NULL) {
- cerr << "Impossibile aprire il file mapping: " << GetLastError() << endl;
- return 1;
- }
- cout << "OK\n";
- cout << "Mappatura della memoria condivisa nello spazio degli indirizzi del processo...";
- LPVOID pBuf = MapViewOfFile(
- hMapFile, // Handle dell'oggetto di mappatura del file
- FILE_MAP_ALL_ACCESS, // Modalità di accesso
- 0, // Offset della parte alta dell'oggetto di mappatura del file
- 0, // Offset della parte bassa dell'oggetto di mappatura del file
- sharedMemorySize // Numero di byte da mappare
- );
- if (pBuf == NULL) {
- cerr << "Mappatura impossibile: " << GetLastError() << endl;
- CloseHandle(hMapFile);
- return 1;
- }
- cout << "OK\n";
- // Lettura del messaggio dalla memoria condivisa
- cout << "Lettura del messaggio dalla memoria condivisa...";
- char message[sharedMemorySize];
- CopyMemory(message, pBuf, sharedMemorySize);
- cout << "OK\nMessaggio letto: " << message << endl;
- // Pulizia delle risorse
- UnmapViewOfFile(pBuf);
- CloseHandle(hMapFile);
- cout << "Chiusura e uscita" << endl;
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement