运行CMD命令并将结果获取到字符串变量
Running cmd commands and getting results to a string variable
如何运行cmd命令并将输出输入到字符串变量?示例:
string result = ExecuteFunction("ipconfig");
现在"结果"包含:
Windows IP Configuration
Ethernet adapter Local Area Connection:
Connection-specific DNS Suffix . :
......
这种笨拙的情况正在发生,而没有显示任何CMD屏幕,全部来自程序。Windows平台当然。
您可以构建管道:
在Linux上:
#include <cstdio>
#include <iostream>
#include <vector>
int main() {
FILE* fp = popen("ifconfig", "r");
if(fp) {
std::vector<char> buffer(4096);
std::size_t n = fread(buffer.data(), 1, buffer.size(), fp);
if(n && n < buffer.size()) {
buffer.data()[n] = 0;
std::cout << buffer.data() << 'n';
}
pclose(fp);
}
}
对于Windows,您可以使用'_popen',然后将'ifconfig'更改为'ipconfig'
此问题的标准解决方案,因为时间远古是使用命令行重定向将标准输出发送到文本文件,然后将文件读取到字符串中。
您没有提供足够的上下文来响应代码。在C/C 中,您可以使用_popen()。在.net中,此答案可能会有所帮助。重定向控制台输出到单独的程序中的文本框
相关文章:
- 获取字符串的长度并将其分配给数组
- 调用CreateProcess()并获取字符串的返回值
- 你如何从 Boost Spirit X3 词法解析器中获取字符串?
- 使用 ReadProcessMemory 获取字符串值的访问冲突
- 如何从输入中获取字符串向量?
- 如何获取字符串输入n次?
- property_tree获取字符串形式的数组值
- 使用 ctypes 和 wchar_t 时如何从 C++ 获取字符串到 python?
- 获取字符串大小的各种方法之间的比较
- 方法获取字符串
- 在getline()之后获取字符串
- 为什么我的拆卸C 代码使用指令指针和偏移来获取字符串文字
- 无法使用 Poco 获取字符串的路径
- 如何在qtablewidget中获取字符串的行号
- 如何获取字符串和字节进行比较
- 恒定字符阵列的获取字符串长度函数(strlen)不是恒定表达式
- 我需要创建一个函数来获取字符串中的这些数字
- 如何从地址获取字符串?
- 为什么即使尚未初始化,获取字符串[0]也是有效的?
- 获取C++字符串的位