如题:
请大大们帮忙。^^

解决方案 »

  1.   

    先确认一点,线程依赖于进程运行,也就意味着线程仍然在运行,那么运行该线程的进程并未关闭。
    1.如果不需要做成服务程序,那么界面进程和线程使用进程应该是同一进程,使用托盘图标是个不错的主意,而此时界面的关闭与打开不过是界面的隐藏和显示而已。
    2.如果做成服务程序,那么界面进程和线程使用进程不是同一个进程,这牵涉到进程间通信问题。而这可以通过内存映射文件+事件通知+互斥量/信号量互锁的方式解决,解决要点:
    1)创建一个写禁止互斥量、一个读禁止事件(如果需要控制外部控制线程进程的数量,创建信号量)
    2)创建内存映射文件,写入服务进程的线程句柄及需要控制的参数
    3)界面进程以写写禁止、写读互斥、读读允许方式通过内存映射文件交换控制参数
    4)可以另外创建一个通知时间保存与内存映射文件控制服务进程至界面进程的通知体系
    5)服务进程以打开方式Create内存映射文件/事件/互斥量等,如果发现已经存在,直接获得句柄
      

  2.   

    写EXE形式的COM组件,通过进程外COM调用实现