Dear,

We have update our kixstrip tool again.
We got inspired by one of the topic earlier this week. A guy couldn't
run the script after processing by "kixstrip /Debug" on any kixtart
release.

After preprocess kixtart scripting code by one of the kixstrip options
- /Debug
- /Performance
- /Progress
no longer it is a problem to run them on earlier kixtart releases.
We verify it will all windows releases which can be downloaded from
this site.

kixstrip now backwards/upwards compatible

Other extensions made to option "/Debug" are
- it shows only once complete information block.
- it shows only unique name when useful. the required local variable
declaration exists from KiXtart 3.60 release.
- it removes the statements AT & @mhz. unexpected side effects.
- it removes statement CLS.
At least an unwanted change of your "RedirectOutput" statements when "/Debug" option isn't specified
is corrected. This problem only exist in previous release.

Example what do you see by using the "/Debug" option

Steps:
  1. we have two scripts. second one will be called by first one.
    script1.kix
    code:
    ? "script 1 - kix "+@kix $nul=RedirectOutput("")
    call "d:\script2.kix"
    sleep 1
    call "d:\script2.kix"
    ? "script 1 - completed."

    script2.kix
    code:
    ? "script 2 - kix "+@kix $nul=RedirectOutput("")

  2. we add required debugging code to both scripts with the
    call:
    kixstrip script1 script1.kix /Debug

    The result for first script is:
    code:
                ;CLS
    IF (instr("-3.0x-3.1x-3.2x-3.3x-","-"+substr(@kix,1,3)+"x-") <> 0)
    IF MessageBox("sorry, your kixtart "+@kix+" release is too old."+CHR(13)+CHR(10)+CHR(13)+CHR(10)+" please upgrade.","KiXtart "+@kix+" info",4112,300)
    ENDIF
    EXIT
    ENDIF
    COLOR C+/N
    ;AT (1,1) " "

    $_debug_file="kixdebug.txt" ; - %tmp% directory -
    IF (len($_debug_file) <> 0)
    IF (substr("%tmp%",len("%tmp%"),1) = "\")
    $_debug_file="%tmp%"+$_debug_file
    ELSE
    $_debug_file="%tmp%\"+$_debug_file
    ENDIF
    ENDIF
    ;$_debug_file="c:\kixdebug.txt"
    IF RedirectOutput($_debug_file)
    ENDIF

    ? "-"+LCASE(@day)+" "+@date+" "+@time+"- kixtart "+@kix+"/3.18e script starting"
    IF (Val(substr(@kix,1,1)) >= 4)
    IF (len(@scriptname) <> 0)
    " ("+LCASE(@scriptname)+")"
    ENDIF
    ENDIF
    ? "-"
    IF ("$_debug_already_starting" <> "yes")
    ? "-curdir: "+LCASE(@curdir)
    ? "-scriptdir: "+LCASE(@scriptdir)
    IF (instr("-4.1x-","-"+substr(@kix,1,3)+"x-") <> 0)
    ? "-scriptname: "+LCASE(@scriptname)
    ENDIF
    ? "-startdir: "+LCASE(@startdir)
    ? "-"
    ? "-userid: "+LCASE(@userid)+"/"+LCASE(@wuserid)
    ? "-user priv: "+LCASE(@priv)
    IF (instr("-4.xx-","-"+substr(@kix,1,2)+"xx-") <> 0)
    ? "-version: inwin="+@inwin+"/dos="+@dos"/productsuite="+@productsuite+"/producttype="+@producttype"/csd="+LTRIM(RTRIM(@csd))
    ELSE
    ? "-version: inwin="+@inwin+"/dos="+@dos
    ENDIF
    ? "-"
    IF (instr("-4.1x-","-"+substr(@kix,1,3)+"x-") <> 0)
    ? "-"+@cpu+" (memory "+MemorySize()+" MB)"
    ? "-"
    ENDIF
    ENDIF

    $_debug_temp_name="" ; -format: yyyymmdd_hhmmss.sss_999 scriptname-
    IF (instr("-3.6x-","-"+substr(@kix,1,3)+"x-") <> 0) OR (Val(substr(@kix,1,1)) >= 4)
    IF (instr("-4.xx-","-"+substr(@kix,1,2)+"xx-") <> 0)
    $_debug_temp_name=@msecs
    SELECT
    CASE (len($_debug_temp_name) = 1)
    $_debug_temp_name="00"+$_debug_temp_name
    CASE (len($_debug_temp_name) = 2)
    $_debug_temp_name="0"+$_debug_temp_name
    ENDSELECT
    $_debug_temp_name="."+$_debug_temp_name
    IF Srnd(@msecs)
    ENDIF
    SLEEP 0.050
    ELSE
    IF Srnd((-1)*32767/(substr(@time,7,2)+1))
    ENDIF
    SLEEP 1
    ENDIF
    $_debug_temp_name=substr(@date,1,4)+substr(@date,6,2)+substr(@date,9,2)+"_"+substr(@time,1,2)+substr(@time,4,2)+substr(@time,7,2)+$_debug_temp_name+"_"+Rnd()
    IF (len($_debug_temp_name) < 25)
    $_debug_temp_name=substr($_debug_temp_name+" ",1,25)
    ENDIF
    IF (instr("-4.1x-","-"+substr(@kix,1,3)+"x-") <> 0)
    IF (len(@scriptname) < 12)
    $_debug_temp_name=$_debug_temp_name+" "+substr(@scriptname+" ",1,12)
    ELSE
    $_debug_temp_name=$_debug_temp_name+" "+@scriptname
    ENDIF
    ENDIF
    ENDIF

    IF ("$_debug_already_starting" <> "yes")
    ? "-debug file: "+$_debug_file
    ? "-debug name: "+LCASE($_debug_temp_name)
    ELSE
    IF (len($_debug_temp_name) <> 0)
    ? "-debug: "+LTRIM(RTRIM(LCASE($_debug_temp_name)))+" -> "+$_debug_file
    ELSE
    ? "-debug-file: "+$_debug_file
    ENDIF
    ENDIF

    IF (instr("-3.6x-","-"+substr(@kix,1,3)+"x-") = 0) AND (Val(substr(@kix,1,1)) < 4)
    GOTO _debug_starting_point
    ENDIF
    DIM $_debug_name ; -create local variable-
    :_debug_starting_point
    $_debug_name=LCASE($_debug_temp_name)
    $_debug_already_starting="yes"
    ? "-"
    ?"----- start-"+@time+"-"+$_debug_name+"- @error @serror"?

    ?"- 1-"+@time+"-"+$_debug_name+"- @error @serror"? ? "script 1 - kix "+@kix $nul=RedirectOutput("") IF RedirectOutput($_debug_file) ENDIF ; -inserted by kixstrip-
    ?"- 2-"+@time+"-"+$_debug_name+"- @error @serror"? CALL "d:\script2.kix"
    ?"- 3-"+@time+"-"+$_debug_name+"- @error @serror"? SLEEP 1
    ?"- 4-"+@time+"-"+$_debug_name+"- @error @serror"? CALL "d:\script2.kix"
    ?"- 5-"+@time+"-"+$_debug_name+"- @error @serror"? ? "script 1 - completed."

    ?"------- end-"+@time+"-"+$_debug_name+"- @error @serror"
    ? "-"
    ? "-"+LCASE(@day)+" "+@date+" "+@time+"- kixtart "+@kix+"/3.18e script ending"
    IF (Val(substr(@kix,1,1)) >= 4)
    IF (len(@scriptname) <> 0)
    " ("+LCASE(@scriptname)+")"
    ENDIF
    ENDIF
    ? "-"
    IF RedirectOutput("CON")
    ENDIF
    COLOR C+/N
    ?
    ? "Informative KIX "+@kix+":"+" debug info see "+CHR(34)+$_debug_file+CHR(34)
    IF (Val(substr(@kix,1,1)) >= 4)
    IF (len(@scriptname) <> 0)
    " ("+LCASE(@scriptname)+")"
    ENDIF
    ENDIF
    IF RedirectOutput($_debug_file)
    ENDIF
    ;($begin)
    ;
    ; fri 12-jul-2002 09:10:29 (kix 4.10 vs 3.18e)
    ;
    ;Informative KIXSTRIP: no errors found (input=5 output=5 skip=0).
    ;
    ;Informative KIXSTRIP: no block_structures found.
    ;Informative KIXSTRIP: no UDF's found.
    ;Informative KIXSTRIP: no labels found.
    ;Summary KIXSTRIP: BREAK CALL DEBUG DISPLAY ENDFUNCTION EXECUTE EXIT FUNCTION GET GETS GOSUB GOTO OLExxx PLAY QUIT RETURN RUN SHELL SLEEP THEN USE
    ;Informative KIXSTRIP: 2 CALL
    ;Informative KIXSTRIP: 1 SLEEP
    ;
    ;($end)

  3. without any correction we run first script.
    The results can be
    code:
    -friday 2002/07/12 04:13:12- kixtart 3.47/3.18e script starting
    -
    -curdir: d:\kixtart\kix347
    -scriptdir:
    -startdir: d:\kixtart\kix347\
    -
    -userid: -/-
    -user priv: guest
    -version: inwin=2/dos=4.90
    -
    -debug file: c:\temp\kixdebug.txt
    -debug name:
    -
    ----- start-04:13:12-- 0 The operation completed successfully.

    - 1-04:13:12-- 0 The operation completed successfully.

    script 1 - kix 3.47
    - 2-04:13:12-- 0 The operation completed successfully.

    -friday 2002/07/12 04:13:12- kixtart 3.47/3.18e script starting
    -
    -debug-file: c:\temp\kixdebug.txt
    -
    ----- start-04:13:12-- 0 The operation completed successfully.

    - 1-04:13:12-- 0 The operation completed successfully.

    script 2 - kix 3.47
    - 2-04:13:12-- 0 The operation completed successfully.

    ------- end-04:13:12-- 0 The operation completed successfully.
    -
    -friday 2002/07/12 04:13:12- kixtart 3.47/3.18e script ending
    -
    - 3-04:13:12-- 0 The operation completed successfully.

    - 4-04:13:13-- 0 The operation completed successfully.

    -friday 2002/07/12 04:13:13- kixtart 3.47/3.18e script starting
    -
    -debug-file: c:\temp\kixdebug.txt
    -
    ----- start-04:13:13-- 0 The operation completed successfully.

    - 1-04:13:13-- 0 The operation completed successfully.

    script 2 - kix 3.47
    - 2-04:13:13-- 0 The operation completed successfully.

    ------- end-04:13:13-- 0 The operation completed successfully.
    -
    -friday 2002/07/12 04:13:13- kixtart 3.47/3.18e script ending
    -
    - 5-04:13:13-- 0 The operation completed successfully.

    script 1 - completed.
    ------- end-04:13:13-- 0 The operation completed successfully.
    -
    -friday 2002/07/12 04:13:13- kixtart 3.47/3.18e script ending
    -

    for KiXtart 4.10 the result is:
    code:
    -friday 2002/07/12 04:13:40- kixtart 4.10/3.18e script starting (script1.kix)
    -
    -curdir: d:\
    -scriptdir: d:
    -scriptname: script1.kix
    -startdir: d:
    -
    -userid: -/-
    -user priv: guest
    -version: inwin=2/dos=4.90/productsuite=/producttype=Windows Me/csd=
    -
    -Intel Pentium III (memory 511 MB)
    -
    -debug file: c:\temp\kixdebug.txt
    -debug name: 20020712_041340.620_2063 script1.kix
    -
    ----- start-04:13:40-20020712_041340.620_2063 script1.kix - 0 The operation completed successfully.

    - 1-04:13:40-20020712_041340.620_2063 script1.kix - 0 The operation completed successfully.

    script 1 - kix 4.10
    - 2-04:13:40-20020712_041340.620_2063 script1.kix - 0 The operation completed successfully.

    -friday 2002/07/12 04:13:40- kixtart 4.10/3.18e script starting (script2.kix)
    -
    -debug: 20020712_041340.730_2422 script2.kix -> c:\temp\kixdebug.txt
    -
    ----- start-04:13:40-20020712_041340.730_2422 script2.kix - 0 The operation completed successfully.

    - 1-04:13:40-20020712_041340.730_2422 script2.kix - 0 The operation completed successfully.

    script 2 - kix 4.10
    - 2-04:13:40-20020712_041340.730_2422 script2.kix - 0 The operation completed successfully.

    ------- end-04:13:40-20020712_041340.730_2422 script2.kix - 0 The operation completed successfully.
    -
    -friday 2002/07/12 04:13:40- kixtart 4.10/3.18e script ending (script2.kix)
    -
    - 3-04:13:40-20020712_041340.620_2063 script1.kix - 0 The operation completed successfully.

    - 4-04:13:41-20020712_041340.620_2063 script1.kix - 0 The operation completed successfully.

    -friday 2002/07/12 04:13:41- kixtart 4.10/3.18e script starting (script2.kix)
    -
    -debug: 20020712_041341.770_2553 script2.kix -> c:\temp\kixdebug.txt
    -
    ----- start-04:13:41-20020712_041341.770_2553 script2.kix - 0 The operation completed successfully.

    - 1-04:13:41-20020712_041341.770_2553 script2.kix - 0 The operation completed successfully.

    script 2 - kix 4.10
    - 2-04:13:41-20020712_041341.770_2553 script2.kix - 0 The operation completed successfully.

    ------- end-04:13:41-20020712_041341.770_2553 script2.kix - 0 The operation completed successfully.
    -
    -friday 2002/07/12 04:13:41- kixtart 4.10/3.18e script ending (script2.kix)
    -
    - 5-04:13:41-20020712_041340.620_2063 script1.kix - 0 The operation completed successfully.

    script 1 - completed.
    ------- end-04:13:41-20020712_041340.620_2063 script1.kix - 0 The operation completed successfully.
    -
    -friday 2002/07/12 04:13:41- kixtart 4.10/3.18e script ending (script1.kix)
    -

any comment or suggestion is welcome.
greetings.
_________________________
email scripting@wanadoo.nl homepage scripting@wanadoo.nl | Links | Summary of Site Site KiXforms FAQ kixtart.org library collection mirror MCA | FAQ & UDF help file UDF kixtart.org library collection mirror MCA | mirror USA | mirror europe UDF scriptlogic library collection UDFs | mirror MCA