命令行操作整理
来源:互联网 发布:截至到现在淘宝总额 编辑:程序博客网 时间:2024/05/25 23:29
由CCommandLineInfo继承一个子类,
CCommandLineInfoSubClass cmdInfo;
//调式版和Release版还不相同
//由调用者传进来的时候, i = 0;
//由IDE中带参数进行调试的时候, i = 1
int nStartByIDE = 0;
for (int i = nStartByIDE; i < __argc; i++)
{
LPCTSTR pszParam = __targv[i];
BOOL bFlag = FALSE;
BOOL bLast = ((i + 1) == __argc);
if (pszParam[0] == '-' || pszParam[0] == '/')
{
// remove flag specifier
bFlag = TRUE;
++pszParam;
}
cmdInfo.ParseParam(pszParam, bFlag, bLast);
}
重载子类的ParseParam
virtual void ParseParam(const TCHAR* pszParam, BOOL bFlag, BOOL bLast);
把pszParamz中得来的参数一个一个的放到约定的不同数据中.
跟进CCommandLineInfo里面看一下.
<2010_1113_1346>
参考:
Console app using MFC
http://www.codeguru.com/cpp/misc/misc/consoleapps/article.php/c243/
<2010_1113_2127>
CCommandLineInfo本身的处理不灵活, 只能接受一个参数.
找到一个灵活的命令行处理类, 正是想要的效果
Managing argc and argv[] with STL in a simple way
http://www.codeproject.com/KB/cpp/arguments.aspx
构建参数格式输入和判断参数都非常方便.
程序接受命令行参数效果等同于在程序内容读参数文件,
不同的地方是, 如果程序不是自己主动运行,而是由调用者来运行. 那程序接受命令行方式
简化了2个程序之间的交互. 实际工程中一个程序调用另外一个程序来处理调用者不方便处理的任务,就会用到命令行参数.
为了保证分析命令行时argc和argv能和实际的调用方式相同, 要确定在ide中的调试参数输入.
实际调用的命令行输入:
IDE调试参数的输入:
这个Arguments架子挺好,简洁,易用. 不好的地方是不能输入 -usrname=usr1, 只能按照顺序输入 usr1 "programe files/xx",
今天改了下没改过。那明天从头搭起来,慢慢调吧。
<2010_1115>
程序完成。
可以接受 -xxxx的输入, 比mfc自带的CCommandLineInfo好用的多.
/**
* @note
* 测试时用的命令行参数是:
* -useUKey -UseTempFile c:/tmp1 c:/tmp2/ -MemoryInformation 256M
*/
需要改进的地方, 构造参数输入的时候,还不是特别方便.
命令行预定义格式
运行结果
下载点
- Shell命令行操作--整理
- 命令行操作整理
- 整理: 命令行操作
- Redis命令行操作整理
- osx命令行操作整理
- vss 命令行执行相关操作搜集整理
- vss 命令行执行相关操作搜集整理
- 命令行整理
- 命令行 命令 整理
- WinRAR命令行参数整理
- GIT 命令行整理
- windows命令行的整理
- WinRAR命令行参数整理
- db2命令行整理(二)
- miniet命令行(CLI)整理
- Linux 命令行参数解析整理
- git版本管理命令行整理
- git版本管理命令行整理
- eclipse3.6.1 svn插件安装
- Java产生随机数的几种方式
- 加强网站安全、重构公司的门户网站项目(C# VS2003)
- 我的电脑学习历程.第一章.第一次接触键盘
- 基于SOA体系结构的ERP应用研究
- 命令行操作整理
- 利用CBitmapButton类实现位图按钮的两种方法
- 基于wxlua和remebug实现的简易lua调试器
- RSS?
- WIKI?
- 『qingrun』[软件工程]SD2会中的简短体会
- 数据库事务
- 猜数游戏的Java程序
- implement debug option