CheatMaker 论坛

注册

 

发新话题 回复该主题

取消模擬器大內存套組 [复制链接]

21#

回复 19楼dfzetcc的帖子

這個文件名?
難道你還有visual studio編譯的版本
建議可以的話......
Blader 发表于 2026/6/21 14:21:28
是在官方的GitHub下的啊.
https://github.com/PCSX2/pcsx2/releases/download/v2.6.3/pcsx2-v2.6.3-windows-x64-Qt.7z
rebase_and_strip是要用你编译的pcsx2吗?
我来人间一趟 奔着自由与光
TOP
22#

回复 21楼dfzetcc的帖子

官方的那更不該了
除非exe有數字簽名
TOP
23#

回复 21楼dfzetcc的帖子

官方的那更不該了
除非exe有數字簽名
Blader 发表于 2026/6/21 19:08:11
不太清楚处理后模拟器的.reloc 区段为什么还在.而且pcsx2-qt正式版和Nightly版的exe都是没有数字签名的
我来人间一趟 奔着自由与光
TOP
24#

回复 21楼dfzetcc的帖子

官方的那更不該了
除非exe有數字簽名
Blader 发表于 2026/6/21 19:08:11
我问了下AI,
AI:
原脚本 @ReBase -b 0x400000 %1 && llvm-strip -R .reloc %1 存在几个致命的批处理编写缺陷,导致它在大多数普通用户的电脑上根本无法正常执行。
具体原因如下:
1. 缺少路径指引(%~dp0的缺失)
在 Windows 批处理中,直接写 ReBase 和 llvm-strip,系统会去系统的环境变量(PATH)和当前工作目录里找。
当你把文件“拖拽”到批处理上运行时,Windows 默认的“当前工作目录”通常会变成 C:\Windows\System32 或者是你拖拽文件的源目录,而不是批处理文件所在的目录。
如果这些 .exe 工具没有加在系统的环境变量里,又没有用 %~dp0 强制指明路径,系统就会报“不是内部或外部命令”。
2. && 连接符的“连坐”机制
原脚本中间用了 &&(逻辑与)来连接两条命令。&& 的意思是:只有前一条命令成功执行,才会执行后一条命令。
ReBase 是 Visual Studio / Windows SDK 自带的工具。很多普通用户的电脑上根本没有装 Visual Studio,所以第一步 ReBase 就会因为找不到工具而失败。
一旦 ReBase 失败(报错退出),&& 之后的 llvm-strip -R .reloc 就根本不会被执行。
这就完美解释了你之前遇到的问题:你以为脚本运行了,但因为第一步找不到 ReBase 失败了,第二步 llvm-strip 压根没跑,所以 .reloc 段一直都在,模拟器一点变化都没有。

Blader 很可能是在自己安装了完整 Visual Studio 或 LLVM 工具链的开发环境下测试的,这些工具的路径已经加到了系统的环境变量中。所以他直接写命令名就能跑通,但他忽略了把这些 .exe 放在压缩包里发给普通用户时,普通用户电脑里并没有这些环境变量。
------------------------------------------------
我移除ReBase 部分后的批处理(pcsx2-qt.exe的体积从14.0MB→13.9MB):

@echo off
"%~dp0llvm-strip.exe" -R .reloc %1
pause
我来人间一趟 奔着自由与光
TOP
25#

針對ai的反駁,%~dp0只在需要管理權限時才使用
我的腳本一般使用並無不妥,甚至這兩個小程式根本不用管理權限
我才說將模擬器拖拉到批處理文件上即可使用
我腳本裡的問題只是沒給%1上雙引號
這很可能因爲路徑原因發生問題
我在未安裝SDK或LLVM的電腦上早就試過可以用
基本猜想是路徑中有空白或者中文引起的失誤
以上是我針對ai敘述的反駁,沒有針對任何人
TOP
26#

回复 21楼dfzetcc的帖子

自动更新完的QT  完全没问题

TOP
27#

針對ai的反駁,%~dp0只在需要管理權限時才使用
我的腳本一般使用並無不妥,甚至這兩個小程式根本不用管理權限
我才說將模擬器拖拉到批處理文件上即可使用
我腳本裡的問題只是沒給%1上雙引號
這很可能因爲路徑原因發生......
Blader 发表于 2026/6/21 23:25:48
我的路径既没有空格也没有中文,我也把%1 → "%1"了,但还是没有效果.
我询问AI,
"跨目录拖拽时,第一步 ReBase 工具在处理这个跨目录的绝对路径时,很可能因为微软 ReBase 工具自身的限制(例如对长路径敏感、临时文件生成失败、或某种路径解析问题),导致执行报错并退出。 因为 ReBase 失败了,&& 的“连坐机制”被触发,第二步的 llvm-strip 被系统直接跳过,根本没有执行。"正好说明我将pcsx2-qt.exe文件复制到批处理目录内拖拽,或者直接去掉 ReBase 只跑 llvm-strip,为什么能成功
我来人间一趟 奔着自由与光
TOP
28#

回复 27楼dfzetcc的帖子

雖然只有strip成功並不能取消大內存
不過我暫時也束手無策
因爲這個rebase確實是有點bug的
會偶發性的報錯,原因不明
TOP
29#

感谢分享,试了一下,有用。
TOP
发新话题 回复该主题