你可以建立一个隐藏的窗口,我以前是这样做的,我见我要实现的功能做成一个COM(DLL),
我在Service中调用!

解决方案 »

  1.   

    如果你使用基于窗口消息循环的Socket机制的话,您的程序不能转化为Service,必须改写您的代码,原因是Service是没有窗口的,所以无法转换
    我写的联通1001客户服务系统也是在NT环境下的Service,但是底层代码使用自己的Socket,性能和压力都不错,看来你需要重新改写底层代码了
      

  2.   

    另外MFC程序不能直接转换成service吗?
      

  3.   

    To JeasonZhao(Jeason)网友:不知道你自己的Socket实现的是阻塞还是非阻塞Socket?支持多线程吗(多client并发访问)?
    我以前用MFC做过一个HTTP Server,用NT环境下的Service实现的.支持client并发访问. 但正如你所言MFC的Socket要使用隐藏的sink窗口.而且HTTP Server自己也有一个主窗口.
      

  4.   

    同样建议不要使用MFC的Socket类,否则多线程容易出错。
    直接用API函数
      

  5.   

       使用MFC也完全可以。Com程序不使用MFC的一个重要原因是程序大小的控制。但是service是服务器运行的程序,不存在这个问题。我编的POP3service和SMTPservice在公司服务器运行4个多月了,一直很稳定。