MFC,打开一个程序,比如 sample.exe。点击sample.exe里面的按钮B,再次打开sample.exe,能不能?即有2个sample实例。是不是要用命令行?能否传参数进sample.exe,以便初始化?不是用读取文本方式取得参数。

解决方案 »

  1.   

    可以。任意多个都可以。不必用命令行, 一般用CreateProcess  API。 参数多了点,显得有些复杂,但是大多数都不必理会。 如果实在嫌复杂,可以用shellapi的ShellExecute, 这个调用简单些,但是需要包含额外的头文件和lib库。参数可以在调用时直接带进入。 如 sample.exe  param1  param2。 console可以直接用 argc, argv读取参数。windows程序可以用GetCommandLine获取参数。
      

  2.   

    ShellExecute或者WinExecMFC程序的命令行是AfxGetApp()->m_lpCmdLine;
      

  3.   

    只要不进行特殊处理.默认就是可以一个程序可以打开任意个实例的.可以用CreateProcess或是ShellExecute