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

隨筆 - 96  文章 - 255  trackbacks - 0
<2008年3月>
2425262728291
2345678
9101112131415
16171819202122
23242526272829
303112345

E-mail:zbln426@163.com QQ:85132383 長期尋找對戰略游戲感興趣的合作伙伴。

常用鏈接

留言簿(21)

隨筆分類

隨筆檔案

SDL相關網站

我的個人網頁

我的小游戲

資源下載

搜索

  •  

積分與排名

  • 積分 - 494654
  • 排名 - 39

最新評論

閱讀排行榜

評論排行榜

        VC2005和VC2008編譯出來的程序放到別人的電腦上為什么有可能無法運行呢?
        這個問題無數人在問,但是很遺憾,沒有人給出完整的解釋和完美的解決方案。其實我也只有一臺電腦,而且裝了VC了,這個問題必須要臺沒有裝這類軟件的電腦才容易去分析。感謝那些為了測試我小程序的朋友,是你們一次次在如此惡劣的網絡速度下收取我一次次修改的dll包和部署文件,才讓這個問題的完美解決方案浮出水面。這里就把我的經驗給大家分享吧。

1:Microsoft Visual C++ 2008 Express Edition可以發布軟件嗎?

        能!
        很多人說,因為是Express版,不是Studio,所以只是用來練習語言的,不能發布軟件——錯!
        除了沒有MFC和ATL,基本上跟 .net 版本是一樣的。發布出來的,是完整的可執行文件。

2:VC 2008 (2005) 發布出來的程序必須附帶上他們特定的dll文件嗎?

        不一定。
        如果目標系統是個經常升級的系統,微軟已經為其打上了所需要的dll文件補丁了,不需要在軟件包里面附加特定的dll文件。特別在Vista系統中,你更是不需要VC8和VC9的dll文件。但是在一些老版本的系統中,這些文件就是必須的。

3:VC2008和VC2005特定的dll文件是哪些?

VC8: msvcm80.dll, msvcp80.dll, msvcr80.dll
VC9: msvcm90.dll, msvcp90.dll, msvcr90.dll

4:如何部署文件?

首先,請選擇release版本;在生成可執行文件(exe文件)的時候,會得到相應的部署文件(manifest文件)。
比如,得到a.exe文件,就會同時生成a.exe.intermediate.manifest文件。請將這2個文件放在同一文件夾下。
然后,你需要VC8和VC9的部署文件:Microsoft.VC80.CRT.manifest和Microsoft.VC90.CRT.manifest。
請到你的VC安裝目錄下尋找,比如:
C:\Program Files\Microsoft Visual Studio 9.0\VC\redist\x86\Microsoft.VC90.CRT
我這里也把2個部署文件直接貼出來,沒裝的直接用就是了:
Microsoft.VC80.CRT.manifest
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0">
<noInheritable></noInheritable>
<assemblyIdentity type="win32" name="Microsoft.VC80.CRT" version="8.0.50727.762" processorArchitecture="x86" publicKeyToken="1fc8b3b9a1e18e3b"></assemblyIdentity>
<file name="msvcr80.dll" /> <file name="msvcp80.dll" /> <file name="msvcm80.dll" />
</assembly>
Microsoft.VC90.CRT.manifest
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<!-- Copyright (c) Microsoft Corporation.  All rights reserved. -->
<assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0">
    
<noInheritable/>
    
<assemblyIdentity
        
type="win32"
        name
="Microsoft.VC90.CRT"
        version
="9.0.21022.8"
        processorArchitecture
="x86"
        publicKeyToken
="1fc8b3b9a1e18e3b"
    
/>
    
<file name="msvcr90.dll" /> <file name="msvcp90.dll" /> <file name="msvcm90.dll" />
</assembly>
然后將VC8的3個dll以及這個manifest裝到一個文件夾里,并將文件夾命名為Microsoft.VC80.CRT。
同樣將VC9的3個dll以及這個manifest裝到一個文件夾里,并將文件夾命名為Microsoft.VC90.CRT。
將這2個文件夾放到與exe文件(及其部署文件)所在目錄下就OK了。
至于為什么VC9編譯的程序要用VC8的dll,大家可以看看我例程部署文件:
<?xml version='1.0' encoding='UTF-8' standalone='yes'?>
<assembly xmlns='urn:schemas-microsoft-com:asm.v1' manifestVersion='1.0'>
  
<trustInfo xmlns="urn:schemas-microsoft-com:asm.v3">
    
<security>
      
<requestedPrivileges>
        
<requestedExecutionLevel level='asInvoker' uiAccess='false' />
      
</requestedPrivileges>
    
</security>
  
</trustInfo>
  
<dependency>
    
<dependentAssembly>
      
<assemblyIdentity type='win32' name='Microsoft.VC90.CRT' version='9.0.21022.8' processorArchitecture='x86' publicKeyToken='1fc8b3b9a1e18e3b' />
    
</dependentAssembly>
  
</dependency>
  
<dependency>
    
<dependentAssembly>
      
<assemblyIdentity type='win32' name='Microsoft.VC80.CRT' version='8.0.50727.762' processorArchitecture='x86' publicKeyToken='1fc8b3b9a1e18e3b' />
    
</dependentAssembly>
  
</dependency>
</assembly>
VC 2008生成出來就需要VC90和VC80的CRT,我們能有什么脾氣呢……
也就是說,還別管你exe文件多大,要保證正常運行,我們需要首先拷貝這8個文件……
MinGW(gcc)編譯的就沒這些麻煩。所以,我現在都是用兩個編譯器編譯兩個exe以供發布了。
posted on 2008-04-12 01:51 lf426 閱讀(19484) 評論(19)  編輯 收藏 引用 所屬分類: Win32與VC

FeedBack:
# re: Microsoft Visual C++ 2008 發布程序的部署問題[未登錄] 2008-05-02 14:06 noname
呵呵,我用 vc2008 做的東西就不需要 vc8 的 dll。  回復  更多評論
  
# re: Microsoft Visual C++ 2008 發布程序的部署問題[未登錄] 2008-05-03 00:40 lf426
一直在官方升級的xp和2k3基本上不需要vc80和vc90的dll,Vista就更不需要了。但是問題是有多少人能在官方升級的。:)珍惜生命,拒絕盜版^^  回復  更多評論
  
# re: Microsoft Visual C++ 2008 發布程序的部署問題 2008-06-11 04:51 x11
為什么不用不用VC6呢,什么DLL都不需要,呵呵  回復  更多評論
  
# re: Microsoft Visual C++ 2008 發布程序的部署問題 2008-06-12 23:12 awshome
之后.考到目標計算機上就可以了嗎.我用VC2008 MFC 寫的程序.到XP上說什么無法定位 mfcm90u.dll.我已經裝了./VC2008 的運行庫了.還是不能運行?  回復  更多評論
  
# re: Microsoft Visual C++ 2008 發布程序的部署問題[未登錄] 2008-06-13 00:05 lf426
我用的是Express Edition,沒有MFC這些。估計你還是要參考下程序的布局文件(manifest),看看需要的dll以及應該放在什么位置。  回復  更多評論
  
# re: Microsoft Visual C++ 2008 發布程序的部署問題 2008-06-15 10:15 cnhome
還就是VC6編譯的程序好用,走遍天下無敵手啊
  回復  更多評論
  
# re: Microsoft Visual C++ 2008 發布程序的部署問題[未登錄] 2008-06-15 18:59 lf426
傳說中,VC6對C++標準支持不好——當然,實際上我個人還沒遇到特別嚴重的情況——因為我用的C++還很初級:) 這個要怪只能怪M$自己,自己搞了太多概念,太多自己的標準。  回復  更多評論
  
# re: Microsoft Visual C++ 2008 發布程序的部署問題 2008-06-26 10:33 空明流轉
VC6是在C++標準之前出的。  回復  更多評論
  
# re: Microsoft Visual C++ 2008 發布程序的部署問題 2008-06-26 20:33 Simon
非常感謝!我在Xubuntu8.04+Wine1.0上裝Tencent Messenger 2008時就遇到了這樣的問題。安裝運行時提示需要ATL80.DLL、MSVCP80.dll、MSVCR80.dll和Microsoft.VC80.CRT,按照你文中所講處理后問題解決。
只是又有新提示還需要Microsoft.VC80.ATL,搜了一圈也沒找到,方便再提供代碼給我嗎?
先多謝了!
ifw_simon AT hotmail DOT com  回復  更多評論
  
# re: Microsoft Visual C++ 2008 發布程序的部署問題[未登錄] 2008-06-26 22:29 lf426
我裝的Express版的,沒有ATL和MFC庫,你得拜托裝了完整版vs2005.net的朋友給你找個配置文件哈。  回復  更多評論
  
# re: Microsoft Visual C++ 2008 發布程序的部署問題 2008-06-27 10:03 Simon
@lf426
噢,明白了,非常感謝啦!  回復  更多評論
  
# re: Microsoft Visual C++ 2008 發布程序的部署問題 2008-08-31 20:11 孤山客
好像大家都不懂哎

VC6也是需要dll的,因為系統都已經自帶的而已【太老了嗎嘛】

VC89其實也不用帶的,前提是你選擇靜態鏈接運行庫。

反而是GNU是不行的,根據LGPL協議你是不能靜態鏈接標準庫的,當然你可以選擇別的協議的標準庫,不用GNU自帶的庫。  回復  更多評論
  
# re: Microsoft Visual C++ 2008 發布程序的部署問題[未登錄] 2008-09-02 13:08 lf426
LGPL也可以靜態編連的,只要一并公開源代碼就可以了。:)  回復  更多評論
  
# re: Microsoft Visual C++ 2008 發布程序的部署問題[未登錄] 2008-10-15 19:57 aaaa
Visual C++ 2008 什么時候脫離Net Framwork DLL而獨立可運行啊????????????????  回復  更多評論
  
# re: Microsoft Visual C++ 2008 發布程序的部署問題 2009-06-07 16:28 Coolsunsky
我跟你一樣啊  回復  更多評論
  
# re: Microsoft Visual C++ 2008 發布程序的部署問題[未登錄] 2010-01-27 10:19 
為啥不安裝一下Microsoft Visual C++ 2008 Redistributable Package呢?   回復  更多評論
  
# re: Microsoft Visual C++ 2008 發佈程序的部署問題 2010-08-17 17:48 CROMA
裝了 VS2008 SP1 以後好像就不適用這個方法了 orz
  回復  更多評論
  
# re: Microsoft Visual C++ 2008 發布程序的部署問題 2010-10-16 22:42 莉薩
裝個Redistribution Package就好了阿.
還有就是別把Debug的搞成Release拿出去就好了.

曾經碰到最惡心的問題是一個2008的c#的solution,link了一個vc6的庫,一個vc9的c#庫,c#庫link了一個vc9的cli庫.

悲慘的是,做vc6,vc9cli,vc9c#,還有整個solution的人分別在兩個地方,然后正好挨到升級2008sp1的那幾天....

那叫一個悲劇阿....link error導致項目delay了1個月  回復  更多評論
  
# re: Microsoft Visual C++ 2008 發布程序的部署問題 2015-06-11 17:40 fromse
好貼!經驗證是可行的。  回復  更多評論
  
青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <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>
              久久精品午夜| 亚洲综合色网站| 欧美大片在线看| 最新国产成人在线观看| 亚洲大片免费看| 女人天堂亚洲aⅴ在线观看| 亚洲精品久久久久中文字幕欢迎你| 欧美成人资源| 欧美三级电影大全| 久久精品国产视频| 久久中文字幕一区| 一区二区欧美在线| 亚洲欧美日本精品| 亚洲黄色成人久久久| 亚洲精品在线观看免费| 国产伦精品一区二区三区在线观看| 久久香蕉国产线看观看网| 免费成人黄色| 午夜一级在线看亚洲| 久久久国产精品一区二区三区| 亚洲欧洲三级| 欧美亚洲网站| 宅男噜噜噜66一区二区| 久久精品二区三区| 亚洲一区二区伦理| 久久一区亚洲| 午夜精品久久久久久久久久久久 | 亚洲小视频在线| 国产一区二区三区四区三区四| 亚洲国产精品成人一区二区 | 国产亚洲欧美一区在线观看| 欧美激情1区2区3区| 国产精品毛片| 99精品国产热久久91蜜凸| 国产自产在线视频一区| 99精品视频免费在线观看| 国产一区二区三区黄| 亚洲久久一区| 亚洲精品资源美女情侣酒店| 欧美一区在线看| 午夜精品短视频| 欧美日韩国产999| 欧美肥婆在线| 精品999在线观看| 亚洲欧美日产图| 欧美日韩三级一区二区| 牛人盗摄一区二区三区视频| 国产视频一区三区| 亚洲性感激情| 亚洲欧美成aⅴ人在线观看| 欧美黄色一级视频| 欧美阿v一级看视频| 国产三级欧美三级日产三级99| 一本色道久久88综合日韩精品| 亚洲美女av在线播放| 美国成人直播| 欧美插天视频在线播放| 一区二区在线看| 久久精品国产亚洲5555| 久久国产精品亚洲va麻豆| 国产欧美日韩一区二区三区在线| 亚洲视频在线一区观看| 午夜日本精品| 国产日本亚洲高清| 久久精品国产999大香线蕉| 久久精品国产欧美激情| 国产一区二区三区高清 | 久热成人在线视频| 亚洲国产精品久久久| 美女日韩欧美| 亚洲欧洲午夜| 99国内精品久久| 欧美日韩中文字幕精品| 在线一区二区三区四区| 欧美一级淫片aaaaaaa视频| 国产美女精品视频| 久久精品国产清高在天天线| 欧美+亚洲+精品+三区| 亚洲三级色网| 欧美视频手机在线| 这里是久久伊人| 久久精品91| 亚洲精品乱码久久久久久黑人 | 国产欧美日韩三区| 久久精品日产第一区二区| 亚洲国产精品va在线看黑人 | 国产日韩一级二级三级| 久久久精品免费视频| 91久久久久| 亚洲欧美中文日韩在线| 极品少妇一区二区三区精品视频| 牛牛国产精品| 亚洲综合视频1区| 欧美成人黑人xx视频免费观看 | 国产精品亚洲美女av网站| 久久精品视频亚洲| 亚洲美女网站| 欧美成人精品影院| 国产精品99久久久久久www| 国产亚洲精品aa| 欧美精品久久久久久久久老牛影院| 亚洲午夜视频| 亚洲黄色在线视频| 久久精视频免费在线久久完整在线看| 亚洲国产成人av在线| 欧美日韩综合视频| 美女视频网站黄色亚洲| 亚洲综合首页| 亚洲日本精品国产第一区| 久久久激情视频| 亚洲女女做受ⅹxx高潮| 亚洲国产精品电影| 久久这里有精品15一区二区三区| 日韩午夜中文字幕| 欧美国产视频日韩| 久久aⅴ国产紧身牛仔裤| 99国产精品久久| 亚洲高清av在线| 韩国三级电影久久久久久| 欧美深夜福利| 欧美日韩123| 欧美高清在线一区| 美女尤物久久精品| 久久久精品一区二区三区| 在线视频一区二区| 亚洲精品在线三区| 欧美激情一区二区三区成人 | 这里只有精品视频在线| 亚洲理论在线观看| 亚洲国产精品免费| 在线观看亚洲视频| 亚洲成人影音| 在线观看欧美激情| 激情视频一区| 伊人久久噜噜噜躁狠狠躁| 国产偷自视频区视频一区二区| 国产精品v欧美精品v日韩| 欧美日韩性生活视频| 欧美日产一区二区三区在线观看 | 欧美日韩国产首页在线观看| 欧美jjzz| 欧美激情亚洲另类| 免费试看一区| 欧美成人高清视频| 欧美韩日一区| 欧美日韩国产综合一区二区| 欧美日韩ab片| 国产精品第一区| 国产精品一区二区久久久久 | 欧美ed2k| 欧美欧美在线| 国产精品高清免费在线观看| 国产精品卡一卡二| 国产精品影片在线观看| 国产日本欧美视频| 亚洲大片在线观看| 日韩视频在线观看| 亚洲在线中文字幕| 久久精品一区蜜桃臀影院| 美国十次成人| 99在线精品免费视频九九视| 亚洲综合视频在线| 久久婷婷综合激情| 欧美三级视频在线观看| 国产亚洲激情| 99国产成+人+综合+亚洲欧美| 亚洲天堂av电影| 久久久免费观看视频| 亚洲国产欧美另类丝袜| 亚洲视频免费在线观看| 欧美影院在线| 欧美女主播在线| 国产一区二区三区免费观看 | 在线精品视频一区二区三四| 99精品国产热久久91蜜凸| 午夜精品久久久久久久久| 免费观看在线综合| 一区二区三区四区五区视频 | 亚洲乱码国产乱码精品精98午夜| 亚洲女人小视频在线观看| 久久综合一区二区三区| 欧美日韩在线亚洲一区蜜芽| 国产综合久久久久久| 夜夜躁日日躁狠狠久久88av| 久久躁狠狠躁夜夜爽| 99国产精品视频免费观看一公开 | 亚洲天堂成人在线观看| 久久视频一区| 亚洲视频免费观看| 欧美a级片网| 一区二区在线视频播放| 亚洲欧美另类在线观看| 欧美黄色aa电影| 欧美夜福利tv在线| 国产精品第2页| 一区二区三区 在线观看视频| 蜜桃av噜噜一区| 午夜精品一区二区三区四区 | 久久久91精品| 国产午夜精品在线观看|