2

我需要你的帮助,我正在为我的小应用程序构建小型安装批处理文件(我的 app.exe 必须复制到 Windows 版本和体系结构的不同位置)。

我玩过它,但无法解决给定的任务......

我创建了这段代码:(用于测试目的)

If Exist "C:\Users\All Users\ntuser.dat" Goto Win 7
If Exist "C:\Documents and Settings\All Users\ntuser.dat" Goto Win XP

:Win 7

C:\w7\test.txt

:Win XP

C:\wxp\test.txt

但是当执行批处理文件(从windows xp)时,两个作业都完成了(两个文件都打开了)......为什么我不明白......因为我知道它必须只打开win xp部分代码

请问如何修改代码,给我一个例子..

我的使命是:

我希望将我的 app.exe 文件复制到不同 Windows 版本和构建的不同位置(WinXP - X86-X64,Win7 - X86-X64)

如果是 windows 7x64 x86 或 win xp-x86,x64 它只能使用为给定系统设置的代码,而不是其他系统

谢谢你在高级

4

2 回答 2

3

尝试这个:

如果存在 "C:\Users\All Users\ntuser.dat" 转到 Win_7
如果存在 "C:\Documents and Settings\All Users\ntuser.dat" 转到 Win_XP

:Win_7

C:\w7\test.txt
转到:eof

:Win_XP

C:\wxp\test.txt
转到:eof
于 2013-06-27T15:46:41.953 回答
2

当它到达该部分的末尾时,您需要告诉它停止运行,否则它将继续进入下一个。(分支标签中的空格也不是一个好主意,尽管它们是允许的。当用户永远看不到它们时,为什么要使用它们?)

If Exist "C:\Users\All Users\ntuser.dat" Goto Win7
If Exist "C:\Documents and Settings\All Users\ntuser.dat" Goto WinXP

:Win7
C:\w7\test.txt
goto :eof

:WinXP
C:\wxp\test.txt
goto :eof

:eof是一个预定义的分支标签,表示end of file. 文档中的更多信息goto

于 2013-06-27T15:47:52.803 回答