中国DOS联盟论坛

中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --
联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum
游客 | 登录 | 注册 | 会员 | 搜索 | 中国DOS联盟
中国DOS联盟论坛
现在时间是 2026-08-04 05:41
48,038 主题排行 / 350,123 发帖 / 今日 0 篇 / 48,251 会员排行
DOS批处理 & 脚本技术(批处理室) » 系统自带CHM反译功能!
可打印版本  828 / 5
第1楼 peterdocter 发表于 2007-04-19 02:35
中级用户 发帖 95 积分 379
系统自带CHM反译功能!
@echo off
title "系统自带CHM反译功能!"
echo "注意chm文件中不能存在空格!"
echo "脚本编写:PeterDocter"
echo "2007-04-18"
path %windir%;%windir%\system32
echo Decompinling...
for /f "tokens=*" %%I in ("%1") do (
rem 短小Chm文件
set Chm=%%~nxsI
rem 创建完整目录
set ChmDir=%%~nI
rem 完整路径
set ChmPath=%%~dpI
)
rem 切换到目标路径
cd /d %ChmPath%
if not exist "%chmDir%" md "%chmDir%"
rem HH 反译参数
HH.EXE -decompile %chmDir% %Chm%
echo All files in the %chmDir%!
pause
exit
想加上右击鼠标功能可惜不知道如何做?还有chm文件存在空格时就比较麻烦!看一下哪位可以优化一个代码?

[ Last edited by peterdocter on 2007-4-19 at 04:38 AM ]
第2楼 huzixuan 发表于 2007-04-19 02:40
高级用户 发帖 219 积分 537 来自 芜湖

详请看 for /?
第3楼 peterdocter 发表于 2007-04-19 03:48
中级用户 发帖 95 积分 379
多谢!我已经解决!同时送上一个不用其它工具直接反译chm!
@echo off
path %windir%;%windir%\system32
echo Decompinling...
for /f "tokens=*" %%I in ("%1") do (
rem 短小Chm文件
set Chm=%%~nxsI
rem 创建完整目录
set ChmDir=%%~nI
rem 反译短小目录
set ChmDe=%%~nsI
rem 完整路径
set ChmPath=%%~dpI
)
rem 切换到目标路径
cd /d %ChmPath%
if not exist "%chmDir%" md "%chmDir%"
rem HH 反译参数
HH.EXE -decompile %ChmDe% %Chm%
echo All files in the %chmDir%!
pause
exit
很奇怪发现很多命令都要用短小路径才行!
想把它放在右击鼠标功能,不知道如何做?有相关注册表信息吗?
第4楼 estar 发表于 2007-04-19 04:24
中级用户 发帖 103 积分 346
貌似LS的代码写的麻烦了点~~
第5楼 peterdocter 发表于 2007-04-19 04:27
中级用户 发帖 95 积分 379
还有一点点问题就是如果chm文件中不存在空格就会多生成一个目录出来的!
set ChmDir=%%~nI
set Repace=%ChmDir:空格=为空%
如何写以上代码?
第6楼 zh159 发表于 2007-04-19 05:24
金牌会员 发帖 1,467 积分 3,687
只对 chm 文件右键才出现“反译 CHM”项,不用另外再编bat文件


[ Last edited by zh159 on 2007-4-18 at 04:28 PM ]
[ 联系联盟系统管理团队 - 中国DOS联盟 - 标准版 ]
Sponsored by ifanr Inc | © 2001–2023