#100450 - 2003-04-20 06:37 PM
Re: Passing Arguments from the Command Line
|
Shawn
Administrator
   
Registered: 1999-08-13
Posts: 8611
|
Well, I'm still waiting for al to post his idea, I've been sitting here hitting F5 for 12 hours now
|
|
Top
|
|
|
|
#100452 - 2003-04-20 06:50 PM
Re: Passing Arguments from the Command Line
|
Shawn
Administrator
   
Registered: 1999-08-13
Posts: 8611
|
I do use bbc, just that I cant work on kf and run bbc at the same time ... dll in use
|
|
Top
|
|
|
|
#100453 - 2003-04-20 07:58 PM
Re: Passing Arguments from the Command Line
|
Allen
KiX Supporter
   
Registered: 2003-04-19
Posts: 4562
Loc: USA
|
Sorry to keep you guys waiting... I'll post some code later this evening...
|
|
Top
|
|
|
|
#100454 - 2003-04-21 02:37 AM
Re: Passing Arguments from the Command Line
|
Allen
KiX Supporter
   
Registered: 2003-04-19
Posts: 4562
Loc: USA
|
Okay... here is solution 1.
Positives: It works under NT OSs. Negatives: Will not work under Win9x, WinME.
While you guy tear this one apart I've got another "all most" working solution to post that maybe someone can finish.
::==================================================== ::STARTUP_SCRIPT KIXSTART.BAT :: ::ACTION ALLOWS USER TO PASS EITHER KIXTART ARGUMENTS :: OR CMD LINE ARGUMENTS TO KIXTART SCRIPT :: ::AUTHOR ALLEN POWELL (AL_PO) :: ::VERSION 1.0 :: ::REQUIRES CMD.EXE FROM WINDOWS NT 4.0, WINDOWS 2000, OR WINDOWS XP :: ::SYNTAX KIXSTART SCRIPTNAME SCRIPTARGS :: ::PARAMETERS SCRIPTNAME - .KIX FILE :: SCRIPTARGS - EITHER $ARG1="SOMETHING" $ARG2="NOTHING" :: OR /A /B /C /SOMETHING /D "NOTHING" :: OR no args at all. :: ::ADDITIONAL IF USING CMD LINE ARGS, KIXSTART.BAT SETS $CMDARGS WHICH CAN :: BE SPLIT AND THEN PROCESSED IN THE KIXTART CODE. ::
@echo off if not %OS%==Windows_NT goto help if "%1"=="/?" goto help if "%1"=="" goto help set kixscript=%1 for /f "tokens=1* delims= " %%f in ("%*") do call :DetermineArgType "%%g" goto end
:DetermineArgType if %1=="" set cmdline= & goto runkix set args=%1 set args=%args:~1,-1% if %args:~0,1%==$ set cmdline=%args% & goto runkix if %args:~0,1%==/ set cmdline=$cmdargs="%args%" & goto runkix goto :eof
:runkix kix32 %kixscript% %cmdline% goto end
:help cls echo echo. echo KIXSTART.BAT is a startup script for KIX32.EXE. echo. echo KIXSTART.BAT can use EITHER kixtart arguments ($arg1="blah blah blah") echo OR Command arguments preceded with a "/" (/a "hello" /b /c /etc) echo OR no arguments at all. echo. echo To use Command arguments in Kixtart add the following to the beginning echo of your Kixtart code: echo. echo if $cmdargs^<^>"" echo $params=split($cmdargs,"/") echo for each $param in $params echo {your code here} echo next echo endif echo. echo KIXSTART.BAT requires an NT based OS: Windows NT 4, Windows 2000, Windows XP, echo or higher. echo. echo Syntax: Kixstart Scriptname ScriptArgs echo. :end
|
|
Top
|
|
|
|
#100455 - 2003-04-21 02:47 AM
Re: Passing Arguments from the Command Line
|
Allen
KiX Supporter
   
Registered: 2003-04-19
Posts: 4562
Loc: USA
|
Possible Solution #2
Positives: Works with all OSs. In its current state, I believe it will work with cmd line args. Negatives: Incomplete. It appears that the CSCRIPT parser removes quotes regardless of reason. This makes it impossible to pass kixtart arguments through it
Any ideas?
'kixstart.vbs set cmdargs=Wscript.arguments if cmdargs.count=0 then call help wscript.quit 1 elseif cmdargs.item(0)="/?" then wscript.echo "/?" call help wscript.quit 1 elseif cmdargs.count>=1 then kixscript=cmdargs.item(0) for i = 1 to cmdargs.count - 1 cmdline=cmdline + cmdargs(i) + " " next select case left(cmdargs.item(1),1) case "/" cmdline="$cmdargs=" + cmdline case "$" case else call help wscript.quit 1 end select else call help wscript.quit 1 end if
wscript.echo "kix32 " + kixscript + " " + cmdline
sub help wscript.echo "help" end sub
|
|
Top
|
|
|
|
#100458 - 2003-04-23 06:27 PM
Re: Passing Arguments from the Command Line
|
Allen
KiX Supporter
   
Registered: 2003-04-19
Posts: 4562
Loc: USA
|
It's been oddly quiet... I was kind of wondering what everyone's thoughts/ideas are of this bat file.
Have I written something only I will use?
|
|
Top
|
|
|
|
Moderator: Arend_, Allen, Jochen, Radimus, Glenn Barnas, ShaneEP, Ruud van Velsen, Mart
|
0 registered
and 544 anonymous users online.
|
|
|