終于明白了tc編譯的dos程序和vc編譯的win32控制臺(tái)程序的區(qū)別
更新時(shí)間:2007年09月06日 08:33:25 作者:
它們有著本質(zhì)的區(qū)別:1:一個(gè)是16的DOS程序,一個(gè)是標(biāo)準(zhǔn)的32的Windows應(yīng)用程序.前者依然受著64KB內(nèi)存分段約束,后者無憂無慮地使用著4GB內(nèi)存地址空間.它們本來就是運(yùn)行在不同的操作系統(tǒng)上的.別把他們混淆.DOS程序可以運(yùn)行在windows上是因?yàn)橛蠳TVDM.而你把VC生成的控制臺(tái)程序放到DOS下只會(huì)得到!?This program cannot be run in DOS mode.2:如果你是用標(biāo)準(zhǔn)庫編寫的話,代碼應(yīng)該沒多大差異的.但執(zhí)行時(shí)調(diào)用庫方式卻差天共地.前者通過API模擬出一個(gè)執(zhí)行環(huán)境,后者是直接調(diào)用WIN32 API的.3:TC里面編寫程序確實(shí)是可以調(diào)用中斷,可是這個(gè)中斷不是直接執(zhí)行的.是NTVDM提供的.在NT的世界里.ring3不太可能直接調(diào)用中斷的.4:VC6(早期版本就不知道了)不能編寫DOS程序,只能編寫控制臺(tái)程序,注意,這只不過是Win32程序只使用控制臺(tái)這個(gè)標(biāo)準(zhǔn)輸入輸出而已.控制臺(tái)程序照樣可以彈出個(gè)窗口,也可以有消息循環(huán),窗口程序照樣可以有個(gè)控制臺(tái).
您可能感興趣的文章:
- java.lang.UnsatisfiedLinkError: %1 不是有效的Win32應(yīng)用程序錯(cuò)誤解決
- C語言+win32api寫窗體應(yīng)用程序
- VC程序在Win32環(huán)境下動(dòng)態(tài)鏈接庫(DLL)編程原理
- 實(shí)例分析一個(gè)簡(jiǎn)單的Win32程序
- WIN32程序獲取父進(jìn)程ID的方法
- 木馬程序Trojan-Spy.Win32.Agent.cfu清除方法
- tc編譯的dos程序和vc編譯的win32控制臺(tái)程序的異同
- Win32 程序在啟動(dòng)時(shí)如何激活前一個(gè)啟動(dòng)程序的窗口
相關(guān)文章
據(jù)說是中國(guó)國(guó)家授時(shí)中心的時(shí)間服務(wù)器IP地址
據(jù)說是中國(guó)國(guó)家授時(shí)中心的時(shí)間服務(wù)器IP地址...2007-06-06不能確定應(yīng)用到此機(jī)器的組策略安全性設(shè)置的解決方法
不能確定應(yīng)用到此機(jī)器的組策略安全性設(shè)置。在嘗試從本地安全策略數(shù)據(jù)庫(%windir%\security\database\secedit.sdb)中檢索這些設(shè)置時(shí)返回的錯(cuò)誤為: 參數(shù)不正確。2008-07-07買電腦應(yīng)當(dāng)看清數(shù)字后面的數(shù)字!!
買電腦應(yīng)當(dāng)看清數(shù)字后面的數(shù)字!!...2007-01-01