我用ATL做了一个service,在service中做了一个COM的Interface。然后做了一个service的监控程序,依靠CoCreateInstance来连上service的Interface接口,然后通过这个接口来实现监控的目的!我现在需要把监控程序放在网络上不同的机器上,希望在别的机器也能远程的监控server上的service!我想到用DCOM来做!但具体怎么做啊?请各位指点一下最主要的关键!谢谢!

解决方案 »

  1.   

    应该提供一个可连接的SOCKET端口吧。
    C/S结构控制
      

  2.   

    学习。
    我也在做服务程序。但要在网络中不同机器上操作另一机器上的服务程序,也以可这样:HANDLE OpenHandle;
    HANDLE serHandle;
    serHandle = OpenSCManager(ServerName//远程服务器名
       , NULL, SC_MANAGER_ALL_ACCESS);
    OpenHandle = OpenService(serHandle, ServiceName//服务名子,注意,
                                             可能和服务显示的名子不一样
                , SERVICE_ALL_ACCESS);
    if(OpenHandle )
    {
                 StartService(OpenHandle, 0, NULL);
    }
    CloseServiceHandle OpenHandle;
    CloseServiceHandle serHandle;
      

  3.   

    提供一个可连接的SOCKET端口 通过SOCKET给服务程序发内部命令 服务程序接收命令以后 可以按你原始设置的执行相应的操作 就可以实现远程控制了
      

  4.   

    提供一个可连接的SOCKET端口 通过SOCKET给服务程序发内部命令 服务程序接收命令以后 可以按你原始设置的执行相应的操作 就可以实现远程控制了