CreateFileMapping/OpenFileMapping/MapViewOfFile
来源:互联网 发布:Archlinux util-linux 编辑:程序博客网 时间:2024/06/05 07:37
先要使用函数CreateFileMapping来创建一个想共享的文件数据句柄,然后使用MapViewOfFile来获取共享的内存地址,然后使用OpenFileMapping函数在另一个进程里打开共享文件的名称,这样就可以实现不同的进程共享数据
void FileMapping(void) { //打开共享的文件对象。
m_hMapFile = OpenFileMapping(FILE_MAP_ALL_ACCESS, FALSE,_T("TestFileMap"));
if (m_hMapFile) { //显示共享的文件数据。
LPTSTR lpMapAddr = (LPTSTR)MapViewOfFile(m_hMapFile,FILE_MAP_ALL_ACCESS, 0,0,0);
OutputDebugString(lpMapAddr);
} else { //创建共享文件。
m_hMapFile = CreateFileMapping( (HANDLE)0xFFFFFFFF,NULL, PAGE_READWRITE,0,1024, _T("TestFileMap"));
//拷贝数据到共享文件里。
LPTSTR lpMapAddr = (LPTSTR)MapViewOfFile(m_hMapFile,FILE_MAP_ALL_ACCESS, 0,0,0);
std::wstring strTest(_T("TestFileMap"));
wcscpy(lpMapAddr,strTest.c_str());
FlushViewOfFile(lpMapAddr,strTest.length()+1);
}
}
Win32的WinMain
DLL的DLLMain
BOOL APIENTRY DllMain( HANDLE hModule, DWORD ul_reason_for_call, LPVOID lpReserved ) { switch (ul_reason_for_call) { case DLL_PROCESS_ATTACH: case DLL_THREAD_ATTACH: case DLL_THREAD_DETACH: case DLL_PROCESS_DETACH: break; } hInstance=(HINSTANCE)hModule; //得到DLL实例 return TRUE; }
LRESULT CALLBACK HookProc(int nCode,WPARAM wParam,LPARAM lParam) { ............. //给出提示:键盘已经被锁定,要进行判断,看是否已有提示窗口,否则会弹个没完
if (!::FindWindow(0, "KeyBoard Locked")) // user32.lib 头文件:winuser.h
{
MessageBox(0,"键盘已经锁定!!!","KeyBoard Locked",MB_OK);
}
return 1; //没有return CallNextHookEx(hhkHook,nCode,wParam,lParam)则不会把消息传递下去,所以我们的键盘就不起作用了
}
hhkHook=SetWindowsHookEx(WH_KEYBOARD,(HOOKPROC)HookProc,hInstance,0)
UnhookWindowsHookEx(hhkHook);
- CreateFileMapping/OpenFileMapping/MapViewOfFile
- CreateFileMapping/OpenFileMapping/MapViewOfFile
- CreateFileMapping ,MapViewOfFile和OpenFileMapping的用法
- CreateFileMapping/MapViewOfFile
- CreateFileMapping、MapViewOfFile
- CreateFileMapping和MapViewOfFile函数
- CreateFileMapping和MapViewOfFile函数
- CreateFileMapping和MapViewOfFile函数
- CreateFileMapping和MapViewOfFile
- CreateFileMapping和MapViewOfFile函数
- CreateFileMapping, MapViewOfFile 实现文件共享
- 转载:CreateFileMapping和MapViewOfFile函数 .
- CreateFileMapping 、MapViewOfFile、UnmapViewOfFile函数用法及示例
- Windows API一日一练(59)CreateFileMapping和MapViewOfFile函数
- Windows API一日一练(59)CreateFileMapping和MapViewOfFile函数
- Windows API一日一练(59)CreateFileMapping和MapViewOfFile函数
- Windows API一日一练(59)CreateFileMapping和MapViewOfFile函数
- Windows API一日一练(59)CreateFileMapping和MapViewOfFile函数
- Microsoft .NET Framework 3.5 SP1 /2.0 SP2 / 3.0 SP2 简体中文静默安装版
- oracle rac
- 人就这么一辈子
- 快速LightMap烘焙
- 关于积累的一点看法
- CreateFileMapping/OpenFileMapping/MapViewOfFile
- 利用SNMP4J实现Snmp Trap完整例子
- cookie原理入门概念介绍
- 滑板体验(2)
- 周鸿祎:谷歌Chrome不是浏览器
- Transaction Processing Middleware
- FAT16文件系统简介(一)
- 使用DWR反转AJAX的失败经验和教训
- 常用正则表达式