MFC的单文档程序,需要用另一个程序启动,且要传给被启动的程序一个参数,如何实现?
另外,两个程序都启动后,要互相传一些参数,如何实现,谢谢了!
另外,两个程序都启动后,要互相传一些参数,如何实现,谢谢了!
解决方案 »
- 请问vs2010的IE控件有吗 ?怎么添加呢
- 关于把广播UDP送到LAN上使客户端向服务器报数,问一下可行性。
- 文件串行化问题
- 软件效率问题专题讨论
- char*到BSTR的转化语句 m_wstr = _com_util::ConvertStringToBSTR(s); 在XP下运行正常,在2000下却执行报错,为什么?
- 请教一个将api的类移植到mfc程序中的问题,谢谢
- 各位高手帮帮我,非常着急....
- 高手请进,C++算法极度挑战!!!本人已经一天没合眼了
- 请教各位一道数学题
- 高手!救我!如何在一个页面上画一个图格,用户在其上能手动的点上点,然后自动的为这些点连上线,最终成为一条曲线!!!!
- ●●●100分!!●●●方才讨论了PlaySound的问题,现问如何用相对路径,●●●
- 很奇怪的问题,为什么__stdcall不好用了??函数名城的修饰完全没去掉!!
ShellExecute(NULL, "open", "Print.exe", m_sParameter, NULL, SW_SHOWNORMAL);
LPCTSTR lpApplicationName, // name of executable module
LPTSTR lpCommandLine, // 在此传递你的参数
LPSECURITY_ATTRIBUTES lpProcessAttributes, // SD
LPSECURITY_ATTRIBUTES lpThreadAttributes, // SD
BOOL bInheritHandles, // handle inheritance option
DWORD dwCreationFlags, // creation flags
LPVOID lpEnvironment, // new environment block
LPCTSTR lpCurrentDirectory, // current directory name
LPSTARTUPINFO lpStartupInfo, // startup information
LPPROCESS_INFORMATION lpProcessInformation // process information
);
要实现互相传参数的话,可以使用内存映射文件
parm 就是传递给another.exe的参数
两个程序可以通过FindWindow 得到对方的窗口句柄,然后用SendMessage 传递参数
如果是简单的可以自定义消息传递,只要两边的消息值相同,找窗口传递即可
更通用的是文件映射
参考CreatFileMapping OpenfileMapping等函数
怎么接收传来的参数啊?
cszCmd = GetCommandLine();
就可以了。
提到的内存映射文件,也可使用其他的如Socket。甚至是用WM_COPYDATA消息, ^_^Happy Programming!!
WinExec("another.exe parm", SW_SHOW);上面两个,带参数的启动不了,还有,主程序怎么接收参数啊?
getcomandline,怎么用啊,加在什么地方,不带参数的可以得到主程序的地址,带参数的怎么得到参数啊,谢谢大家了!