This is my code that works very well.
I have a generic exe that runs any rbase formm passed to it.
You should be able to adapt the technique
SET VAR vCompiled TEXT = NULL
GETPROPERTY Application ISCOMPILED vCompiled
IF vCompiled = 'YES' THEN
SET VAR vTmp = ('Loading RBASE on' & .vDriveLetter)
PROPERTY Application TITLE 'Run Form'
PROPERTY LOADWINDOW CAPTION .vTmp
PROPERTY LOADWINDOW TITLE 'Please Wait.....'
PROPERTY LOADWINDOW PROGRESS 25
PAUSE FOR 2
SET VAR vCommandLine TEXT
IF (CHKFUNC('GetCommandLineA')) = 0 THEN
STDCALL FUNCTION 'GetCommandLineA' ALIAS 'GetCommandLine' () : TEXT
ENDIF
SET VAR vCommandLine = (DLCALL('Kernel32', 'GetCommandLineA'))
--Remove double quotes from string
SET VAR vCommandLine = (SRPL(.vCommandLine,'"','',0))
--Remove exe name from string
SET VAR vPos INTEGER = (SLOC(.vCommandLine,'.exe'))
SET VAR vParms = (SGET(.vCommandLine,SLEN(.vCommandLine),(.vPos+4)))
SET VAR vParms = (TRIM(.vParms))
SET VAR vParmNum INTEGER = -1
SET VAR vFormName TEXT = (SSUB(.vParms,.vParmNum))
IF vFormName IS NULL THEN
PAUSE 1 USING 'SYNTAX:RUNFORM.EXE -A formname <application title>'
GOTO Done
ENDIF
SET VAR vParmNum = (.vParmNum - 1)
IF vFormName = '-A' THEN -- try second parm
SET VAR vFormName TEXT = (SSUB(.vParms,.vParmNum))
IF vFormName IS NULL THEN
PAUSE 1 USING 'SYNTAX:RUNFORM.EXE -A formname <application title>'
GOTO Done
ENDIF
ENDIF
SET VAR vAppName TEXT = NULL
SET VAR vTmp TEXT = 'x'
WHILE vTmp IS NOT NULL THEN
SET VAR vParmNum = (.vParmNum - 1)
SET VAR vTmp = (SSUB(.vParms,.vParmNum))
SET VAR vAppName = (.vAppName & .vTmp)
ENDW
SET VAR vAppName = (STRIM(.vAppName))
ENDIF
Dennis McGrath
Software Developer
QMI Security Solutions
1661 Glenlake Ave
Itasca IL 60143
630-980-8461
[email protected]
________________________________________
From: [email protected] [mailto:[email protected]] On Behalf Of Dan Goldberg
Sent: Tuesday, June 07, 2011 10:49 AM
To: RBASE-L Mailing List
Subject: [RBASE-L] - Compiler command line switches
Does anybody know where to find a list of the compiler command line switches
and format?
I would like to pass a parameter to the application when it opens so it can run
a custom form action.
TIA
Dan Goldberg
MIS Manager
Lance Camper Mfg Corp
661-949-3322 Ext 252