在项目a中调用另外一个已编译好的项目b的已编译好的b.exe文件,同时传递一个参数(假设参数名status)给b.exe,b根据接收的参数值转向不同的程序段。类似在DOS模式下以下面的格式执行:
C:\b.exe /1
C:\b.exe /0
问在b中怎样设置参数?怎么接收调用b.exe时传递进来的参数值?在a中怎么调用b.exe文件?
C:\b.exe /1
C:\b.exe /0
问在b中怎样设置参数?怎么接收调用b.exe时传递进来的参数值?在a中怎么调用b.exe文件?
解决方案 »
- 有什么好用的多语言的控件?
- 神经Borland公司!!!
- 过程结束语句
- 怎样通过odbc的连接取得其连接的数据库名?
- 如何实现这样的报表,请进来看看!~!!!!!!!!!!!!!!!!!!!!!!!!!!!
- 哪有delphi插件for powerdesigner or Rose
- opendialog1中,怎样选种多个文件,然后文件名再用字符串识别出来
- delphi中如何生成一个文件?如.txt类型?并向其中写入数据?
- 求助,报jpeg error #53错误.请大神们救救我.
- 请问:如何改变MessageDlg中的字体大小!
- 在delphi中的nil表示什么意思,是不是空还是对象未创建
- 问个老问题 。。。实在是不得甚解。。。唉?
var
str: String;
begin
str := ParamStr(1);//str就是传递进来的参数值在a中怎么调用b.exe:
WinExec( PChar('"' + b的包含路径的文件名 + '" ' + '"参数"' ), SW_SHOWNORMAL );
var
sInfo : TStartupInfo;
pInfo : TProcessInformation;
exitCode : Cardinal;
begin
try
FillChar(sInfo,sizeof(sInfo),#0);
sInfo.cb := SizeOf(sInfo);
sInfo.dwFlags := STARTF_USESHOWWINDOW;
sInfo.wShowWindow := SW_NORMAL;if not CreateProcess(nil,pchar(cmd),nil,nil,false,CREATE_NEW_CONSOLE or NORMAL_PRIORITY_CLASS, nil, nil, sInfo, pInfo) then
MessageBox(Application.handle,pchar(srunprocfalse),pchar(serror),MB_OK or MB_ICONSTOP)
else
begin
WaitForSingleObject(pInfo.hProcess,INFINITE);
GetExitCodeProcess(pInfo.hProcess,exitCode);
end;
finally
result:=exitCode;
end;
end;给分。