我正在尝试编写一个控制Windows命令提示符的C程序。例如,打开命令提示符,进入特定目录(例如:C:/Program Files/...),然后在该文件夹中运行一个exe文件。
这可以使用C编程完成吗?如果可以,如何实现呢?到目前为止,我只知道使用system("cmd.exe")打开命令提示符。如何进一步与命令提示符交互?
谢谢。
这可以使用C编程完成吗?如果可以,如何实现呢?到目前为止,我只知道使用system("cmd.exe")打开命令提示符。如何进一步与命令提示符交互?
谢谢。
system
函数经常被人们所诟病,但是为了回答你的问题,它确实适用于你想要使用的命令。system("notepad.exe my_file.txt");
system("del my_file.txt");
system("pause");
这将在记事本中打开一个名为my_file.txt的文件,删除它并暂停程序。
再次强调,这不是可移植的。它只适用于Windows操作系统。 实际上,我甚至认为它不能保证在所有版本的Windows上都能正常工作。 (请勿引用我说的话。)
@echo off
cd "C:/Program Files/"
nameOfTheProgram.exe
关于这个话题:您可以通过“CreateProcess”启动cmd,并通过窗口消息(“SendMessage”)发送键盘输入。
我认为您应该重新考虑您想要完成任务的方式。命令提示符不是在Windows上执行任务的API基础,它是一种工具,用于在不编写自己的程序的情况下执行任务并获取信息。如果您编写自己的程序,您应该直接使用WinAPI。
要开始,请搜索“winapi [您想要完成的任务]”。在您的示例中,“winapi start executable”,您将找到像“CreateProcess”和“ShellExecute”这样的函数。