如何使用Win32 API從文件寫入共享內存?寫入共享內存
我有這樣的代碼:
hFile = CreateFile("input.map",
GENERIC_READ | GENERIC_WRITE,
FILE_SHARE_READ,
NULL,
OPEN_ALWAYS,
FILE_ATTRIBUTE_NORMAL,
NULL);
hMapFile = CreateFileMapping(hFile,
NULL,
PAGE_READWRITE,
0,
0,
TEXT("SharedObject"));
lpMapAddress = (LPTSTR) MapViewOfFile(hMapFile,
FILE_MAP_ALL_ACCESS,
0,
0,
0);
ReadFile(
hFile,
lpMapAddress,
75,
&bytesRead,
NULL);
sprintf((char*)lpMapAddress, "<output 1>");
printf((char*) lpMapAddress);
然而,printf的調用僅返回 「<輸出1>」,而不是文件內容。編輯: 發現問題。我在調用sprintf時正在寫入輸入文件。但我仍然不知道爲什麼...
這有幫助!最後使用strcat()。 – pypmannetjies 2009-09-14 19:50:31