我似乎找不到在IE C#BHO和以SYSTEM身份运行的C#控制台应用程序之间进行通信的方法。
到目前为止,我已经尝试过使用Remoting和EventWaitHandle,但是当UAC打开Win 7中的默认设置时,两者都给出了“访问被拒绝”错误。
我已经能够拥有一个使用Remoting和EventWaitHandle与服务进行通信的控制台应用程序。
我需要一种方法在UAC on的两个进程之间共享数据,我的选择是什么?
答案 0 :(得分:1)
首先回顾Understanding and Working in Protected Mode Internet Explorer。有一个关于中途的部分说明:
注意如果您使用保护模式进行通信,最佳做法是以低完整性运行应用程序。否则,只使用安全形式的进程间通信(IPC),例如远程过程调用(RPC),以在保护模式和更高完整性过程之间进行通信。
基本上,在IE“保护模式”进程中运行的任何内容都是非常受限制的“沙箱”。虽然this codeproject article以C ++ / COM为目标,但您应该能够将其解释的原则应用于在托管代码中编写内容,尽管您可能需要P / Invoke才能实现此目的。