现在我遇到了这么一个问题, 写了个myDLL,两个进程分别是IE8(开启保护模式, 以下说IE8, 都以此条件为基础)和进程A,myDLL内部都去创建或读取共享内存, 比如进程A先运行, 则由进程A调用myDLL通过CreateFileMapping创建共享内存, IE8在调用myDLL的时候OpenFileMapping去读取共享内存的内容, 反之亦然, 但现在的情况是如果先运行IE8调用myDLL创建共享内存, 然后运行进程A调用myDLL可以读取到共享内存, 但反之先运行进程A调用myDLL创建共享内存, 然后IE8下调用myDLL无法通过OpenFileMapping读取共享内容.
关闭保护模式, 一切正常. 就是在开启保护模式的情况下才会发生, 如何解决, 请大侠指导.. 被这个问题困扰了好久了.
MSDN上说的方法好像都使用过了, 好像都不行.. 真的很急人的...
关闭保护模式, 一切正常. 就是在开启保护模式的情况下才会发生, 如何解决, 请大侠指导.. 被这个问题困扰了好久了.
MSDN上说的方法好像都使用过了, 好像都不行.. 真的很急人的...
有什么表现?出错?调试中OpenFileMapping返回什么?
OpenFileMapping返回的结果为空或INVALID_HANDLE_VALUE
在IE8下,可以通过PostMessage等方式
想其它主意吧
我系统服务主动创建explorer.exe也不行吗?
他如果发现是提升了的,就自动退出或者……什么?还有说 PostMessage的大牛, 系统服务进程A可以向 登录用户进程B 投递消息?(PostMessage?)为什么 我的 广播 不好使?难道只有“投递”才行,可那样就得先知道目的的窗口句柄……我知道Vista之后的系统有 UIPI与session 0隔离, 弄得我没招了,只有自己写了一个共享内存操作类来通信……,目标进程还得守候……