• <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>
            Dict.CN 在線詞典, 英語學(xué)習(xí), 在線翻譯

            學(xué)海苦作舟,書山勤為徑

            留下點(diǎn)回憶

            常用鏈接

            統(tǒng)計(jì)

            積分與排名

            Denoise

            English study

            Web技術(shù)

            數(shù)據(jù)壓縮

            一些連接

            最新評論

            為你的程序創(chuàng)建一個(gè)控制臺(tái)

            經(jīng)常看到一些程序在運(yùn)行的時(shí)候有一個(gè)WINDOWS控制臺(tái),感覺非常COOL。實(shí)際上有的時(shí)候幫助你監(jiān)視系統(tǒng)運(yùn)行是很方便的,那么怎么樣創(chuàng)建一個(gè)控制臺(tái)呢?

            實(shí)際上WINDOWS為你提供了一系列的API來完成這個(gè)功能,例如:ReadConsole,WriteConsole等,具體參見MSDN。

            下面我們用一段代碼來說明如何創(chuàng)建Console.

            1。首先調(diào)用AllocConsole函數(shù)來為你進(jìn)程創(chuàng)建一個(gè)Console,該API是將當(dāng)前進(jìn)程Attache到一個(gè)新創(chuàng)建的Console上。你還可以通過調(diào)用SetConsoleTitle(tstrName);來設(shè)置Console的Title.

            2。使用WriteConsoleOutput來將信息輸出到Console上;在輸出之前,先要得到Console的HANDLE,這通過GetStdHandle(STD_OUTPUT_HANDLE)來得到,然后將信息組織成Console的格式,然后輸出。

            3。關(guān)閉CONSOLE。當(dāng)不需要這個(gè)CONSOLE的時(shí)候,調(diào)用FreeConsole來將當(dāng)前進(jìn)程從Console中Detach中。

            4。通過創(chuàng)建一個(gè)進(jìn)程來為監(jiān)視你的CONSOLE輸入和輸出;你可以創(chuàng)建一個(gè)線程然后來,在線程中取得標(biāo)準(zhǔn)輸入和輸出CONSOLE的HANDLE,然后循環(huán)監(jiān)視其事件,再對不同的事件進(jìn)行處理。

            詳細(xì)代碼參見:http://blog.csdn.net/windcsn/archive/2005/11/27/537737.aspx

            posted on 2005-11-27 15:49 笨笨 閱讀(2784) 評論(8)  編輯 收藏 引用

            評論

            # re: 為你的程序創(chuàng)建一個(gè)控制臺(tái) 2005-11-28 01:22 eXile

            你說的是在GUI程序中使用控制臺(tái)吧, 對于VC, 其實(shí)有一個(gè)簡單的方法:
            在選項(xiàng) Post-builder step 里新建command, 輸入:
            editbin /SUBSYSTEM:CONSOLE $(OUTDIR)\filename.exe
            (其中 filename 為可執(zhí)行文件名)
            則可以使用 printf 或者 std::cout 在控制臺(tái)中輸出了.  回復(fù)  更多評論   

            # re: 為你的程序創(chuàng)建一個(gè)控制臺(tái) 2005-11-28 13:15 小明

            最好能重定向cout,cerr到文件中去
            SDL就是這樣做的  回復(fù)  更多評論   

            # re: 為你的程序創(chuàng)建一個(gè)控制臺(tái) 2005-11-28 21:23 笨笨

            To eXile:可以嗎?我怎么不成功  回復(fù)  更多評論   

            # re: 為你的程序創(chuàng)建一個(gè)控制臺(tái) 2005-11-30 17:43 eXile

            沒有理由啊! 估計(jì)是你拼寫錯(cuò)誤.

            在 Project | Setting...中設(shè)置, 如果你的可執(zhí)行文件名為 HelloWorld.exe,
            則你新建的 command 就為

            editbin   /SUBSYSTEM:CONSOLE   $(OUTDIR)\HelloWorld.exe

            如果還不行, 那......只有天知道了.
              回復(fù)  更多評論   

            # re: 為你的程序創(chuàng)建一個(gè)控制臺(tái) 2005-12-01 09:37 笨笨

            是的,實(shí)驗(yàn)成功了,上次放錯(cuò)了地方,放到生成后事件中就可以了,但這種情況適合那些只輸出的情況,如果需要moniter控制臺(tái)就不行了  回復(fù)  更多評論   

            # re: 為你的程序創(chuàng)建一個(gè)控制臺(tái) 2006-06-23 14:42 王瑜

            烏拉拉 烏拉拉天要下雨  回復(fù)  更多評論   

            # 123456789 2006-07-02 06:41 李東

            麻豆腐棵仍舊棵耳孔幾可人口幾國家日光機(jī)個(gè)熱肩胛骨米可靠媽媽年可可可可的可靠麻煩感快樂看法 麻煩飛機(jī)后果那么那么媽媽,門口人民地方看來  回復(fù)  更多評論   

            # re: 為你的程序創(chuàng)建一個(gè)控制臺(tái) 2006-11-15 12:27 qzq

            VC++ 2005還可用如下修改,為Windows窗體應(yīng)用程序增加控制臺(tái):
            工程配置屬性->鏈接器->系統(tǒng)->子系統(tǒng) 選 “控制臺(tái)”。  回復(fù)  更多評論   

            国产精品99久久久精品无码| 99久久精品午夜一区二区| 亚洲?V乱码久久精品蜜桃| 久久精品国产色蜜蜜麻豆| 国产精品久久波多野结衣| 久久综合久久鬼色| 大伊人青草狠狠久久| 一级女性全黄久久生活片免费 | 久久丫精品国产亚洲av不卡 | 久久久噜噜噜久久中文字幕色伊伊| 波多野结衣久久一区二区| 91精品久久久久久无码| 色综合久久久久久久久五月| 久久久久国产一区二区三区| 国产精品国色综合久久| 亚洲精品无码久久久久去q | 日本欧美久久久久免费播放网 | 国内精品久久久久影院优| 久久精品国产欧美日韩99热| 国产精品成人久久久久三级午夜电影| 精品国产乱码久久久久软件 | 久久精品中文字幕久久| 亚洲午夜久久久久久久久电影网| 色综合久久中文字幕综合网| 久久国产香蕉视频| 精品久久国产一区二区三区香蕉| www久久久天天com| 俺来也俺去啦久久综合网| 老色鬼久久亚洲AV综合| 一本色道久久88—综合亚洲精品 | 亚洲精品乱码久久久久久 | 伊人久久大香线蕉影院95| 色综合久久最新中文字幕| 国产精品久久久久久久久免费| 蜜臀av性久久久久蜜臀aⅴ麻豆| 久久天天躁狠狠躁夜夜2020一| 久久精品中文字幕大胸| 国产69精品久久久久9999APGF| 久久人人爽人人爽人人片AV东京热 | 亚洲精品无码专区久久同性男 | 久久亚洲欧美国产精品|