PE PDF注册表(已成)
本帖最后由 gbzx 于 2022-9-27 13:49 编辑PE里添加SumatraPDF,放在PETOOLS里,它用一个注册表关联文件如下
Windows Registry Editor Version 5.00
@="PDF Document"
@="X:\\PETOOLS\\PhotoTools\\SumatraPDF.exe,1"
@="\"X:\\PETOOLS\\PhotoTools\\SumatraPDF.exe\" \"%1\""
原文件是内置,盘符X是固定的。我要外置PETOOLS,盘符就是变化的,且PETOOLS还不一定放在U盘,这个盘符要如何处理?能不能把注册表转化成INI配置文件,在配置文件里,先获取PETOOLS盘符,再用reg添加注册表,请指教。
在网友Bluebells指导下,把上面注册表文件改成ini配置文件,放在任何位置都可以了
//获取PETOOLS.ini所在盘符并赋值Cdir
FORX !\PETOOLS\PETOOLS.ini,Myini,1,MSTR Cdir=1,2,%Myini%
//添加注册表关联文件
REGI $HKLM\SOFTWARE\Classes\.pdf\=PDF Document
REGI $HKLM\SOFTWARE\Classes\PDF Document\
REGI $HKLM\SOFTWARE\Classes\PDF Document\DefaultIcon\=%Cdir%\PETOOLS\PhotoTools\SumatraPDF.exe,1
REGI $HKLM\SOFTWARE\Classes\PDF Document\shell\
REGI $HKLM\SOFTWARE\Classes\PDF Document\shell\open\
REGI $HKLM\SOFTWARE\Classes\PDF Document\shell\open\command\="%Cdir%\PETOOLS\PhotoTools\SumatraPDF.exe" "%%1"
pecmd.INI 经过试验,已成功获取盘符,代码如下:
FORX !\PETOOLS\PETOOLS.ini,Myini,1,MSTR dir=1,1,%Myini%,变量dir返回值就是盘符。
PE日志如下
1 {ENTER:D:\setdpi.ini}
1 <0> :操作成功完成。
2 {FORX !\PETOOLS\PETOOLS.ini,Myini,1,MSTR dir=1,1,%Myini%}
2 <0> :操作成功完成。
2 <0> :操作成功完成。
3 <0> :操作成功完成。
现在谁能帮我把上面的注册表改成reg添加的形式,谢啦。 不要用注册表文件, 建议使用脚本文件
SumatraPDF 的 PDF 文件关联的批处理脚本代码:
@echo off
reg add "HKLM\SOFTWARE\Classes\.pdf" /ve /d "PDF Document" /f
reg add "HKLM\SOFTWARE\Classes\PDF Document" /ve /d "PDF Document" /f
reg add "HKLM\SOFTWARE\Classes\PDF Document\DefaultIcon" /ve /d "%~dp0SumatraPDF.exe,1" /f
reg add "HKLM\SOFTWARE\Classes\PDF Document\shell\open" /ve /d "使用 SumatraPDF 打开" /f
reg add "HKLM\SOFTWARE\Classes\PDF Document\shell\open\command" /ve /d "\"%~dp0.exe\" \"%%1\"" /f
将上述代码保存到 SumatraPDF 主程序所在目录, 并命名为 Assoc.bat 或 Assoc.cmd, 然后双击执行或使用其它程序调用即可
SumatraPDF 的 PDF 文件关联的 PECMD 脚本代码:
REGI $HKLM\SOFTWARE\Classes\.pdf\\=PDF Document
REGI $HKLM\SOFTWARE\Classes\PDF Document\\=PDF Document
REGI $HKLM\SOFTWARE\Classes\PDF Document\DefaultIcon\\=%Curdir%\SumatraPDF.exe,1
REGI $HKLM\SOFTWARE\Classes\PDF Document\shell\open\\=使用 SumatraPDF 打开
REGI $HKLM\SOFTWARE\Classes\PDF Document\shell\open\command\\="%Curdir%\SumatraPDF.exe" "%%1"将上述代码保存到 SumatraPDF 主程序所在目录, 并命名为 Assoc.ini 或 Assoc.wcs (其实随便扩展名也可以), 然后用 PECMD 的 LOAD 命令加载即可
学习了 谢谢分享 跟着高人学习了
谢谢分享
谢谢分享,学习了 谢谢分享 你好,如果是想让你音频视频关联potplayer可以类似地怎么操作吗? czp0706 发表于 2023-3-27 21:50
你好,如果是想让你音频视频关联potplayer可以类似地怎么操作吗?
打多了个“你”字了 Bluebells 发表于 2022-9-26 22:39
不要用注册表文件, 建议使用脚本文件
SumatraPDF 的 PDF 文件关联的批处理脚本代码:
将上述代码保存到 Su ...
进来学习 yyz2191958 发表于 2023-3-28 08:14
进来学习
各有优缺点,你的方案虽不需改PE,但还要添加文件 感谢分享
感谢分享 谢谢分享
页:
[1]