VC下如何调用控制台命令以及其他可执行文件
开始的时候想写一个基于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指令执行完毕;
知道了这个,我们就可以设计一些基于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下如何调用控制台命令以及其他可执行文件的更多相关文章
- java调用控制台命令
String shell = "ping www.baidu.com";//需要执行的命令 BufferedReader br = null;try { Process p = R ...
- [Java]在xp系统下java调用wmic命令获取窗口返回信息无反应(阻塞)的解决方案
背景:本人写了一段java代码,调用cmd命令“wmic ...”来获取系统cpu.mem.handle等资源信息.在win7操作系统下运行没有问题,在xp系统下却发现读取窗口反馈信息时无反应(阻塞) ...
- mac下使用mysql控制台命令行
命令行中输入 open .bash_profile 然后将 alias mysql=/usr/local/mysql/bin/mysqlalias mysqladmin=/usr/local/mysq ...
- iTOP-开发板-MiniLinux-C程序调用shell命令
本文档介绍的是在 linux 系统环境下 linux-C 调用 shell 命令实验步骤,和文档压缩包一起的“iTOP-开发板-MiniLinux-SHELL_V1.0.zip”是 c 程序源码.Li ...
- MFC下调用控制台和控制台下MFC库的支持
1.MFC下调用控制台 在CWinApp的InitInstance中对话框的DoModal之前加入 AllocConsole(); // 开辟控制台 SetConsoleTitle(_T(" ...
- 如何在Python脚本中调用外部命令(就像在linux shell或Windows命令提示符下输入一样)
如何在Python脚本中调用外部命令(就像在linux shell或Windows命令提示符下输入一样) python标准库中的subprocess可以解决这个问题. from subprocess ...
- Windows 7下可以使用的各个命令语句+C#打开
Windows 7下可以使用的各个命令语句: control.exe /name microsoft.folderoptions 启动资源管理器的 文件夹属性 选项卡 control.exe /n ...
- python 调用shell命令三种方法
#!/usr/bin/python是告诉操作系统执行这个脚本的时候,调用/usr/bin下的python解释器: #!/usr/bin/env python这种用法是为了防止操作系统用户没有将pyth ...
- 控制台命令行API
js调试系列: 控制台命令行API 上次初步介绍了什么是控制台<js调试系列: 初识控制台>,以及简单的 console.log 输出信息.最后还有两个小问题,我们就当回顾,来看下怎么 ...
随机推荐
- Mono for Android 设计器错误:Disconnected from layout renderer
今早打开vs2012 android 项目的时候出现如下错误提示: 查了半天,终于在官方网站得到答案.(http://forums.xamarin.com/discussion/143 ...
- 在vim中插入命令行的输出结果
vim是linux中常见的编辑器,这里讲讲如何在vim中插入命令行的输出结果. 基本用法: 在指令模式下运行 :!command ,如!date将日期显示在vim底部,!ls列出当前目录 将命令结果插 ...
- Array负载均衡控制器(vAPV)
平台: freebsd 类型: 虚拟机镜像 软件包: apache python basic software load balance network infrastructure slb ssl ...
- hadoop启动中缺少datanode
原文链接地址:https://blog.csdn.net/islotus/article/details/78357857 本人测试有效: 首先删除hadoop下的dfs文件(注:本文件不一定在had ...
- COGS 1365. [HAOI2013] 软件安装
★★☆ 输入文件:haoi13t4.in 输出文件:haoi13t4.out 简单对比时间限制:1 s 内存限制:128 MB Dr.Kong有一个容量为N MB (1 <= N ...
- MovieReview—Avengers: Infinity War(复仇者联盟3:无限战争)
Antagonist? Thanos,the central figure of the Avengers 3,antagonist. Everyone has his own ideals and ...
- Api容器在应用架构演化中的用途
单层架构 在最开始编程的时候相信大家都写过下面这种架构,界面代码,业务代码,数据库连接全部在工程面完成.当然这种架构在处理很小的程序的时候依然有生命力 两层架构 后来我们发现数据访问的代码大量重复,应 ...
- POJ 2392 Space Elevator(多重背包)
显然塔的总高度不会超过最大的a[i],而a[i]之前的可以到达的高度 是由a值更小的块组成,所以按照a从小到大的顺序去转移. 然后就是多重背包判断存在性了,几乎和coin那题一样. 数据没coin丧病 ...
- 【HHHOJ】NOIP2018 模拟赛(二十五) 解题报告
点此进入比赛 得分: \(100+100+20=220\)(\(T1\)打了两个小时,以至于\(T3\)没时间打了,无奈交暴力) 排名: \(Rank\ 8\) \(Rating\):\(+19\) ...
- CentOS6.5-DHCP配置
原文链接主机配置: 1.查看主机名:hostname 2.修改主机名:vi /etc/sysconfig/network NETWORKING=yes HOSTNAME=master.303kfy.n ...