阅读:1321回复:5
请问:服务程序创建的事件如何让其他进程访问和操作
我把一个可执行程序改为服务并启动运行,结果发现在这个程序中创建的事件、邮槽、内存映象文件,在其他进程中都不能open了,是什么原因呢?该怎样解决呢?
|
|
沙发#
发布于:2005-03-22 16:30
我把一个可执行程序改为服务并启动运行,结果发现在这个程序中创建的事件、邮槽、内存映象文件,在其他进程中都不能open了,是什么原因呢?该怎样解决呢? 因为服务在System账户下运行,可能会对你有限制,用一下LPC的方法通讯吧,我试过命名管道没问题 |
|
|
板凳#
发布于:2005-03-22 16:34
嗯,我在其他资料中也看到了介绍,说用LPC是最有效简单的方法。
不过我想还是有直接解决的方法,我尝试定义了安全描述符,做了一个试验程序。 已经可以了,正在自己的程序中改进调试。 谢谢楼上的指点。 |
|
地板#
发布于:2005-03-23 08:47
如何做的,贴出来看看,让大家也学习下.....
|
|
|
地下室#
发布于:2005-03-23 12:12
[quote]我把一个可执行程序改为服务并启动运行,结果发现在这个程序中创建的事件、邮槽、内存映象文件,在其他进程中都不能open了,是什么原因呢?该怎样解决呢? 因为服务在System账户下运行,可能会对你有限制,用一下LPC的方法通讯吧,我试过命名管道没问题 [/quote] 个人观点,欢迎批评: 其他进程 改为服务或者具有administrator的权限就该可以了,本质上是一个访问控制问题。 无论是lpc还是管道,本质都是网络通信,所以可以脱离访问控制了。 |
|
|
5楼#
发布于:2005-03-23 14:09
如何做的,贴出来看看,让大家也学习下..... 哈哈,我贴出来有没有人给我分啊? |
|