Board logo

标题: [求助]dos下pq解压执行问题 [打印本页]

作者: yjd     时间: 2008-12-31 11:24    标题: [求助]dos下pq解压执行问题

环境DOS
soft目录有pq.zip和pq.bat
pq.bat批处理为
@echo off
quit >nul
if %ramdrive%#==# goto _cer
tw /q
pkzip -O A:\soft\pq.zip %RAMDRIVE%\ >NUL
call PQMAGIC.EXE
@goto end

:_cer
echo Error: Not found Ramdrive,Procedures not running!

:end
dos下执行pq不能用,查了下%RAMDRIVE%目录根本没解压出来。
但是手动按批处理那样一条条执行又可以。测试是在虚拟机6.5绿色版。
见鬼了反复测试了NNNNNNNN遍。ISO大小写也测试了。-_-!!到底哪里出了问题?
作者: DOSforever     时间: 2008-12-31 21:53
quit 干什么?你用的是什么命令解释器?
pkzip 是让你解压的吗?
PM 能在中文环境下显示汉字?
执行 PQMAGIC.EXE 需要 call 吗?
"Not found Ramdrive,Procedures not running!" 总觉得这句有点像 Chinese English ,不过我的英语也不怎么样,不敢肯定对不对。
作者: Climbing     时间: 2008-12-31 22:55
@ DOSforever

1、很明显,quit应该也是退出某个汉字系统的,而tw /q也是用来退出天汇汉字系统。

2、pkzip是否能解压我不知道,不过,我看到楼主说,同样的命令行,手工输入是正常的。

3、call一个exe文件并无不可,我印象中见某个大师这么用过(似乎是Bart)。

4、long time no see也是中国式英语,不过现在老外也经常用,这个似乎并不是问题。

看完楼主的帖子的第一时间,我就判断出,除非我坐在楼主的机器前,否则很难找到问题的原因。所以,一直不知道该如何回复。如果有可能的话,楼主是否可以将相应的启动盘上传上来,供大家研究一下?
作者: yjd     时间: 2008-12-31 23:07
多谢2位。

1.这个是maxdos工具盘里的默认加载完出中文菜单加载了tw。
但是他为什么不用tw /q 。。。-_-!!!

2.pkzip就是运行pq.bat不能解压到虚拟盘。但是我手工运行可以。本来以为参数
是不是错了0或者O。结果尝试都没错。-O是覆盖。0没有这个参数的。

3.pq是繁体中文8.05 server版。可以显示中文。

4.call原来就这样写的。我就没改了。但是我测试在pq.bat里用绝对路径不行。
但是手工输入回车可以。郁闷-_-!!!

5.英文是本来里面有的。O(∩_∩)O~我都看不懂。应该是判断内存盘不存在就输那个显示就对了。

我马上把其他的精简掉传上来。

还有我测试的在我的虚拟机上面。是精简版6.5的。

虚拟机配置的是2个CPU。

实机是amd 4000+
作者: DOSforever     时间: 2008-12-31 23:30    标题: Re: 小磕

如果是要退出汉字系统为什么要两次退出?所以我怀疑他用的是什么命令解释器。

PKWARE 中压缩和解压是两个程序,PKZIP 只能压缩,解压只能是 PKUNZIP ,同样的 -o 选项在这两个程序中的意义是不一样的。他说明了是要解压,所以我奇怪他所说的正常是怎么个正常,可能是他自以为是正常的。

可以 call 一个 exe 文件,但我一直不明白为什么要这样用,在此顺便请教一下。

关于 Chinese English 的问题当然和解决这个实质问题无关,老外有时候也跟着我们的洋泾浜英语瞎喊喊,我提到这个只是想学习一下。

还有一个问题要问你,你回复别人的 @ 用法是怎么回事?好像你前不久才发明了这一用法,呵呵呵呵。
作者: yjd     时间: 2008-12-31 23:38
下载地址

http://www.namipan.com/d/301e0bb ... f9b6a8eee0a00d84200

去掉了里面的网卡驱动文件和3个GHOST版本。现在4.18M

对了刚才是把原来的12M改小了。请使用第三菜单map方式加载。第二个CHS是不对的。

[ Last edited by yjd on 2008-12-31 at 23:41 ]
作者: Climbing     时间: 2009-1-1 00:27    标题: @ DOSforever

关于@后面跟上ID的用法,这个我是从国外的论坛里乭来的,大概就是Reply XXX的意思,表明是在回复谁的问题,这个用法我早就知道,只是不是经常使用,偶尔会用一下子。

关于EXE文件为什么要用call,这个我也不了解,不过既然DOS支持,而且,似乎也没有什么副作用,用一下也无妨,何况,有些人习惯了调用外部命令要用call,可能就顺手写下去了。

PKWare我没有用过,或者它用的是新版,pkzip本身就支持解压缩,或者用的是第三方软件,只不过叫成了pkzip。
作者: DOSforever     时间: 2009-1-1 00:43
我觉得这样用 @ 没道理,还是 Re: 的用法对。外国人的用法不一定全对,就像我们中国人自己也经常写错别字一样,自己也“发明”些乱七八糟的词语。

我在这里说的 PKWARE 是对 DOS 下 PKWARE (我这么说听起来像是递归) 的 ZIP 压缩软件的统称,包括 PKZIP.EXE 、PKUNZIP.EXE 、ZIP2EXE.EXE 、PKZIPFIX.EXE 等几个主要的执行文件,因为 PKWARE 不像别的压缩软件所有功能都在一个可知行文件中,我们通常所说的 PKZIP 其实都包括了这一大类,但由于这个问题中涉及到解压,所以如果只说 PKZIP 的话会和 PKZIP.EXE 混在一起搞不清。
作者: yjd     时间: 2009-1-1 00:59
2位大侠。有没有帮我看下那个文件。问题出在哪呢?-_-!!!
作者: Climbing     时间: 2009-1-1 01:01    标题: Re: Df(DOSforever的简称,原名太长,老记不住)

嗯,关于@的用法,见仁见智吧,既然你不喜欢,我就改一下。

我下载了楼主提供的iso文件,启动到DOS后,果然如我所推测,那个所谓的pkzip,实际上真名是PKUNZIPjr(不知道jr代表什么),总之,它确实是pkunzip的。

楼主遇到的问题我觉得出在pkzip前面的那些quit呀或者tw/q之类的语句上,我在dos下手工执行quit和tw /q后,再将批处理中的相应语句注释掉,再执行pq.bat就可以正常解压并启动PQ了。

MaxDOS搞得挺个性,进去它的DOS工具箱后,默认界面是全中文的(连命令也是中文的),应该是启动了一个中文的shell,所以那个quit就是退出这个shell的,而tw /q则是退出汉字系统的,你在当前shell下执行的批处理中运行退出当前shell的命令,当然就导致这个批处理无法继续了。楼主可以试试将pq.bat改成下面的样子:
@echo off
if %ramdrive%#==# goto _cer
pkzip -o A:\soft\pq.zip %RAMDRIVE%\ >NUL
call PQMAGIC.EXE
goto end

:_cer
echo Error: Not found Ramdrive,Procedures not running!

:end
不过,我仍然不能保证成功。

另外,楼主提供的/grub/boot/yjd.gz实际上不是gzip文件,只是一个img文件,也就是说,它应该是yjd.img。
作者: yjd     时间: 2009-1-1 01:10
谢谢。我马上测试下。我也郁闷那个quit干嘛的。
看了autoexec.bat和config.sys好像也没加什么shell
他界面是用wbat做的。汉字支持加载了tw。这个工具箱用习惯了。
有时候会用到网络克隆自带的网卡驱动包很全。主要用户群都是网吧网管
pkzip如你所说是改名的。昨天有释放出来看参数对不对他显示是那样。
yjd.gz是我直接改名的。不然还要重写下grldr的内置菜单。所以就。。。

最开始的中文菜单是论坛上有人写的如下

[ Last edited by yjd on 2009-1-1 at 01:21 ]
附件 1: 未命名.jpg (2009-1-1 01:21, 8.94 K)



作者: DOSforever     时间: 2009-1-1 01:23    标题: Re: 小磕

我这原名太长?你能上国外论坛会记不住?呵呵,偷懒才是真吧?本来也不需要记嘛,只要复制粘贴就行了。

jr 是 junior 的意思,就是一个比较“小”的 PKUNZIP ,我看它的目的就是提供给像做这样启动盘的人给别人一个小的解压 ZIP 的用处。
作者: yjd     时间: 2009-1-1 01:30
@echo off
quit >nul   //去掉
if %ramdrive%#==# goto _cer
tw /q       //去掉
mouse    //去掉
pkzip -O A:\soft\pq.zip %RAMDRIVE%\ >NUL
call PQMAGIC.EXE
@goto end

:_cer
echo Error: Not found Ramdrive,Procedures not running!

:end
刚才测试了下必须去掉上面3个执行pq.bat才有效果。-_-!!!

继续测试。。。
不能加载鼠标不能退出tw环境。这可不行。-_-!!!

真郁闷。为什么
手工执行
quit 回车
tw /q回车
mouse回车
pkzip a:\soft\pq.zip %raddrive%\ 回车
call pqmagic.exe

pqmagic.exe都可以。
但是放在批处理pq.bat一起执行还是不行。。。。&×&……%&

[ Last edited by yjd on 2009-1-1 at 01:39 ]
作者: Climbing     时间: 2009-1-1 02:55
把中国话说明白喽

原因我上面已经解释过了,不需要再多说了吧?

问题应该就出在quit命令上。
作者: yjd     时间: 2009-1-4 15:20
问题解决了。多谢!
问题出在前面的tw /q 和和>nul

如用用tw /q他执行了另外一个tw.bat
最后直接用tway.exe /q

@echo off
quit
if %ramdrive%#==# goto _cer
cd x: >nul
tway.exe /q
a:\soft\ctmouse.exe >nul
pkzip -o a:\soft\pq.zip x:\ >nul
pqmagic.exe
goto :end

:_cer
echo Error: Not found Ramdrive,Procedures not running!

:end
作者: VeDe     时间: 2009-2-12 15:11
MaxDOS 中的quit >nul 为退出天汇汉字系统命令,无须再使用tway.exe /q 命令了,请看Twx.zip 中的quit.com 文件。。。
作者: yjd     时间: 2009-2-13 22:35


  Quote:
Originally posted by VeDe at 2009-2-12 03:11 PM:
MaxDOS 中的quit >nul 为退出天汇汉字系统命令,无须再使用tway.exe /q 命令了,请看Twx.zip 中的quit.com 文件。。。

多谢指教。。