青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

面對現(xiàn)實,超越自己
逆水行舟,不進則退
posts - 269,comments - 32,trackbacks - 0
本文轉(zhuǎn)自:http://topic.csdn.net/u/20120329/15/ee6b04a0-a797-4f59-b538-5d8be71db9a4.html

大家都知道,當編寫一個win32 console application時,當運行此類程序的時候默認情況下會有一個類似dos窗口的console窗口,但是有的時候我們只想在程序中運行一段功能代碼,不希望顯示這個console窗口,讓代碼執(zhí)行完畢之后程序自動退出.下面就介紹一下,如何隱藏win32 console application的console窗口 .

因為此種方法是通過設(shè)置編譯器的鏈接開關(guān)來實現(xiàn),所以讓我們來看一下編譯器的鏈接開關(guān)選項(也就是linker選項).

首先我們來看一下linker的 /subsystem 選項該選項的語法形式如下:
/subsystem:{console|efi_application|efi_boot_service_driver|
efi_rom|efi_runtime_driver|native|posix|windows|windowsce}
[,major[.minor]]

這個鏈接選項告訴操作系統(tǒng)如何運行可執(zhí)行文件

console: win32 字符模式應(yīng)用程序,此種類型的應(yīng)用程序在運行的時候會產(chǎn)生一個類似dos窗口的控制臺窗口,如果在應(yīng)用程序的主函數(shù)為main()或者wmain(),在默認情況下該應(yīng)用程序就是一個控制臺應(yīng)用程序.

extensible firmware interface 和cpu具體架構(gòu)相關(guān)的一個參數(shù)選項,并不常用,在這里暫不詳細介紹.
如果對此有興趣的可以訪問intel主頁來查看相關(guān)內(nèi)容

native;設(shè)備驅(qū)動器選項,如果/driver:wdm選項被設(shè)定的話,該鏈接選項(native)就為默認選項

posix: 在windows nt 種運行在posix子系統(tǒng)上的應(yīng)用程序

windows:該類型的應(yīng)用程序不產(chǎn)生console窗口,該類型的應(yīng)用程序的窗口由用戶自己創(chuàng)建,簡而言之
就是一個標準的win32 application,其入口地址為winmain()函數(shù)或者wwinmain()函數(shù)的地址
如果你在應(yīng)用程序種定義的主函數(shù)為winmain或者wwinmain,在默認情況下該應(yīng)用程序就是一個
win32 application !

windowsce:運行在windows ce上的應(yīng)用程序

major and minor (optional):主版本號和次版本號,該選項為可選,該選項為0~65535之間的十進制整數(shù)

從上面可以看出如果我們建立一個win32 console application的話,linker的/subsystem選項應(yīng)該為
console,可以在vc開發(fā)環(huán)境的project->setting->link->project option中看到!

接下來我們再看看應(yīng)用程序是如何運行的!

我們知道用vc編寫的程序,運行的時候是需要 cc 運行庫支持的.當我們運行一個c/c 程序的時候鏈接器會首先尋找應(yīng)用程序的啟動函數(shù),例如:

如果你建立了一個console程序的話,編譯器得鏈接開關(guān)會是以下這種形式
/subsystem:console /entry:maincrtstartup (ansi)
/subsystem:console /entry:wmaincrtstartuup (unicode)

如果你建立了一個win32 application,編譯器得鏈接開關(guān)則會是一下形式
/subsystem:windows /entry:winmain (ansi)
/sbusystem:windows /entry:wwinmain (uincode)

上面的兩種形式可以再project->setting->link->project option中看到,上面的subsystem和entry并不需要都設(shè)置,如果你只設(shè)置了/subsystem:console的話,那么默認的entry開關(guān)在默認情況下應(yīng)為/entry:maincrtstartup.反之,如果你在應(yīng)用程序中定義了main函數(shù)的話,默認情況下,你/subsystem開關(guān)應(yīng)該為/system:console.

在默認情況下/subsystem 和/entry開關(guān)是匹配的,也就是console對應(yīng)maincrtstartup或者wmaincrtstartup.windows對應(yīng)winmain或者wwinmain.但是我們也可以通過手動改動的方式使他們不匹配.例如我們可以這樣改動

#pragma comment( linker, /subsystem:windows /entry:maincrtstartup ) // 設(shè)置入口地址
int main(int argc, char* argv[])
{
messagebox(null, hello, notice, mb_ok);
return 0;
}

在默認情況下鏈接器看到/subsystem下是windows選項的時候,它會自動尋找winmain或者wwinmain
但我們強制指定入口地址,這樣運行程序的時候默認的console窗口就會隱藏!

上面是在代碼中使用#pragma指令來設(shè)置,還有一種就是直接在開發(fā)環(huán)境的
project->setting->link->project option中手工改動!

總結(jié)如下:
1:如果console程序已經(jīng)寫好了,不能改了,也可以。寫一個API程序,不要畫窗口,然后用CreateProcess調(diào)用寫好的console程序,把屬性設(shè)成SW_HIDE即可。
2:不能用控制臺來寫(CONSLOE),要用WINMAIN做入口就可以了,不畫窗口,別人就都看不見了. 你只用想想辦法把你的進程在任務(wù)欄里面隱藏住就可以.
3:如果是console程序,用API函數(shù)GetStdHandle()獲得控制臺程序的窗口句柄,然后在隱藏窗口
4://這一句隱藏控制臺
#pragma comment(linker, "/subsystem:\"windows\" /entry:\"mainCRTStartup\"" )
你要寫控制臺程序就用這個.在控制臺程序中隱藏控制臺窗口!
posted on 2012-05-17 16:10 王海光 閱讀(545) 評論(0)  編輯 收藏 引用 所屬分類: MFC
青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            欧美日韩精品福利| 亚洲综合电影一区二区三区| 亚洲精品美女在线观看播放| 亚洲欧美日韩中文视频| 欧美成人精品激情在线观看| 欧美在线免费视频| 国产精品国产一区二区| 99re6这里只有精品| 欧美激情第9页| 麻豆精品在线播放| 黄色欧美日韩| 久久亚洲精品欧美| 久久久99久久精品女同性| 黄色工厂这里只有精品| 美女精品网站| 一区二区三区 在线观看视频| 国产欧美一区二区色老头 | 国产精品久久久久久亚洲毛片| 日韩小视频在线观看| 亚洲日本电影| 欧美性色aⅴ视频一区日韩精品| 亚洲一区国产精品| 亚洲欧美日韩一区在线| 国产日韩欧美a| 美日韩在线观看| 欧美成人一区二区三区片免费| 亚洲九九九在线观看| 一本在线高清不卡dvd| 国产精品婷婷| 欧美不卡视频| 欧美午夜电影完整版| 久久av一区二区三区| 久久综合电影一区| 亚洲天堂成人在线视频| 亚洲欧美视频| 亚洲欧洲精品一区二区三区波多野1战4 | 六月丁香综合| 亚洲视频电影在线| 午夜精品久久久久久久99热浪潮| 国精产品99永久一区一区| 亚洲电影免费观看高清| 国产精品劲爆视频| 欧美高清视频| 国产老肥熟一区二区三区| 欧美福利小视频| 国产精品久久久久一区二区| 美女精品自拍一二三四| 欧美日韩在线播放三区四区| 久久性天堂网| 国产精品久久久久91| 免费看黄裸体一级大秀欧美| 国产精品久久久久aaaa九色| 欧美jizz19性欧美| 国产精品爽黄69| 亚洲精品视频啊美女在线直播| 国内精品久久久久久久果冻传媒| 亚洲美女啪啪| 曰本成人黄色| 亚洲欧美日韩国产一区二区三区| 久久精品二区亚洲w码| 久久综合色综合88| 欧美特黄一级大片| 欧美成年网站| 国产在线不卡视频| 在线视频亚洲| 亚洲伦伦在线| 久久理论片午夜琪琪电影网| 性高湖久久久久久久久| 欧美日韩国产成人在线免费 | 亚洲一二三区视频在线观看| 最近中文字幕日韩精品 | 亚洲免费电影在线| 久久精品国产综合精品| 欧美亚洲综合在线| 欧美日韩在线一二三| 亚洲黄色毛片| 亚洲国产精品一区二区www| 午夜国产精品视频免费体验区| 亚洲视频一二| 欧美日韩国产综合网 | 久久久www成人免费精品| 亚洲综合欧美| 欧美日韩在线播放三区| 亚洲卡通欧美制服中文| 亚洲免费大片| 欧美片第1页综合| 亚洲欧洲一级| 日韩午夜激情| 欧美欧美天天天天操| 亚洲精品乱码久久久久| 日韩亚洲精品视频| 欧美精品激情| 日韩亚洲欧美在线观看| 在线亚洲欧美视频| 欧美日韩黄视频| 一本综合久久| 欧美在线视频播放| 国内精品久久久久久久影视蜜臀| 欧美综合激情网| 美女网站久久| 亚洲三级免费电影| 欧美日韩成人免费| 亚洲视频在线一区| 久久疯狂做爰流白浆xx| 国产一区二区三区四区老人| 久久精品免费播放| 欧美福利视频| 亚洲午夜精品网| 国产情人综合久久777777| 欧美亚洲一区在线| 蜜桃av噜噜一区二区三区| 亚洲国产美女精品久久久久∴| 欧美成人一区二区三区在线观看 | 亚洲性感美女99在线| 午夜精品久久久久久久男人的天堂 | 国产一区在线免费观看| 久久国产婷婷国产香蕉| 久久综合伊人77777麻豆| 亚洲视频成人| 国产麻豆日韩| 久久久久久色| 亚洲美女黄网| 久久精彩视频| 亚洲欧洲一区二区三区在线观看| 欧美日韩国产小视频| 欧美一区二区视频观看视频| 亚洲丶国产丶欧美一区二区三区| 亚洲一级黄色片| 亚洲成人在线免费| 欧美日韩亚洲综合在线| 久久国产欧美精品| 99国产欧美久久久精品| 久久综合电影一区| 亚洲视频在线一区| 黄色精品一区| 国产精品女人毛片| 欧美成人一品| 久久精品水蜜桃av综合天堂| 一本色道久久综合| 欧美肥婆在线| 久久久精彩视频| 亚洲午夜在线| 亚洲三级影院| 一区在线影院| 国产噜噜噜噜噜久久久久久久久| 免费欧美视频| 久久国产精品网站| 亚洲一区免费网站| 亚洲三级影片| 欧美国产精品中文字幕| 久久久久国产一区二区三区| 亚洲欧美日韩另类精品一区二区三区| 亚洲高清资源| 精品成人免费| 国产日韩一区在线| 国产精品视频精品| 欧美性猛交xxxx乱大交蜜桃| 欧美精品三级日韩久久| 欧美ab在线视频| 久久亚洲影院| 久久久91精品国产一区二区三区 | 亚洲大片在线| 老鸭窝毛片一区二区三区| 久久电影一区| 久久国产主播| 欧美一区二区在线免费观看| 亚洲免费视频在线观看| 亚洲午夜高清视频| 亚洲午夜精品国产| 亚洲一级片在线观看| 亚洲图片你懂的| 亚洲在线一区| 香蕉久久夜色精品国产使用方法| 亚洲综合色激情五月| 亚洲已满18点击进入久久| 夜久久久久久| 亚洲午夜日本在线观看| 亚洲一区二区三区精品动漫| 中文国产亚洲喷潮| 亚洲欧美日韩区| 欧美在线关看| 久久久久五月天| 美女免费视频一区| 亚洲高清免费在线| 亚洲精品老司机| 日韩亚洲国产精品| 亚洲在线观看免费| 久久99伊人| 欧美成年人网站| 欧美日韩国产页| 在线成人激情视频| 欧美成人精品在线视频| 欧美精品久久久久久久久久| 欧美日韩另类综合| 国产精品美女在线| 国产亚洲欧美一区二区三区| 亚洲高清资源综合久久精品| 一个色综合av| 久久www成人_看片免费不卡| 美日韩在线观看|