| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1924 人关注过本帖
标题:求解cmd和mfc相关联的问题
只看楼主 加入收藏
serena1992
Rank: 1
等 级:新手上路
帖 子:26
专家分:0
注 册:2011-8-5
结帖率:100%
收藏
已结贴  问题点数:20 回复次数:13 
求解cmd和mfc相关联的问题
我现在写好了一个画图功能的mfc程序,具体功能是载入一张地图然后能够通过设置参数来在地图上画出相关的圆点(画图功能)。现在在cmd下能够通过进入.exe的目录,来调用这个可执行程序,但现在要求实现在cmd下面通过输入.exe的名字,后面加参数来传入给这个可执行文件,然后不出现.exe的对话框,直接将画好图的图片返回到参数所包含的目录中,请问大家,这个功能要怎么才能实现啊?本人初学mfc,不甚了解这些东西,菜鸟一个,希望大家帮忙解决下问题哦~~
搜索更多相关主题的帖子: 名字 地图 图片 对话框 可执行文件 
2011-08-06 15:01
hahayezhe
Rank: 15Rank: 15Rank: 15Rank: 15Rank: 15
来 自:湖南张家界
等 级:贵宾
威 望:24
帖 子:1386
专家分:6999
注 册:2010-3-8
收藏
得分:10 
??没明白你的需求
你是想通过命令行传参么?
2011-08-06 15:07
serena1992
Rank: 1
等 级:新手上路
帖 子:26
专家分:0
注 册:2011-8-5
收藏
得分:0 
回复 2楼 hahayezhe
嗯,是的,比如说这个可执行文件叫MyProject.exe,那么我希望可以做到在cmd中输入 MyProject   参数(比如载入地图的地址,画图的参数,画好的图的另存的地址……),而且用cmd执行后不要出现.exe的对话框,也就是说只要一个结果就可以了,不需要在对话框中用button之类的控件来画东西。
2011-08-06 15:12
hahayezhe
Rank: 15Rank: 15Rank: 15Rank: 15Rank: 15
来 自:湖南张家界
等 级:贵宾
威 望:24
帖 子:1386
专家分:6999
注 册:2010-3-8
收藏
得分:0 
还真没做过GUI的命令行传参呢,一般是通过控制台程序,main里进行传参,
不过WinMain也应该可以吧 ,你再app里找找 相关变量或者函数,看有没有提供相关接收命令行参数的接口

WinMain封装在app类里
2011-08-06 15:16
serena1992
Rank: 1
等 级:新手上路
帖 子:26
专家分:0
注 册:2011-8-5
收藏
得分:0 
以下是引用hahayezhe在2011-8-6 15:16:35的发言:

还真没做过GUI的命令行传参呢,一般是通过控制台程序,main里进行传参,
不过WinMain也应该可以吧 ,你再app里找找 相关变量或者函数,看有没有提供相关接收命令行参数的接口

WinMain封装在app类里

winmain主函数封装在APPMODUL.cpp中吧,请问你说的app类是什么?
2011-08-06 15:32
hahayezhe
Rank: 15Rank: 15Rank: 15Rank: 15Rank: 15
来 自:湖南张家界
等 级:贵宾
威 望:24
帖 子:1386
专家分:6999
注 册:2010-3-8
收藏
得分:0 

在MFC程序中,可以用以下几种方法来获取命令行参数。
为方便说明,我们假设执行了命令:C:\test\app.exe -1 -2

方法一
::GetCommandLine();
将获取到 "C:\test\app.exe"  -1 -2

方法二
for (int i=0;i<__argc;i++)
{
__argv[i];
将依次得到C:\test\app.exe  -1  -2
}

方法三
AfxGetApp()->m_lpCmdLine;
将获取到 -1 -2


收到的鲜花
  • serena19922011-08-16 17:02 送鲜花  2朵   附言:这个给我的帮助很大
2011-08-06 16:04
serena1992
Rank: 1
等 级:新手上路
帖 子:26
专家分:0
注 册:2011-8-5
收藏
得分:0 
回复 6楼 hahayezhe
很感谢你的回复,我再来试试看吧==
2011-08-07 11:16
serena1992
Rank: 1
等 级:新手上路
帖 子:26
专家分:0
注 册:2011-8-5
收藏
得分:0 
回复 6楼 hahayezhe
6楼,你好,我在app中找到了你所说的winmain,确实是有cmd的接口的,叫做theApp.m_lpCmdLine这样的一个LPTSTR类型的参数,但对C++不熟悉的我不知道如何将这种类型的参数的值变成我需要的double类型的值。感谢你的回答!
2011-08-08 15:20
zhoufeng1988
Rank: 15Rank: 15Rank: 15Rank: 15Rank: 15
来 自:北京
等 级:贵宾
威 望:27
帖 子:1432
专家分:6329
注 册:2009-5-31
收藏
得分:10 
进程通信如何?
2011-08-09 01:56
serena1992
Rank: 1
等 级:新手上路
帖 子:26
专家分:0
注 册:2011-8-5
收藏
得分:0 
以下是引用zhoufeng1988在2011-8-9 01:56:36的发言:

进程通信如何?

请问为什么用进程通信呢?
2011-08-09 09:21
快速回复:求解cmd和mfc相关联的问题
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.014185 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved