论坛首页
论坛首页 开发者论坛 PortableApps开发 是不是PAL不支持在注册表中写入中文项啊?

是不是PAL不支持在注册表中写入中文项啊?

讨论关于便携软件开发的技术与问题,包括PAL、NSIS、VMware ThinApp及其他。
pbphoo 红心可鉴
红心可鉴

帖子: 53
真是不好意思,真么长时间了,还是在折腾百度阅读器,碰到两个问题,把我难住了。

先把BaiduReaderLitePortable.ini贴出来吧:
代码: 全选
[Launch]
ProgramExecutable=BaiduReaderLite\BaiduReaderLite.exe
DirectoryMoveOK=yes
CleanTemp=true

[Activate]
Registry=true

[RegistryKeys]
pdf=HKLM\SOFTWARE\Classes\.pdf

[RegistryValueWrite]
HKLM\SOFTWARE\Classes\Applications\BaiduReaderLite.exe\shell\open\command\=REG_SZ:%PAL:AppDir%\BaiduReaderLite\BaiduReaderLite.exe "%1"
HKLM\SOFTWARE\Classes\BaiduReaderLite.pdf\DefaultIcon\=REG_SZ:%PAL:AppDir%\BaiduReaderLite\images\PDF.ico,0
HKLM\SOFTWARE\Classes\BaiduReaderLite.pdf\shell\open\command\=REG_SZ:%PAL:AppDir%\BaiduReaderLite\BaiduReaderLite.exe "%1"
HKLM\SOFTWARE\Classes\BaiduReaderLite.pdf\shell\用百度阅读器精简版打开\command\=REG_SZ:%PAL:AppDir%\BaiduReaderLite\BaiduReaderLite.exe "%1"

[DirectoriesMove]
-=%allusersappdata%\Baidu\AutoUpdate
-=%allusersappdata%\Baidu\BaiduReaderLite\AutoUpdate
appdata\BaiduReader=%appdata%\Baidu\BaiduReader
appdata\BaiduReaderLite=%appdata%\Baidu\BaiduReaderLite

[DirectoriesCleanupIfEmpty]
1=%allusersappdata%\Baidu



下来说说我碰到的问题:
1.
代码: 全选
HKLM\SOFTWARE\Classes\BaiduReaderLite.pdf\shell\用百度阅读器精简版打开\command\=REG_SZ:%PAL:AppDir%\BaiduReaderLite\BaiduReaderLite.exe "%1"
这一句写入注册表失败,其他的都好,就他不行,比如和他类似的
代码: 全选
HKLM\SOFTWARE\Classes\BaiduReaderLite.pdf\shell\open\command\=REG_SZ:%PAL:AppDir%\BaiduReaderLite\BaiduReaderLite.exe "%1"
都可以成功写入注册表
2.当关闭便携应用时,写入的注册表键值无法清除,也就是说还残留有垃圾,看图吧
图片

另外我把BaiduReaderLitePortable上传到百度网盘了,这是地址:
http://pan.baidu.com/share/link?shareid=642533857&uk=2218246939

jooseng 革命同志
革命同志

帖子: 3471
PAL 不懂中文。把它改成英文就可以了。

pbphoo 红心可鉴
红心可鉴

帖子: 53
谢谢jooseng的回答,最近坛子好像就你一个人经常回答问题,坛子好冷清,但是第二个问题还是想不通,[RegistryValueWrite]
想写入注册表的键值不是应该在退出后被清理掉吗,为什么在这里没有没清理掉,其他时候不是这样的啊

jooseng 革命同志
革命同志

帖子: 3471
pbphoo 写道:
谢谢jooseng的回答,最近坛子好像就你一个人经常回答问题,坛子好冷清,但是第二个问题还是想不通,[RegistryValueWrite]
想写入注册表的键值不是应该在退出后被清理掉吗,为什么在这里没有没清理掉,其他时候不是这样的啊

你必须加这个:

[RegistryKeys]
xxx=HKLM\SOFTWARE\Classes\Applications\BaiduReaderLite.exe
yyy=HKLM\SOFTWARE\Classes\BaiduReaderLite.pdf



[RegistryKeys]
-=HKLM\SOFTWARE\Classes\Applications\BaiduReaderLite.exe
-=HKLM\SOFTWARE\Classes\BaiduReaderLite.pdf

pbphoo 红心可鉴
红心可鉴

帖子: 53
嗯,好了,谢谢jooseng的回答,解决了,jooseng你是万能的,呵呵


回到 PortableApps开发