当前位置: 首页 > 编程技术 > 正文

编写无窗口应用程序

      在windows应用程序中,主要分为来为两大类,分别是win32应用程序和win32控制台应用程序,

      如果要编写一个无窗口的应用程序,那么分别根据windows的这两种应用程序来介绍方法

     1.win32应用程序

     因为win32应用应用程序本身是可以拥有界面的,并且win32应用程序允许开发人员自定义程序的窗口等UI界面,

那么,如果你要编写的无窗口应用程序是win32应用程序的话,其实很简单,在WinMain中直接编写代码就可以了

总的来说,代码类似于:

int APIENTRY WinMain(HINSTANCE hInstance,
                     HINSTANCE hPrevInstance,
                     LPSTR     lpCmdLine,
                     int       nCmdShow)
{
	MessageBox(NULL,"hello","Win32",MB_ICONINFORMATION);
 	// TODO: Place code here.

	return 0;
}

    2.控制台应用程序

总的来说,控制台应用程序实现无窗口化是遇到比较多的问题,因为控制台应用程序在运行是是会有一个”黑框”出现的,这也是控制台应用程序的特点,

但是,如果我们想控制台应用程序也能像win32应用程序那样无窗口运行,这样可行吗?

答案是,可以

要想将控制台应用程序实现无窗口,两步搞定:

 

1).修改子系统为windows

打开编译器的link(链接)选项, 以VC6.0为例,依次打开 : 工程->设置->连接->工程选项

修改选项中的 /subsystem:console/subsystem:windows

 

2).修改入口点

同样是在工程选项中,增加:  entry:mainCRTStarup

         因为控制台程序的入口在main,而win32应用程序在WinMain,如果我们修改子系统为windows,链接器就会寻找WinMain,又因为我们的代码是控制台应用程序的代码,所以如果不修改入口点的话,链接是会报错

 

完成上面两步,就可以实现即将控制台应用程序该写为无窗口程序了

 

注:以上的方法根据网上的文章整理而来



本文固定链接: http://kuaile.in/archives/1356 | 蒲公英的博客

该日志由 蒲公英 于2014年03月19日发表在 编程技术 分类下, 你可以发表评论,并在保留原文地址及作者的情况下引用到你的网站或博客。
原创文章转载请注明: 编写无窗口应用程序 | 蒲公英的博客
关键字:

编写无窗口应用程序:等您坐沙发呢!

发表评论


You must enable javascript to see captcha here!

快捷键:Ctrl+Enter