使用 C++ 执行 CMD 命令
Executing CMD commands using C++
我正在尝试使用此命令让我的电脑休眠
system("C:\Windows\System32\psshutdown -d -t 0");
如果我使用 cmd 它工作正常,但是当我 运行 在 cpp 中使用它时,我得到了这个
'C:\Windows\System32\psshutdown' is not recognized as an internal or external command, operable program or batch file.
WOW64 上的 32 位应用程序 运行 将放在 file system redirection 下。因此,如果您的应用程序是 32 位应用程序,调用 system("C:\Windows\System32\psshutdown -d -t 0");
将在 C:\Windows\SysWOW64
中查找 psshutdown.exe
并失败。您有一些解决方案:
- 改用 Sysnative 访问真正的 System32 文件夹:
system(R"(C:\Windows\Sysnative\psshutdown -d -t 0)");
- Turn off file system redirection 显式(一般应避免)
- 或者最好将您的应用程序重新编译为 64 位应用程序
我正在尝试使用此命令让我的电脑休眠
system("C:\Windows\System32\psshutdown -d -t 0");
如果我使用 cmd 它工作正常,但是当我 运行 在 cpp 中使用它时,我得到了这个
'C:\Windows\System32\psshutdown' is not recognized as an internal or external command, operable program or batch file.
WOW64 上的 32 位应用程序 运行 将放在 file system redirection 下。因此,如果您的应用程序是 32 位应用程序,调用 system("C:\Windows\System32\psshutdown -d -t 0");
将在 C:\Windows\SysWOW64
中查找 psshutdown.exe
并失败。您有一些解决方案:
- 改用 Sysnative 访问真正的 System32 文件夹:
system(R"(C:\Windows\Sysnative\psshutdown -d -t 0)");
- Turn off file system redirection 显式(一般应避免)
- 或者最好将您的应用程序重新编译为 64 位应用程序