更改.bat文件中的代码页(Win7 vs Win Vista)

Pee*_*Haa 5 windows command-line batch-file

尝试更改.bat文件中的代码页时,我遇到了一个奇怪的问题.

当我在Windows 7中执行以下.bat文件时,它执行正常.

代码页被更改并program.exe执行.

批处理文件:

chcp 65001

"D:\program.exe" /opt ÄiÜ

pause
Run Code Online (Sandbox Code Playgroud)

但是,当我从Windows Vista启动.bat文件时,代码页会被更改,然后退出批处理文件.

所以program.exe永远不会被执行.
但是,当我从命令行手动运行这两个命令时,它确实有效.

知道如何从.bat文件在Windows Vista下运行吗?

Pee*_*Haa 0

我找到了一个适合我的(非常肮脏的)解决方案。

从表面上看,我想做的事情是不可能的。

我为使其发挥作用所做的工作如下:

  • 我没有尝试创建批处理文件,而是创建了一个 .txt 文件(与批处理文件具有相同的内容)。
  • 我编写了一个非常简单的 C# 程序,它读取 .txt 文件并执行内容。

正如我所说,它很脏,但对我有用。

如果这里添加其他答案,我也会尝试这些。