疑難雜症-.NET Framework 4.6.2 安裝成功,但安裝目錄下缺少文件

1,問題表現:安裝成功後,雙擊運行,顯示程序停止運行;查看日誌沒有捕獲錯誤日誌;

     分析:但是查看系統日誌如下所示:

1.以爲是系統文件缺失或被破壞,使用Depend 檢索軟件依賴的系統鏈接庫:

在指定位置查找直接依賴文件都存在。

針對系統日誌錯誤:錯誤模塊名稱:KERNELBASE.DLL開始請教“度娘“,發現整體千篇一律,大致分爲以下幾種:

系統文件kernelbase.dll是存放在Windows系統文件夾中的重要文件,通常情況下是在安裝操作系統過程中自動創建的,對於系統正常運行來說至關重要。除非用戶電腦被木馬病毒、或是流氓軟件篡改導致出現kernelbase.dll丟失、缺失損壞等彈窗現象,否則不建議用戶對該類文件(kernelbase.dll)進行隨意的修改。
 

1、標平臺從anycpu改爲x64,然後重新編譯生成後,在64位服務器上運行就,可以正常運行。

2、x64電腦編譯x86後,在運行時需要做兼容處理,桌面快捷方式或者安裝目錄裏的軟件圖標→鼠標右擊→屬性→兼容性→以管理員身份運行此程序,即可解決問題。

因爲我的軟件開始爲anycpu,出問題的主機爲x86,通過上面步驟後也沒有解決問題。

又百度可能是程序自己的問題,1,檢查程序配置文件是否正確(檢查配置數據庫路徑等信息);2,檢查是否某些引用的插件是否存在;

試過之後還是沒有解決問題。

這時,有點迷茫了,程序沒有捕獲到異常,沒有方向沒有思路,啊啊啊啊啊。。。。。。

不對,程序沒有捕獲到異常,我檢查代碼所有的方法都加上try catch ,還是沒有捕獲到異常,那是不是.NET Framework環境有問題呀,想了想,軟件的運行環境是.NET Framework 4.6.2 打包的時候已經把.NET Framework 4.6.2 的安裝包注入到安裝包裏面了,安裝軟件時,首先會檢測系統是否安裝了.NET Framework 4.6.2 ,如果沒有安裝會自動安裝,重新卸載安裝,沒有提示電腦沒有.NET Framework 4.6.2 說明電腦已經安裝了.NET Framework 4.6.2 (這裏說明一下:win10自帶.NET Framework4.7版本,.NET Framework 向下兼容)查看.NET Framework 安裝路徑,我尼瑪 少了好多文件,果斷卸載.NET Framework 4.6.2 重新安裝後果然解決了問題。

 

總結:遇到問題首先得冷靜,分析現象,通過現象看本質。沒有捕獲到異常,程序都沒有運行以來的環境,都運行不起來怎麼捕獲異常呢。。。。

解決此問題的思路:

1,查看程序日誌看是否有捕獲到異常,

2,使用Dependency Walker 檢測程序依賴動態庫是否缺失

3,檢測程序運行依賴環境是否完整

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章