带参数调用exe程序 for Foxpro
给你个例子:这是VFP做的一个EXE,然后由其他程序调用这个EXE对DBF进行PACK操作。
VFP中只有一上主程序,Main.prg,内容如下:
Parameters tcFileName &&接收参数
If
!Empty(tcFileName)
If File(tcFileName)
Set Exclusive On
Try
Use
(tcFileName)
Pack
Use
Catch
Messagebox
(”请先关闭文件:’”+tcFileName+”‘”+Space(5),48,’信息提示’)
Endtry
Else
Messagebox
(”指定的文件:’”+tcFileName+”‘不存在!”+Space(5),48,’信息提示’)
Endif
Endif
以上编译成一个EXE文件,如MyPack.exe
*在VFP中调用:其实在VFP中可以用DO
方式调用,以下面API,是为了给其他开发工具参考
DECLARE INTEGER ShellExecute IN SHELL32.DLL INTEGER
nWinHandle,STRING cOperation,STRING cFileName,STRING cParameters,STRING
cDirectory,INTEGER
nShowWindow
=ShellExecute(0,”Open”,”d:"MyPack"MyPack.exe”,”d:"test"abc.dbf”,”",0)
&&d:"test"abc.dbf为传递的参数
CLEAR DLLS
*在VB中调用:
Shell
“d:"MyPack"MyPack.exe d:"test"abc.dbf” &&d:"test"abc.dbf为传递的参数