Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/batch-file/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Batch file 将参数从BAT文件或VBS传递到Visual Fox Pro(.prg文件)_Batch File_Vbscript_Cmd_Visual Foxpro_Foxpro - Fatal编程技术网

Batch file 将参数从BAT文件或VBS传递到Visual Fox Pro(.prg文件)

Batch file 将参数从BAT文件或VBS传递到Visual Fox Pro(.prg文件),batch-file,vbscript,cmd,visual-foxpro,foxpro,Batch File,Vbscript,Cmd,Visual Foxpro,Foxpro,我有许多.prg文件,我目前每天都在使用。我必须手动输入的参数之一是todays date 其思想是,例如,date将作为.bat或.vbs文件中的参数,当我运行bat或vbs时。。。它将参数传递到.prg文件,并使用设置的参数执行.prg文件 或者像这样的…在CMD中 set date=20161019 do "n:\xxx\xxxx\xxx\xx\xx\xxxxx\ccc_ass.prg" date 只需使用程序名和日期运行VFP9.EXE "c:\Program Files (x86)\

我有许多.prg文件,我目前每天都在使用。我必须手动输入的参数之一是todays date

其思想是,例如,date将作为.bat或.vbs文件中的参数,当我运行bat或vbs时。。。它将参数传递到.prg文件,并使用设置的参数执行.prg文件

或者像这样的…在CMD中

set date=20161019 do "n:\xxx\xxxx\xxx\xx\xx\xxxxx\ccc_ass.prg" date

只需使用程序名和日期运行VFP9.EXE

"c:\Program Files (x86)\Microsoft Visual FoxPro 9\vfp9.exe" myprogram mydate

但是,参数将始终作为字符串传递,因此您的程序必须将其转换为正确的类型。

您只需将日期作为字符串传递即可(参数始终作为字符串传递)。进行此操作时,请始终使用不受日期设置影响的格式,并以相同的方式进行解释。请以yyyy/MM/dd格式制作。即:

-prg

lparameters theDateStr
local ldDate
if !empty( m.theDateStr )
   ldDate = cast( '^' + m.theDateStr as Date)
else
   ldDate = {}
endif
*...
并称之为(2016年10月23日):


OTOH,为什么不编辑BAT文件并通过BAT调用,为什么不编辑prg本身,或者让prg从外部来源获取日期。

好。你的具体问题是什么?请在这里学习!你甚至都没有读过这篇文章来了解如何使用这个网站……具体的问题是“如何将参数(值)从.bat文件传递到.prgWhy你不能在程序中使用DATE()函数来获取今天的日期吗?
vfp.exe yourprogram.prg 2016/10/23