[心得] 當遊戲無法啟動時的簡易除錯工具
簡介
想重新回味一款遊戲時,有時會遇到遊戲啟動失敗的情況,會想說奇怪之前還有在玩,怎
麼突然開不起來,刪除遊戲重新安裝還是找不出原因,十之八九是有DLL遺失了。
原理
DLL檔是系統中的公用程式資料庫,當遊戲程式需要某些功能時,不用重寫程式,只要存取
現有的DLL就好,可方便遊戲設計的時間與簡化程式複雜度。而有時會因為共用的某些原因
讓DLL遺失,造成遊戲在開啟時的啟動失敗。
方法
以上可知,我們只需把遺失的DLL檔找回就好,但常常沒有顯示足夠的啟動錯誤資訊,最簡
單就是手動重新安裝在遊戲資料夾中_CommonRedist的vcredist(這裡需注意你系統是64就
選x64、32就選x86),可補回基本一些用C++設計的DLL,而installscript.vdf就是遊戲第
一次執行時自動判斷要裝那些的腳本,像有些遊戲更新沒注意到,每次開遊戲會有鬼打牆
一直重複安裝,把.vdf砍了就好。
而可進遊戲但畫面全黑,最常見就是DirectX出問題,這部分也是手動_CommonRedist裡的
DXSETUP.exe重新安裝。
進階就是使用Process Explorer或Dependency Walker等免費工具來監視遊戲執行的啟動狀
況,這程式就像是進階版的工作管理員,可針對遊戲列出使用中的DLL檔,找出DLL檔。
Process Explorer
https://docs.microsoft.com/zh-tw/sysinternals/downloads/process-explorer
View->Lower pane view->DLLs 開啟監視DLL清單
https://i.imgur.com/47Lq5pF.png
Dependency Walker
http://www.dependencywalker.com/
File選好遊戲執行檔後,Profile->Start profile 或直接F7。跑一遍就會直接跟你說少了
什麼DLL,下方也有訊息欄可知道遊戲為何中斷。
https://i.imgur.com/DXIern2.png
一點小心得跟大家分享。
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 36.231.36.119
※ 文章網址: https://www.ptt.cc/bbs/Steam/M.1518683670.A.989.html
→
02/15 17:09,
6年前
, 1F
02/15 17:09, 1F
用Process Explorer監視可以看的出來是不是防毒軟體害的
甚至還可以監控遊戲有沒有偷聯外上網 開了那些port 遊戲佔了多少CPU GPU RAM
連電腦硬體不穩的中斷 都可以找得出來 很好用 推薦給大家
以Bastion為例
Process Explorer 的 Low Pane View 改設為 Handle
把可疑程式的process都找一下
或用Find Handle 望遠鏡的按鈕搜尋一下 看有無其他程式在中斷
https://i.imgur.com/5y0LFft.png
推
02/15 18:51,
6年前
, 2F
02/15 18:51, 2F
推
02/15 19:11,
6年前
, 3F
02/15 19:11, 3F
推
02/15 19:29,
6年前
, 4F
02/15 19:29, 4F
→
02/15 19:38,
6年前
, 5F
02/15 19:38, 5F
推
02/15 19:40,
6年前
, 6F
02/15 19:40, 6F
推
02/15 20:11,
6年前
, 7F
02/15 20:11, 7F
推
02/15 22:42,
6年前
, 8F
02/15 22:42, 8F
推
02/15 23:10,
6年前
, 9F
02/15 23:10, 9F
推
02/16 00:29,
6年前
, 10F
02/16 00:29, 10F
推
02/16 00:44,
6年前
, 11F
02/16 00:44, 11F
推
02/16 11:48,
6年前
, 12F
02/16 11:48, 12F
推
02/17 12:54,
6年前
, 13F
02/17 12:54, 13F
※ 編輯: vicmeng (36.231.32.252), 07/29/2018 18:45:57
Steam 近期熱門文章
12
21
PTT遊戲區 即時熱門文章
3
10
22
34