开始的时候想写一个基于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. Apache Spark 2.2.0 中文文档 - Structured Streaming 编程指南 | ApacheCN

    Structured Streaming 编程指南 概述 快速示例 Programming Model (编程模型) 基本概念 处理 Event-time 和延迟数据 容错语义 API 使用 Data ...

  2. Visual Studio 2015 终于还是装上了

    win8.1系统 vs2015.preview_ult_CHT.iso 大小4.46G, http://download.microsoft.com/download/9/9/1/99133C05-3 ...

  3. centos6.5_64bit-nginx安装部署

    1.配置防火墙,开启80端口.3306端口 vim /etc/sysconfig/iptables -A INPUT -m state --state NEW -m tcp -p tcp --dpor ...

  4. ios 几种快速写法

    //NSString .... NSString *str1 = @"str1"; NSLog(@"str %@",str1); //NSArray NSArr ...

  5. UVALive 4727 Jump(约瑟夫环,递推)

    分析: 如果问题是要求最后一个删除的数,重新编号为0到n-1,f[n]表示答案,那么f[n] = (f[n-1]+k)%n. 因为删掉下标k-1以后可以从下标k重新编号为0. 在这个问题只需要推出最后 ...

  6. red hat的防火墙怎么关闭

    查看是否开启: service iptables status 关闭方法: service iptables stop 永远关闭: Ntsysv 把iptables前的*号去掉. 查看SELinux状 ...

  7. C#的接口基础教程之五 实现接口

    1.显式实现接口成员 为了实现接口,类可以定义显式接口成员执行体(Explicit interface member implementations).显式接口成员执行体可以是一个方法.一个属性.一个 ...

  8. leetcode - 二叉树最大深度

    二叉树最大深度 给定一个二叉树,找出其最大深度. 二叉树的深度为根节点到最远叶子节点的最长路径上的节点数. 说明: 叶子节点是指没有子节点的节点. 示例: 给定二叉树 [3,9,20,null,nul ...

  9. java面向对象思想1

    1.面向对象是面向过程而言.两者都是一种思想.面向过程:强调的是功能行为.(强调过程.动作)面向对象:将功能封装进对象,强调了具备了功能的对象.(强调对象.事物)面向对象是基于面向过程的.将复杂的事情 ...

  10. node的webserver模板

    const express = require('express'); const swig =require('swig'); const fs = require('fs'); //创建服务器 c ...