如何编写使用 powershell 而不是 cmd 的控制台应用程序
我不知道这是否是一个编程问题,或者是通过我的操作系统配置的问题。但是我该如何获取它以便我的控制台应用程序使用 Powershell 而不是 cmd?我知道我可以打开 Powershell 并从那里运行程序,但即便如此,诸如 system("Get-Childitem")
之类的调用也会失败。
顺便说一下,我正在使用 Visual C++,如果这很重要的话。但如果它是编译器特定的事情,那么我还想知道如何使用 GCC 来做到这一点。
I have no idea if this is even a programming question, or something that is configured through my OS. But how would I get it so my console application uses Powershell instead of cmd? I know I can open Powershell and run the program from there, but even then, calls such as system("Get-Childitem")
fail.
I'm using Visual C++ by the way, if that matters. But if it's a compiler specific thing, then I would also like to know how to do it with GCC.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
查看环境变量 COMSPEC,它在 Windows 和之前的 DOS 1.1 上控制着使用哪个 shell 来启动需要 shell 的程序。
您可以通过调用
setenv
C 运行时调用;Look into the environment variable COMSPEC, which on Windows, and DOS 1.1 before that, controls which shell is utilized for launching programs that need a shell.
You can do the same within your C++ program by calling the
setenv
C runtime call;