• <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ù)  更多評論   

            亚洲国产成人久久一区久久| 欧美综合天天夜夜久久| 97久久精品人人澡人人爽| 久久美女网站免费| 午夜精品久久久内射近拍高清| 亚洲国产天堂久久综合| 久久天天躁狠狠躁夜夜96流白浆| 日韩一区二区久久久久久| 久久综合亚洲色HEZYO国产| 欧洲人妻丰满av无码久久不卡| 久久最新精品国产| 2021国产精品午夜久久| 91视频国产91久久久| 香港aa三级久久三级老师2021国产三级精品三级在 | 久久播电影网| 亚洲色欲久久久久综合网| 国产精品久久久久久吹潮| 久久久久黑人强伦姧人妻| 人妻无码αv中文字幕久久琪琪布 人妻无码久久一区二区三区免费 人妻无码中文久久久久专区 | 无码国内精品久久人妻蜜桃 | 99久久国产主播综合精品| 一级做a爱片久久毛片| 亚洲国产精品久久久天堂| 久久精品国产亚洲5555| 久久99精品国产一区二区三区| 热综合一本伊人久久精品| 18岁日韩内射颜射午夜久久成人 | 99久久精品久久久久久清纯| 亚洲精品乱码久久久久久按摩 | 996久久国产精品线观看| 中文字幕久久精品无码| 久久只这里是精品66| 国产AⅤ精品一区二区三区久久| 久久精品国产99久久无毒不卡| 中文字幕久久亚洲一区| 久久综合伊人77777| 思思久久99热免费精品6| 国产精品热久久无码av| 国产精品美女久久久免费| 久久免费精品一区二区| 99精品伊人久久久大香线蕉|