一个有图形界面的程序,启动它会启动一个命令行窗口,命令行窗口显示图形界面操作的信息。请问这个命令行窗口是怎么生成的?
另外,还有一个问题:
在命令行窗口中输入一个命令,启动一个图形界面程序,如果退出命令行窗口,有两种情况:
一种是图形界面不退出,一种是图形界面跟着退出。这是为什么啊?分低,原谅!!!

解决方案 »

  1.   

    第一、这个图像化界面的程序的入口点函数是main函数,是控制台程序,只是在程序中创建了图形化的窗口,这个程序本质上还是一个控制台程序。
    第二、如果这个图像界面程序是一个控制台程序,那么通过命令行启动后,如果此时退出命令行,那么主函数main结束,其创建的图像界面窗口当然就退出了;如果这个图像界面程序是一个windows程序,其入口点是WinMain,那么用命令行启动的是一个独立的窗口,此时退出命令行,这个独立的窗口当然不会退出了。
      

  2.   

    不是设置,是那个界面程序的本质是控制台程序,它的入口时main函数,当你退出控制台时,主函数结束了,由它构造的图像界面自然就关闭了
      

  3.   

    怎样在main函数中创建图形程序?
      

  4.   

    使用windows API或其他库函数啊,我记得大学时学的图形学中的例子有很多就控制台程序利用openGL提供的库函数画图的。
      

  5.   

    支持上面。
    不过在GUI程序里面也可以用CreateConsol来创建控制台的,也就是说控制台与否跟入口是Main还是WinMain没有多大关系(它们只是被run time调用),而是PE头上面的一个有关console的标志(具体名称我不记得了),呵呵
      

  6.   

    你LordPe可以设置/清除这个标志,然后就可以看到不控制台的有/无了。
      

  7.   

    GUI也是可以开控制台的,看看AllocConsole这个API吧
      

  8.   

    lisunlin0说的很对,一个GUI程序可以开控制台也可以不开控制台。