这是一个该死的移植问题,原来的程序是在CONSOLE下面运行的,程序通过输入一个数字,确定启动服务端程序还是启动客户端程序
启动的过程是这样的,服务端先启动(通过输入0),然后服务端阻塞等待客户端启动,客户端启动(通过另开一次程序,输入非0)后,客-服建立联系,主画面开始(OGL-绘制画面)程序开始现在我将整个程序移植到MFC下面我想改善这该死的阻塞机制,希望程序启动后能够自动创建客户端程序,服务端程序,(两个应用程序)然后开始调试,使用MFC改写以后已经能运行,但是由于初始的阻塞看不见画面,待再次启动客户端的时候,程序就出错了,不知道是服务端还是客户端垮了,根本没法调试或者说这个游戏程序可以如何优化,谢谢大家了

解决方案 »

  1.   

    没太明白你的意思,只能猜测了。
    可否这样:当server程序初始化完等待client前,调用ShellExecute()以client的参数运行一个实例作为client?
      

  2.   

    Windows中有一些对象是全局的,比如信号灯和事件,用这些完成进程之间的同步是很平常的技术
      

  3.   

    是我没描述清楚,这样说吧:
    首先我的应用程序是CONSOLE下面的,客-服SOCKET应用程序
    MAIN里面根据用户输入建立服务端还是客户端,(如果输入0建立服务端,1建立客户端),只有当运行两次程序之后,客-服程序都启动,否则均阻塞,这就给我的调试带来了巨大的痛苦,每一次都是要繁琐的完成这些步骤才能真正开始调试,十分受不了,寻找这样的解决方法,使得程序运行就同时启动客户端和服务端。
      

  4.   

    写一个批处理~~~~
    start 文件名.exe < 0
    start 文件名.exe < 1
    保存成.bat文件双击就行了~~~
      

  5.   

    呵呵,你想的倒是简单,情况很复杂,EXE执行后会阻塞