标题: 问题求助:如何实现下面的功能[已经解决]
[打印本页]
作者: abshuhuhuhu
时间: 2007-6-15 16:07
标题: 问题求助:如何实现下面的功能[已经解决]
自己做了一个a.bat
@echo off
set t=%1
Exe -input %t% -output %t%.txt
现在想做到就是在xp里,把文件往a.bat头上一扔(已经在资源管理器里和a.bat同一目录)就可以自动执行,好像不行,不知道为什么。
不是在xp里面把东西扔到bat头上,就自己认成%1的参数吗?
有个人回答说是因为往bat头上砸,会认成完整路径加文件名,又改成如下内容,(只有这一行)
for %%~nxI in (%1) do Midp2Exe -jar %I% -out %I%.exe
还是不行。
帮我改改吧!!
─────────────────── 版务记录 ────────────────────
执行:lxmxn
标题:问题求助:如何实现下面的功能
说明:因标题表述过于模糊,不便于论坛的搜索和管理,请在三日内修改标题,否则扣除2点积分
参考:http://www.cn-dos.net/forum/viewthread.php?tid=7326&fpage=1
http://community.csdn.net/IndexPage/SmartQuestion.aspx
─────────────────── 版务记录 ────────────────────
特别感谢8楼的!!!
同时感谢所有帮助我的.
[
Last edited by abshuhuhuhu on 2007-6-16 at 05:32 PM ]
作者: wudixin96
时间: 2007-6-15 16:17
@echo off
Exe -input "%1" -output "%1".txt
这样呢?
作者: abshuhuhuhu
时间: 2007-6-15 17:52
命令行下执行bat是可以的。可是把文件扔到bat头上就是不行。
搞不懂,想把文件扔到bat头上后把那个参数抓出来,分析一下,不知道怎么分析。
作者: wudixin96
时间: 2007-6-15 18:08
楼主是说,要把拖到P上的文件名显示出来?
@echo off
echo %1
这样?具体不知道楼主的Exe工具功能
作者: dikex
时间: 2007-6-15 18:36
for语句有误
for %%I in (%1) do Midp2Exe -jar %%~nxI -out %%~nxI.exe
作者: abshuhuhuhu
时间: 2007-6-15 22:58
还是没有搞出来。。呜呜。或许在xp里面把文件往bat头上一扔,识别的东西有问题吧,反正也搞不懂什么问题。
把4楼的方法加了个>1.txt想看看参数是什么,结果也没有生成1.txt。
注意我的做法不是在命令行执行a.bat a.jar
是用鼠标选取jar文件放到bat头上。
版主,你扣我积分吧,然后帮我取个贴切的名字。
作者: wudixin96
时间: 2007-6-15 23:10
正确的说法应该是“拖动”文件到批处理上。
不知道楼主为何测试通不过的,偶这测试是没问题的。
楼主想要似乎是一个文件转换功能,对不?
作者: zh159
时间: 2007-6-15 23:36
Midp2Exe是一个将手机java游戏程序转为模拟机在电脑上运行的程序
试了一下,知道是怎么回事了
拖入文件的bat会默认在%USERPROFILE%的目录运行,加入echo %cd%看看就知道了;当然,%USERPROFILE%目录里面没有Midp2Exe.exe,也就无法执行转换命令
改为:
"绝对路径\Midp2Exe.exe" -jar "%~dpnx1" -out "%~dpn1.exe"
或者bat和Midp2Exe.exe在同一目录:
"%~dp0Midp2Exe.exe" -jar "%~dpnx1" -out "%~dpn1.exe"
[
Last edited by zh159 on 2007-6-16 at 09:58 AM ]
作者: abshuhuhuhu
时间: 2007-6-16 17:18
感谢错了,是楼上8楼的才对.呵呵.
楼主说的也对也不对,midp2exe是不需要默认目录的.
1)下载到的midp2exe有个
打包.bat
--
Midp2Exe -jar 沙罗曼蛇EX.jar -out 沙罗曼蛇EX.exe
--
说明里面是要我们去改这个啦.呵呵.我懒得改,所以想求个方便点的办法.
.
感谢8楼,问题解决了.
后来测试了一下这个bat:
--
@echo %1
pause
--
发现似乎是xp对dos的支持问题.
结果:
--
C:\Documents and Settings\Administrator>echo E:\midp2exe\沙罗曼蛇EX.jar
E:\midp2exe\沙罗曼蛇EX.jar
C:\Documents and Settings\Administrator>pause
请按任意键继续. . .
--
可以看到xp显示了两次%1的结果
希望强人来分析分析,
这个是不是就是xp对中文字符的支持不好的问题?
[
Last edited by abshuhuhuhu on 2007-6-16 at 05:35 PM ]
作者: zh159
时间: 2007-6-16 17:26
你开头没加“@echo off”当然会显示两次,第一次是执行命令,第二次才是显示,加上“@echo off”后就不会显示执行命令了
作者: abshuhuhuhu
时间: 2007-6-16 17:33
谢谢楼上的.
呵呵,原来是这样,我还以为是系统问题呢.
感谢!