我有两个程序需要跨进程访问,比如一个是a.exe,它是一个服务程序,机器启动时随着服务的启动以system用户而启动,另一个程序b.exe以user用户启动,它运行时会与a.exe之间有数据交互,在交互时涉及权限的问题,不知怎么解决?    还有程序在2000/xp下是可以正常运行的,在Vista下就不正常了,望高人指点,谢谢!

解决方案 »

  1.   

    用com或IPC, share memory
      

  2.   

    不好意思,我也不知道是COM还是IPC,这个程序是接手过来的,怎么判断它是COM还是IPC啊?
    那为何2000和XP下是正常的?
      

  3.   

    RPC is a Microsoft-recommended IPC mechanism for making applications talk to the services bundled into a single product.
    An ancient example:RPCsvc: Windows NT System Service That Uses RPC
    http://msdn.microsoft.com/library/default.asp?url=/library/en-us/vcsample98/html/vcsmprpcsvc.asp
      

  4.   

    a.exe是一个服务程序,机器启动时随着服务的启动以system用户而启动,b.exe在机器登陆时以user用户启动,b.exe运行时与a.exe之间有数据交互(读写管道)不正常。(b程序从管道读不到东西,怀疑a程序就没往管道里写东西)会不会设计权限问题??但是在XP和2000下是正常的。