- 232 名前:デフォルトの名無しさん mailto:sage [2007/10/03(水) 23:19:59 ]
- >>230
自分でメモリマップを実装するのは困難だろうけど使うだけなら簡単 #include<windows.h> #include<stdio.h> #define IS_PARENT // ←この行の有りと無しでコンパイルする #define MEMMAP_ID "maptest" int main(void){ HANDLE hmap; char *ptr; #ifdef IS_PARENT hmap=CreateFileMapping((HANDLE)0xFFFFFFFF, NULL, PAGE_READWRITE, 0, 256, MEMMAP_ID); if(hmap!=NULL && GetLastError()==ERROR_ALREADY_EXISTS){ CloseHandle(hmap); return 1; } ptr=MapViewOfFile(hmap, FILE_MAP_WRITE, 0, 0, 256); ptr[0]='\0'; while(scanf("%255s", ptr)==1) ; #else hmap=OpenFileMapping(FILE_MAP_WRITE, FALSE, MEMMAP_ID); if(hmap==NULL) return 1; ptr=MapViewOfFile(hmap, FILE_MAP_WRITE, 0, 0, 256); while(getchar()!=EOF) printf("%s", ptr); #endif UnmapViewOfFile(ptr); CloseHandle(hmap); return 0; }
|

|