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

永遠也不完美的程序

不斷學習,不斷實踐,不斷的重構……

常用鏈接

統計

積分與排名

好友鏈接

最新評論

應用程序配置不正確,程序無法啟動的問題小結(轉)

轉自:http://blog.csdn.net/waterathena/archive/2009/04/20/4094771.aspx

重裝系統之后,開發環境進行重新配置了。因為之前那個環境用了大概有半年多了,所以只是基本的配置作了記錄,其他細節的東西并沒有以文字方式記錄下來。這次運行起來有了一些未遇到過的問題。

問題1:重裝系統之前就遇到過,解決了。主要原因缺少DLL

問題描述:項目組要提交0.9版到QT部門進行測試,打包發布文件之后,在測試部測試電腦上安裝之后,發現雙擊.EXE不能運行。彈出信息框:由于應用程序配置不正確,應用程序未能啟動。重新安裝應用程序可能會糾正這個問題。

解決方法:當時網上一查發現需要拷貝VS2005安裝包目錄下的一些DLL文件。我的安裝目錄是:C:\Program Files\Microsoft Visual Studio 8\VC\redist\x86。我把這個目錄下的所有相關文件都拷貝到項目生成文件目錄下。

參考原文:http://www.cnblogs.com/wuhanhoutao/archive/2008/01/09/1031928.html

問題2:在重新安裝系統,重新安裝開發環境之后,工作了幾日后,發布新的版本給QT測試部門測試。發現又出現這樣的問題。主要原因MANIFEST不正確

問題描述:安裝完成之后,點擊.exe不能運行。彈出信息框:由于應用程序配置不正確,應用程序未能啟動。重新安裝應用程序可能會糾正這個問題。

其中有一次彈出的信息框為英文操作系統下面的信息:The application has failed to start because its side-by side configuration is incorrect.

正是這個信息里面的“side-by-side configuration”讓我去了解WINSXS。

參考文章:http://microsoft.cnfan.net/vista/3434.html (vista WinSxS 混亂導致的應用程序不能啟動 )

參考文章:http://blog.csdn.net/arau_sh/archive/2008/12/17/3538252.aspx (提供四種解決方法)

參考文章:http://hi.baidu.com/freedomknightduzhi/blog/item/60a5012e512bba554fc226e9.html

參考文章:http://www.cnblogs.com/holly/archive/2009/02/20/1395150.html (可以嘗試)

參考文章:http://blog.csdn.net/newweapon/archive/2008/06/17/2556857.aspx

官方參考資料:http://msdn.microsoft.com/en-us/library/dd408052(VS.85).aspx

參考文章:http://blogs.msdn.com/suzcook/archive/2004/05/14/132022.aspx (APP.CONFIG example)

我的解決方法:

1.我試驗了在測試目標機上安裝VC++ 2005 Redistribute package,.exe可以正確運行。但是我覺得這個并不能代表真正原因,因為之前我也沒有安裝任何發布包,但是.exe可以正確運行。

2.參考文章“vista WinSxS 混亂導致的應用程序不能啟動 ”可以知道,.exe在運行的時候執行的進程去系統默認路徑尋找需要的DLL文件,而沒有使用拷貝到本目錄下的DLL文件。所以如果系統沒有安裝發布套件,那么執行的時候就出現了“應用程序配置不正確……”的錯誤。

該文章中提供的解決方案把MANIFEST文件不要內嵌到.EXE文件中,調整編譯設置后我重新編譯了程序,然后拷貝程序到目標測試機測試,發現還是不行。這個時候我去查看了編譯生成在外部的MANIFEST文件(用文本文件可以打開MANIFEST)文件,發現了問題:
 

仔細一看就發現同樣的DLL寫了兩次,只是版本不同。而我拷貝到執行文件同目錄下的版本為8.0.50727.762。把最后那個dependency分支去掉后,在把執行文檔所在的整個目錄拷貝到QT目標測試機就運行起來了。

題外話:

1.在上面的參考文章中提到使用靜態鏈接MFC庫的形式,就不會出現這樣的問題。但是靜態鏈接庫不好,另外也會造成編譯生成的.EXE龐大。

如果實在沒有辦法的情況下,也只能靜態編譯了。設置順序為:Project->Properties(ALT+F7)->Property Page->General->Project Defaults->use of MFC設置:USE MFC IN A STATIC LIBRARY

然后BUILD。

2.在目標測試機上安裝相應的發布套件。VC_REDIST_X86.EXE

需要把官方發布的安裝套件和你的程序捆綁安裝,很麻煩。需要判斷操作系統(32or64位),需要判斷操作系統當前使用語言,然后安裝對應的版本。這是一定能解決不能運行的問題的辦法。

Microsoft Visual C++ 2005 Redistributable Package (x64) 下載地址:

http://www.microsoft.com/downloads/details.aspx?displaylang=zh-cn&FamilyID=90548130-4468-4bbc-9673-d6acabd5d13b

Microsoft Visual C++ 2005 Redistributable Package (x86)

http://www.microsoft.com/downloads/details.aspx?familyid=32BC1BEE-A3F9-4C13-9C99-220B62A191EE&displaylang=zh-cn

3. 如何查看本機的.NET Framework版本

參考文章:http://blog.csdn.net/FantasiaX/archive/2008/05/17/2453907.aspx

我喜歡的方法:從注冊表里查

注冊表其實就是一個大型的“鍵-值對列表”(Key-Value Pair List)。注冊表中的鍵是以樹狀層級結構記錄的,所以圖標看起來像是一個“文件夾”;一個鍵下,可以有“值”,而可以有再下一級的鍵。值是有數據類型的,比如字符串型、數字型;每個值都有自己的“Value Name”和“Value Data”。所以:

如果:HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\NET Framework Setup\NDP\v2.0.50727鍵下Value Name為Install的值的Value Data等于1,則說明.NET Framework 2.0.50727已經安裝。同理,檢查HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\NET Framework Setup\NDP\v3.0鍵和HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\NET Framework Setup\NDP\v3.5鍵下的Install值的Value Data就知道是否安裝了這兩個版本。我估計,如果沒有安裝過3.0和3.5的話,這兩個鍵是不會存在的,如果安裝后又卸載了,鍵可能會在,Install的Value Data可能會是0。


本文來自CSDN博客,轉載請標明出處:http://blog.csdn.net/waterathena/archive/2009/04/20/4094771.aspx

posted on 2010-01-10 23:36 狂爛球 閱讀(5467) 評論(0)  編輯 收藏 引用 所屬分類: 圖形編程

青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <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>
            日韩午夜高潮| 伊人影院久久| 欧美一级在线视频| 亚洲一区二区三区精品动漫| 中国成人黄色视屏| 亚洲尤物视频网| 欧美自拍偷拍| 欧美激情一区在线| 国产精品免费久久久久久| 国产女精品视频网站免费| 国产在线精品一区二区中文| 亚洲缚视频在线观看| 在线综合视频| 久久精品99无色码中文字幕| 暖暖成人免费视频| 亚洲日本成人| 亚洲天堂av在线免费| 久久久久久久久久久一区| 欧美激情女人20p| 美女视频黄a大片欧美| 欧美日韩国产精品成人| 国产精品视频观看| 亚洲高清久久久| 亚洲欧美国产不卡| 日韩午夜高潮| 久久久国产成人精品| 亚洲福利视频一区| 欧美va亚洲va国产综合| 国产精品99久久久久久久久久久久| 亚洲欧美日韩国产成人精品影院| 久久亚洲美女| 欧美国产日产韩国视频| 国产乱人伦精品一区二区| 亚洲精品网站在线播放gif| 欧美中文字幕久久| 中文日韩在线视频| 欧美韩日一区二区三区| 狠狠色综合网| 久久精品99国产精品| 亚洲美女av黄| 欧美成人有码| 亚洲精品一区二区三区不| 久久婷婷av| 久久aⅴ国产欧美74aaa| 国产精品盗摄一区二区三区| 亚洲精品一区二区在线观看| 欧美成人午夜| 蜜臀va亚洲va欧美va天堂| 国语自产精品视频在线看8查询8| 亚洲欧美成人一区二区三区| 亚洲三级视频在线观看| 免费一区视频| 亚洲国产高清一区| 久久久www成人免费无遮挡大片| 亚洲一区二区久久| 国产精品盗摄一区二区三区| 亚洲一区在线观看免费观看电影高清| 夜夜嗨av一区二区三区网页| 老司机亚洲精品| 欧美一区二区精品| 国产深夜精品福利| 久久爱www久久做| 香蕉久久夜色| 国产午夜一区二区三区| 久久黄金**| 久久精品盗摄| 在线观看一区二区视频| 欧美成人网在线| 欧美好骚综合网| 正在播放亚洲一区| 亚洲神马久久| 国产日韩精品视频一区| 久久丁香综合五月国产三级网站| 亚洲综合三区| 一区三区视频| 亚洲区中文字幕| 欧美日韩一本到| 午夜一区二区三区不卡视频| 午夜精品免费| 亚洲高清av| 日韩图片一区| 国产一区二区三区久久久| 欧美福利视频| 国产精品国产三级国产专区53| 亚洲欧美三级伦理| 久久国产精品高清| 夜夜狂射影院欧美极品| 亚洲在线电影| 亚洲欧洲午夜| 亚洲综合色婷婷| 最新成人av网站| 亚洲免费中文| 亚洲级视频在线观看免费1级| 洋洋av久久久久久久一区| 国产日韩欧美二区| 亚洲激情网站| 激情校园亚洲| 亚洲先锋成人| 亚洲精品日产精品乱码不卡| 亚洲永久精品大片| 亚洲精品国产精品国自产在线 | 日韩午夜在线播放| 国产精品专区h在线观看| 欧美激情视频一区二区三区在线播放 | 国产精品自拍视频| 亚洲高清不卡| 国内精品伊人久久久久av一坑| 亚洲欧洲一区二区三区久久| 国产一区二区三区四区hd| 亚洲精品在线电影| 亚洲国产日韩在线| 欧美亚洲免费电影| 午夜一区不卡| 欧美成人一区二区三区片免费| 99国产欧美久久久精品| 亚洲一区二区三区乱码aⅴ| 亚洲日本aⅴ片在线观看香蕉| 亚洲影视在线| 亚洲一区二区成人| 欧美日本韩国一区二区三区| 浪潮色综合久久天堂| 国产欧美激情| 亚洲自拍偷拍福利| 亚洲一区二区三区精品动漫| 欧美第一黄网免费网站| 蜜臀久久99精品久久久久久9 | 国产精品久久久久久久久久ktv| 欧美激情1区| …久久精品99久久香蕉国产| 欧美在线国产| 久久久久久久999精品视频| 国产欧美一二三区| 欧美一乱一性一交一视频| 欧美一级理论性理论a| 国产精品久久久999| 亚洲视频在线免费观看| 亚洲视频在线视频| 国产精品久久久久国产精品日日| 999亚洲国产精| 亚洲一二三四久久| 国产精品一区二区欧美| 亚洲一区在线免费观看| 欧美一激情一区二区三区| 国产欧美亚洲日本| 久久精品国产77777蜜臀 | 欧美jizzhd精品欧美巨大免费| 精品电影一区| 久久亚洲欧美| 亚洲精品一二三区| 亚洲自拍偷拍视频| 国产情人节一区| 久久综合久久综合久久综合| 欧美大片一区二区| 一区二区三区欧美亚洲| 国产精品国产三级国产普通话三级| 亚洲欧美激情诱惑| 久久精品国产久精国产思思| 伊人久久婷婷| 欧美日韩亚洲网| 欧美亚洲一区二区在线| 亚洲电影在线| 欧美在线一级va免费观看| 在线精品视频免费观看| 欧美日精品一区视频| 久久se精品一区精品二区| 亚洲韩国精品一区| 亚洲欧美日本日韩| 樱桃成人精品视频在线播放| 欧美日韩成人综合在线一区二区| 亚洲女同性videos| 欧美激情四色 | 久久五月婷婷丁香社区| 日韩亚洲欧美一区二区三区| 国产精品你懂得| 久久一区精品| 亚洲砖区区免费| 亚洲国产精品999| 欧美一区二区在线免费播放| 18成人免费观看视频| 久久精品主播| 老妇喷水一区二区三区| 国产精品高清一区二区三区| 狠狠综合久久av一区二区小说| 亚洲精品黄网在线观看| 久久夜色精品一区| 欧美一级大片在线观看| 国产精品久久久久久久久借妻 | 亚洲电影下载| 日韩亚洲在线| 国产一区二区三区四区五区美女| 欧美韩日精品| 蜜臀99久久精品久久久久久软件| 亚洲一区免费网站| 亚洲精品久久久久中文字幕欢迎你 | 久久精品2019中文字幕| 亚洲午夜伦理| 日韩午夜精品视频| 亚洲国产成人久久综合| 国产一区二区剧情av在线| 国产精品婷婷午夜在线观看|