[阅读: 459] 2005-05-27 08:32:17
void __fastcall TForm1::btnTestClick(TObject *Sender)
{
HANDLE hFilemap=OpenFileMapping(FILE_MAP_ALL_ACCESS,FALSE,CallerMapName);
//HANDLE hFilemap=CreateFileMapping((HANDLE)0xFFFFFFFF,NULL,PAGE_READWRITE,0,1000*sizeof(TCHAR),CallerMapName);
if(hFilemap!=NULL)
{ ShowMessage("Open map success");
TCHAR *p=(TCHAR *)MapViewOfFile(hFilemap,FILE_MAP_ALL_ACCESS,0,0,0);
if(p!=NULL)
{ ShowMessage("mapview success");
ShowMessage(p);
UnmapViewOfFile(p);
};
//CloseHandle(hFilemap); //此处关不关没区别
};
return;
}
int WINAPI DllEntryPoint(HINSTANCE hinst, unsigned long reason, void* lpReserved)
{
hMapHandle=CreateFileMapping((HANDLE)0xFFFFFFFF,NULL,PAGE_READWRITE,0,1000*sizeof(TCHAR),CallerMapName);
if(hMapHandle!=NULL)
{ //FILE *pf=fopen("c:\\spiLog.txt","a");
//fprintf(pf,"Mapping Created!\n");
TCHAR * p=(TCHAR *)MapViewOfFile(hMapHandle,FILE_MAP_ALL_ACCESS,0,0,0);
if(p!=NULL)
{
//fprintf(pf,"View Mapped!\n");
memset(p,0,1000*sizeof(TCHAR));
UnmapViewOfFile(p);
}
//CloseHandle(hMapHandle);
//fclose(pf);
};
return 1;
}
HANDLE hMapHandle=OpenFileMapping(FILE_MAP_ALL_ACCESS,TRUE,CallerMapName);
//hMapHandle=CreateFileMapping((HANDLE)0xFFFFFFFF,NULL,PAGE_READWRITE,0,1000,CallerMapName);
if(hMapHandle!=NULL)
{ fprintf(pf,"Map opened!\n");
TCHAR *p=(TCHAR *)MapViewOfFile(hMapHandle,FILE_MAP_ALL_ACCESS,0,0,0);
if(p!=NULL)
{ fprintf(pf,"View mapped!\n");
CallerLength=GetModuleFileName(NULL,CallerName,MAX_PATH);
wcscpy(p,CallerName);
fwprintf(pf,p);
UnmapViewOfFile(p);
};
//CloseHandle(hMapHandle);
};