请教各位,我有一个服务程序,但这个服务有时要跳出个窗口来,要怎么实现?
我现在想的方法是做一个子进程,再将服务程序的数据传给子进程,将它显示出来
但是这样做很麻烦,不知道我这样做好不好,是不是还有更好的方法?

解决方案 »

  1.   

    想要顯示窗口 , 則 SERVICE_STATUS 的成員 dwServiceType 需要有 SERVICE_INTERACTIVE_PROCESS 屬性 , 
    否則任何視窗將無法顯示.
      

  2.   

    正確來說: 要在CreateService 的參數5 指明 SERVICE_INTERACTIVE_PROCESS.而調用 SetServiceStatus 時 , 其中參數2 指明要傳入參數成員 dwServiceType 設置和 CreateService 的 dwServiceType 參數通常一致. 服務在進程運行中 , 此值最好保值不變.範例:
    service.cpp: 主要有AAA BBB CCC 三個簡單服務
    create.cpp: 加入3個服務名稱到 SCM database 
    delete.cpp: 將3個服務從名稱從 SCM database 刪除
    stop.cpp: 停止3個服務
    start.cpp: 啟動3個服務 , 也可以從<控制台 -> 系統管理工具 -> 服務 的服務面板啟動http://myweb.fcu.edu.tw/~d9147897/service.rar