打游戲找不著存檔文件引發(fā)的糾結(jié)
眾所周知unity游戲本地存檔位置一般在
游戲安裝目錄\游戲名_Data
C:\Users\用戶名\AppData\Local\公司名\游戲名
C:\Users\用戶名\AppData\LocalLow\公司名\游戲名
C:\Users\用戶名\AppData\Roaming\公司名\游戲名
但是本宅最近玩的一款unity游戲貌似做了特殊處理猪半,翻遍了以上目錄死活沒(méi)找到存檔位置。
呵呵漾月,有意思了遇八。
你存檔要讀寫(xiě)文件吧,讀寫(xiě)文件要使用句柄吧丽啡,我查詢游戲進(jìn)程的句柄不就能找到你把存檔藏在哪了么?
But, unfortunately, 通過(guò)查看句柄我并沒(méi)有看到存檔文件的影子硬猫。
當(dāng)時(shí)推測(cè)可能是寫(xiě)入文件后馬上關(guān)閉句柄补箍,這種情況通過(guò)查看句柄不一定捕捉得到。
那還有什么辦法呢啸蜜?
對(duì)了坑雅,讀寫(xiě)文件肯定要通過(guò)系統(tǒng)調(diào)用,我做個(gè)strace不就行了衬横?
嗯裹粤,win平臺(tái)上有沒(méi)有類似的strace工具呢?
Process Monitor
對(duì)比了諸多工具蜂林,我最終選擇了這個(gè)蛹尝,小巧后豫。
工具下載:
鏈接:https://pan.baidu.com/s/1fi34vZ3mSIxLRFmxWtiG3Q
提取碼:zfid
工具主界面:
主界面.png
在捕獲的結(jié)果中可以看到進(jìn)程名、操作類型(圖中是讀文件)突那、文件路徑挫酿,甚至還能看到操作文件的偏移量。
打開(kāi)過(guò)濾對(duì)話框(圖中的藍(lán)綠色漏斗按鈕)可以發(fā)現(xiàn)愕难,能捕獲的系統(tǒng)調(diào)用有很多種早龟,除了文件讀寫(xiě),還有注冊(cè)表讀寫(xiě)猫缭、TCP UDP連接等等葱弟,功能十分強(qiáng)大!
OK猜丹,有了這款神器之后我最終找到了存檔位置芝加。
他并沒(méi)有采用文件存檔,而是把存檔放在注冊(cè)表里射窒,并且注冊(cè)表項(xiàng)沒(méi)有公司藏杖、游戲相關(guān)的名字(老兄你至于么)...
通過(guò)修改存檔實(shí)現(xiàn)了我的需求,問(wèn)題解決脉顿。