开始的时候想写一个基于MFC的Wifi开关控制程序,可是不知道VC中如何调用控制台命令,经过网上的学习,发现其实挺挺简单也挺好用。于是制作了一个简单的基于MFC个人助理小软件,可以点击按钮实现Wifi的开关,网站的进入,相关程序的打开,很方便。

1  VC下调用控制台命令

方法一:system("string");   //  string means the command

方法二:WinExec("string",SW_NORMAL); // string means the command

PS:  system 包含在stdlib头文件中; WinExec包含在WinBase头文件中;

区别: system函数在执行时,不会顺序执行接下来的代码,而会停留在system语句上,直到cmd指令执行完毕;

          WinExec函数在执行时,会顺序执行接下来的代码,不管其cmd指令是否执行完成;(摘自:http://blog.sina.com.cn/s/blog_70a144580100ui83.html)

知道了这个,我们就可以设计一些基于MFC的小软件,实现Wifi的开关以及电脑的定时等相关功能。

2 使用ShellExecute函数调用外部应用程序

ShellExecute函数原型及参数含义如下:
ShellExecute(
HWND hwnd, //父窗口句柄 (如:NULL,Handle等)
LPCSTR lpOperation, //操作类型 (如:"open")*要加英文双引号
LPCSTR lpFile, //要进行操作的文件或路径
LPCSTR lpParameters, //当lpOperation为“explore”时指定要传递的参数,通常设为NULL
LPCSTR lpDirectory, //指定默认目录,通常设为NULL
INT nShowCmd //文件打开的方式,以通常方式还是最大化或最小化显示,一般为SW_SHOWNORMAL
)

常用用法:

用法一:ShellExecute(NULL,"open","calc","NULL","NULL","SW_SHOWNORMAL");          //  打开计算器。

用法二:ShellExecute(NULL,"open","http://www.baidu.com/","NULL","NULL","SW_SHOWNORMAL");  //打开百度

知道了这些应用,我们就可以制作一些常用网址的进入,以及一些系统小工具菜单的制作。

cmd常用命令:

http://wenku.baidu.com/view/cc14e9fdba0d4a7303763a00.html

用了这些基础知识我们就可以运用他们制作各种各样的小软件啦!

VC下如何调用控制台命令以及其他可执行文件的更多相关文章

  1. java调用控制台命令

    String shell = "ping www.baidu.com";//需要执行的命令 BufferedReader br = null;try { Process p = R ...

  2. [Java]在xp系统下java调用wmic命令获取窗口返回信息无反应(阻塞)的解决方案

    背景:本人写了一段java代码,调用cmd命令“wmic ...”来获取系统cpu.mem.handle等资源信息.在win7操作系统下运行没有问题,在xp系统下却发现读取窗口反馈信息时无反应(阻塞) ...

  3. mac下使用mysql控制台命令行

    命令行中输入 open .bash_profile 然后将 alias mysql=/usr/local/mysql/bin/mysqlalias mysqladmin=/usr/local/mysq ...

  4. iTOP-开发板-MiniLinux-C程序调用shell命令

    本文档介绍的是在 linux 系统环境下 linux-C 调用 shell 命令实验步骤,和文档压缩包一起的“iTOP-开发板-MiniLinux-SHELL_V1.0.zip”是 c 程序源码.Li ...

  5. MFC下调用控制台和控制台下MFC库的支持

    1.MFC下调用控制台 在CWinApp的InitInstance中对话框的DoModal之前加入 AllocConsole(); // 开辟控制台 SetConsoleTitle(_T(" ...

  6. 如何在Python脚本中调用外部命令(就像在linux shell或Windows命令提示符下输入一样)

    如何在Python脚本中调用外部命令(就像在linux shell或Windows命令提示符下输入一样) python标准库中的subprocess可以解决这个问题. from subprocess ...

  7. Windows 7下可以使用的各个命令语句+C#打开

    Windows 7下可以使用的各个命令语句:   control.exe /name microsoft.folderoptions 启动资源管理器的 文件夹属性 选项卡 control.exe /n ...

  8. python 调用shell命令三种方法

    #!/usr/bin/python是告诉操作系统执行这个脚本的时候,调用/usr/bin下的python解释器: #!/usr/bin/env python这种用法是为了防止操作系统用户没有将pyth ...

  9. 控制台命令行API

    js调试系列: 控制台命令行API   上次初步介绍了什么是控制台<js调试系列: 初识控制台>,以及简单的 console.log 输出信息.最后还有两个小问题,我们就当回顾,来看下怎么 ...

随机推荐

  1. PHP函数:mysql_fetch_assoc指针重置

    本文目前主要讨论mysql_fetch_assoc“指针”如何重置的问题 要了解mysql_fetch_assoc,先看看它与mysql_fetch_row和mysql_fetch_array的关系. ...

  2. WebAPI项目添加定时服务

    开发平台: VS2019 背景: 在开发小程序的API服务的时候,由于access_token的有效期为7200秒,也就是2小时,这就需要后端定时的去更新这个access_token,便于调用小程序的 ...

  3. PHP snippets

    Friendly file size string public static function bytesToSize($bytes) { if ($bytes < 1024) { retur ...

  4. OpenSSL context 的几个参数

    NAME SYNOPSIS DESCRIPTION NOTES BUGS RETURN VALUES EXAMPLES SEE ALSO NAME SSL_CTX_set_verify, SSL_se ...

  5. pat乙级1060

    将数组排序后从大到小遍历,设置一个递增的变量t,当v[i] > t的时候,说明有t个数大于t,最后一个满足v[i] > t的t即为所求结果. #include <iostream&g ...

  6. Memory Usage Performance Guidelines

    https://developer.apple.com/library/content/documentation/Performance/Conceptual/ManagingMemory/Arti ...

  7. 【BZOJ1057】[ZJOI2007] 棋盘制作(单调栈的运用)

    点此看题面 大致题意: 给你一个\(N*M\)的\(01\)矩阵,要求你分别求出最大的\(01\)相间的正方形和矩形(矩形也可以是正方形),并输出其面积. 题解 这题第一眼看去没什么思路,仔细想想,能 ...

  8. Gym - 100676H Capital City(边强连通分量 + 树的直径)

    H. Capital City[ Color: Black ]Bahosain has become the president of Byteland, he is doing his best t ...

  9. TypeScript task

    Ctrl+Shift+B 生成 js 文件.

  10. 学习笔记(七): Logistic Regression

    目录 Calculating a Probability Model Training 1.Loss function for Logistic Regression 2.Regularization ...