Page 1 of 1 1
Topic Options
#54780 - 2001-03-29 03:39 AM KIXTART-TOOL: correct version? now check all kixtart files on your local pc.
MCA Offline
KiX Supporter
*****

Registered: 2000-04-28
Posts: 5152
Loc: Netherlands, EU
Dear,

Unwanted and unexpected problems occurs by a mixed usage of kixtart files.
What would it be nice when there is a procedure, which can check for
this kind of mixage.
The new tool version.kix has the capability to do it.
The tool checks


  • kix32.exe
  • kx16.dll
  • kx32.dll
  • kx95.dll
  • kxrpc.exe

When the internal file information is correct kix32.exe set is ok.

see: http://home.wanadoo.nl/scripting
program: version.kix

An example of run ($debug_mode="no"):

code:

Kixtart 3.63 - NT4 version check (vs 1.03)

- 1 c:\winnt\kix32.exe
-version- 3.63
kix32.exe -3.63- 2000/10/15 00:00:00 163840
kx16.dll -3.60--3.61--3.62--3.63- 1999/09/01 00:00:00 47104
kx32.dll -3.60--3.61--3.62--3.63- 1999/09/01 00:00:00 32768
kx95.dll -3.60--3.61--3.62--3.63- 1999/09/01 00:00:00 36864
kxrpc.exe -3.34--3.35-
-version- 3.63 found
Informative KIX-VERSION: 1 file found with key 'c:\winnt\kix32.exe /s'.



By missing file(s) you get the following information:
code:

Kixtart 3.63 - NT4 version check (vs 1.03)

- 1 c:\winnt\kix32.exe
-version- 3.63
kix32.exe -3.63- 2000/10/15 00:00:00
kx16.dll -3.60--3.61--3.62--3.63- 1999/09/01 00:00:00
kx32.dll -3.60--3.61--3.62--3.63- 1999/09/01 00:00:00
kx95.dll -3.34--3.35-
-version- 3.63 incomplete or missing file(s)
Informative KIX: 1 file found with key 'c:\winnt\kix32.exe /s'.



remark: missing [b]date/time notation means missing file.
by kxrpc.exe it's a real problem.

The dynamic list ($log_mode="yes" with output to "c:\kix-versions.txt"):

code:

[NT4 3.63 ok]
pc 3.63 NT4=20010329_01:48:56 3.63 kix32.exe=('-3.63-','2000/10/15 00:00:00')
kx16.dll=('-3.60--3.61--3.62--3.63-','1999/09/01 00:00:00')
kx32.dll=('-3.60--3.61--3.62--3.63-','1999/09/01 00:00:00')
kx95.dll=('-3.60--3.61--3.62--3.63-','1999/09/01 00:00:00')
kxrpc.exe=('-3.34--3.35-','')
directory=('c:\winnt\') -ok-

With option $debug_mode="yes":

code:

Kixtart 3.63 - NT4 version check (vs 1.03)

- 1 c:\winnt\kix32.exe

Informative VERSION: c:\winnt\kix32.exe

size = 163840
time = 2000/10/15 00:00:00

company name
filedescription KiXtart main executable
fileversion 3, 63, 0, 0
internalname KIX32
language 0409English
legalcopyright Copyright Microsoft Corp. 1999
legaltrademarks $
originalfilename KIX32.EXE
privatebuild
productname KiXtart
productversion 3, 63, 0, 0
specialbuild

Informative VERSION: c:\winnt\kx16.dll

size = 47104
time = 1999/09/01 00:00:00

company name
filedescription
fileversion
internalname
language
legalcopyright
legaltrademarks
originalfilename
privatebuild
productname
productversion
specialbuild

Informative VERSION: c:\winnt\kx32.dll

size = 32768
time = 1999/09/01 00:00:00

company name
filedescription KiXtart 32 bit Thunk DLL
fileversion 3, 60, 0, 0
internalname KX32
language 0409English
legalcopyright Copyright © Microsoft Corp. 1999
legaltrademarks
originalfilename KX32.DLL
privatebuild
productname KiXtart
productversion 3, 60, 0, 0
specialbuild

Informative VERSION: c:\winnt\kx95.dll

size = 36864
time = 1999/09/01 00:00:00

company name
filedescription KiXtart RPC client DLL
fileversion 3, 60, 0, 0
internalname KX95
language 0409English
legalcopyright Copyright © Microsoft Corp. 1999
legaltrademarks
originalfilename KX95.DLL
privatebuild
productname KiXtart
productversion 3, 60, 0, 0
specialbuild

-version- 3.63
kix32.exe -3.63- 2000/10/15 00:00:00 163840
kx16.dll -3.60--3.61--3.62--3.63- 1999/09/01 00:00:00 47104
kx32.dll -3.60--3.61--3.62--3.63- 1999/09/01 00:00:00 32768
kx95.dll -3.60--3.61--3.62--3.63- 1999/09/01 00:00:00 36864
kxrpc.exe -3.34--3.35-
-version- 3.63 found

file = c:\kix-versions.txt
section = NT4 3.63 ok
key = pc 3.63 NT4
xxx = 20010329_01:44:37 3.63 kix32.exe=('-3.63-','2000/10/15 00:00:00') kx16.dll=('-3.60--3.61--3.62--3.63-','1999/09/01 00:00:00') kx32.dll=('-3.60--3.61--3.62--3.63-','1999/09/01 00:00:00') kx95.dll=('-3.60--3.61--3.62--3.63-','1999/09/01 00:00:00') kxrpc.exe=('-3.34--3.35-','') directory=('c:\winnt\')

Informative KIX-VERSION: 1 file found with key 'c:\kix32.exe /s'.


Special parts of source code

code:

$debug_mode="no" ; - yes/no -
$debug_file=$tmp_directory+"kix-info.txt"
$log_mode="yes" ; - yes/no -
$log_file="c:\kix-versions.txt"



  • $debug_mode: yes = additional information will be written to the
    specified file "$debug_file".
  • $debug_file: used by '$debug_mode="yes"'
  • $log_mode: yes = a dynamic list will be created.
  • $log_file: used by '$log_mode="yes"'. for administrators: use a filename
    on your server.

code:

IF ($debug_mode = "yes")
$destination_directory="c:\" ; <--- change line to check another drive
ENDIF



  • change "c:\" to another drive for checking them.
    remark: procedure runs dir x:\kix32.exe /b /s which may take a
    great amount of time by big drives.

The complete source code is:

code:

IF setconsole("hide")
ENDIF
;
; NT/95 check kixtart version - Kixtart 3.63
;
; (c) scripting@wanadoo.nl - 2001
;
; vs 1.03 - program
;
; 1.00 (20010330) original version
; 1.01 (20010330) - introduction of $log_mode. $log_mode="yes" means
; the creation of a dynamic list.
; - introduction of $logfile. this file contains
; dynamic list information.
; 1.02 (20010330) - GetFileTime information also to $logfile entries.
; 1.03 (20010330) - check also KXRPC module.
; - GetFileSize information also to $logfile entries.
; - introduction of $debug_file. change $logfile to $log_file.
;
$prgrm_version="1.03"
;
$tmp_directory=ExpandEnvironmentVars("%tmp%")
IF (substr($tmp_directory,len($tmp_directory),1) <> "\")
$tmp_directory=$tmp_directory+"\"
ENDIF
;
$debug_mode="no" ; - yes/no -
$debug_file=$tmp_directory+"kix-info.txt"
$log_mode="no" ; - yes/no -
$log_file="c:\kix-versions.txt"
;
IF (@inwin = 1)
$NT_mode="yes"
ELSE
$NT_mode="no"
ENDIF
;
$os=""
SELECT
CASE ($NT_mode = "yes") AND (@dos = "5.0") ; - Windows 2000 -
$os="W2K"
CASE ($NT_mode = "yes") ; - Windows NT -
$os="NT4"
CASE ($NT_mode <> "yes") AND (@dos = "4.90") ; - Windows ME -
$os="ME"
CASE ($NT_mode <> "yes") AND (@dos = "4.10") ; - Windows 98 -
$os="W98"
CASE ($NT_mode <> "yes") AND (@dos = "4.0") ; - Windows 95 -
$os="W95"
CASE 1
$os="???" ; - undetermined -
ENDSELECT
;
del $tmp_directory+"kixtart.txt"
IF ($debug_mode = "yes")
IF (RedirectOutput($debug_file,1) = 0)
ENDIF
ENDIF

? "Kixtart "+@kix+" - "+$os+" version check (vs "+$prgrm_version+")"+" "+$time_start
?

; --------------------------------------------------------------------------
; - init kixtart version information -
; --------------------------------------------------------------------------

$max_kix_files=5
DIM $kix_files[$max_kix_files+1]
DIM $kix_info[$max_kix_files+1]
DIM $kix_found[$max_kix_files+1]
$kix_files[1]="kix32.exe" $kix_info[1]="" $kix_found[1]=""
$kix_files[2]="kx16.dll" $kix_info[2]="" $kix_found[2]=""
$kix_files[3]="kx32.dll" $kix_info[3]="" $kix_found[3]=""
$kix_files[4]="kx95.dll" $kix_info[4]="" $kix_found[4]=""
$kix_files[5]="kxrpc.exe" $kix_info[5]="" $kix_found[5]=""
;
$number_of_versions=13
$max_kix_version=$max_kix_files*20
DIM $kix_vs_info[$max_kix_version+1]
; $kix_vs_info[ 0]=" filename name filename version size date "
$kix_vs_info[ 1]="3.34 kix32.exe 106496 1996/08/01 00:00:00"
$kix_vs_info[21]="3.34 kx16.dll 48128 1996/07/24 00:00:00"
$kix_vs_info[41]="3.34 kx32.dll 5632 1996/07/24 00:00:00"
$kix_vs_info[61]="3.34 kx95.dll - missing file - "
$kix_vs_info[81]="3.34 kxrpc.exe - missing file - "
$kix_vs_info[ 2]="3.35 kix32.exe 108544 1996/11/12 03:35:00"
$kix_vs_info[22]="3.35 kx16.dll 47104 1996/11/12 03:35:00"
$kix_vs_info[42]="3.35 kx32.dll 22016 1996/11/12 03:35:00"
$kix_vs_info[62]="3.35 kx95.dll - missing file - "
$kix_vs_info[82]="3.35 kxrpc.exe - missing file - "
$kix_vs_info[ 3]="3.47 kix32.exe KIX32 KIX32.EXE 3, 47, 0, 0 131072 1998/02/16 21:06:20"
$kix_vs_info[23]="3.47 kx16.dll 46592 1998/02/10 03:46:00"
$kix_vs_info[43]="3.47 kx32.dll KX32 KX32.DLL 3, 44, 0, 0 29184 1998/02/10 03:46:00"
$kix_vs_info[63]="3.47 kx95.dll KX95 KX95.DLL 3, 44, 0, 0 31744 1998/02/10 03:46:00"
$kix_vs_info[83]="3.47 kxrpc.exe KXRPC KXRPC.EXE 3, 44, 0, 0 67072 1998/02/10 03:46:00"
$kix_vs_info[ 4]="3.49 kix32.exe KIX32 KIX32.EXE 3, 49, 0, 0 137216 1998/09/23 17:53:04"
$kix_vs_info[24]="3.49 kx16.dll 46592 1998/09/19 03:48:00"
$kix_vs_info[44]="3.49 kx32.dll KX32 KX32.DLL 3, 44, 0, 0 29184 1998/09/19 03:48:00"
$kix_vs_info[64]="3.49 kx95.dll KX95 KX95.DLL 3, 44, 0, 0 31744 1998/09/19 03:48:00"
$kix_vs_info[84]="3.49 kxrpc.exe KXRPC KXRPC.EXE 3, 44, 0, 0 67072 1998/09/19 03:48:00"
$kix_vs_info[ 5]="3.50 kix32.exe KIX32 KIX32.EXE 3, 50, 0, 0 131072 1998/10/20 12:41:06"
$kix_vs_info[25]="3.50 kx16.dll 46592 1998/09/19 03:48:00"
$kix_vs_info[45]="3.50 kx32.dll KX32 KX32.DLL 3, 44, 0, 0 29184 1998/09/19 03:48:00"
$kix_vs_info[65]="3.50 kx95.dll KX95 KX95.DLL 3, 44, 0, 0 31744 1998/09/19 03:48:00"
$kix_vs_info[85]="3.50 kxrpc.exe KXRPC KXRPC.EXE 3, 44, 0, 0 67072 1998/09/19 03:48:00"
$kix_vs_info[ 6]="3.51 kix32.exe KIX32 KIX32.EXE 3, 51, 0, 0 131072 1999/01/05 18:40:22"
$kix_vs_info[26]="3.51 kx16.dll 46592 1998/09/19 02:48:00"
$kix_vs_info[46]="3.51 kx32.dll KX32 KX32.DLL 3, 44, 0, 0 29184 1998/09/19 02:48:00"
$kix_vs_info[66]="3.51 kx95.dll KX95 KX95.DLL 3, 44, 0, 0 31744 1998/09/19 02:48:00"
$kix_vs_info[86]="3.51 kxrpc.exe KXRPC KXRPC.EXE 3, 44, 0, 0 67072 1998/09/19 02:48:00"
$kix_vs_info[ 7]="3.53 kix32.exe KIX32 KIX32.EXE 3, 53, 0, 0 135168 1999/04/29 12:32:01"
$kix_vs_info[27]="3.53 kx16.dll 46592 1998/09/19 03:48:00"
$kix_vs_info[47]="3.53 kx32.dll KX32 KX32.DLL 3, 44, 0, 0 29184 1998/09/19 03:48:00"
$kix_vs_info[67]="3.53 kx95.dll KX95 KX95.DLL 3, 44, 0, 0 31744 1998/09/19 03:48:00"
$kix_vs_info[87]="3.53 kxrpc.exe KXRPC KXRPC.EXE 3, 44, 0, 0 67072 1998/09/19 03:48:00"
$kix_vs_info[ 8]="3.54 kix32.exe KIX32 KIX32.EXE 3, 54, 0, 0 135168 1999/05/01 12:27:06"
$kix_vs_info[28]="3.54 kx16.dll 46592 1998/09/19 03:48:00"
$kix_vs_info[48]="3.54 kx32.dll KX32 KX32.DLL 3, 44, 0, 0 29184 1998/09/19 03:48:00"
$kix_vs_info[68]="3.54 kx95.dll KX95 KX95.DLL 3, 44, 0, 0 31744 1998/09/19 03:48:00"
$kix_vs_info[88]="3.54 kxrpc.exe KXRPC KXRPC.EXE 3, 44, 0, 0 67072 1998/09/19 03:48:00"
$kix_vs_info[ 9]="3.55 kix32.exe KIX32 KIX32.EXE 3, 55, 0, 0 135168 1999/05/17 12:22:06"
$kix_vs_info[29]="3.55 kx16.dll 46592 1998/09/19 03:48:00"
$kix_vs_info[49]="3.55 kx32.dll KX32 KX32.DLL 3, 44, 0, 0 29184 1998/09/19 03:48:00"
$kix_vs_info[69]="3.55 kx95.dll KX95 KX95.DLL 3, 44, 0, 0 31744 1998/09/19 03:48:00"
$kix_vs_info[89]="3.55 kxrpc.exe KXRPC KXRPC.EXE 3, 44, 0, 0 67072 1998/09/19 03:48:00"
$kix_vs_info[10]="3.60 kix32.exe KIX32 KIX32.EXE 3, 60, 0, 0 159744 1999/09/01 16:00:00"
$kix_vs_info[30]="3.60 kx16.dll 47104 1999/09/01 16:00:00"
$kix_vs_info[50]="3.60 kx32.dll KX32 KX32.DLL 3, 60, 0, 0 32768 1999/09/01 16:00:00"
$kix_vs_info[70]="3.60 kx95.dll KX95 KX95.DLL 3, 60, 0, 0 36864 1999/09/01 16:00:00"
$kix_vs_info[90]="3.60 kxrpc.exe KXRPC KXRPC.EXE 3, 60, 0, 0 57344 1999/09/01 16:00:00"
$kix_vs_info[11]="3.61 kix32.exe KIX32 KIX32.EXE 3, 61, 0, 0 163840 1999/10/08 14:37:15"
$kix_vs_info[31]="3.61 kx16.dll 47104 1999/09/01 16:00:00"
$kix_vs_info[51]="3.61 kx32.dll KX32 KX32.DLL 3, 60, 0, 0 32768 1999/09/01 16:00:00"
$kix_vs_info[71]="3.61 kx95.dll KX95 KX95.DLL 3, 60, 0, 0 36864 1999/09/01 16:00:00"
$kix_vs_info[91]="3.61 kxrpc.exe KXRPC KXRPC.EXE 3, 60, 0, 0 57344 1999/09/01 16:00:00"
$kix_vs_info[12]="3.62 kix32.exe KIX32 KIX32.EXE 3, 62, 0, 0 163840 1999/11/24 16:50:01"
$kix_vs_info[32]="3.62 kx16.dll 47104 1999/09/01 15:00:00"
$kix_vs_info[52]="3.62 kx32.dll KX32 KX32.DLL 3, 60, 0, 0 32768 1999/09/01 15:00:00"
$kix_vs_info[72]="3.62 kx95.dll KX95 KX95.DLL 3, 60, 0, 0 36864 1999/09/01 15:00:00"
$kix_vs_info[92]="3.62 kxrpc.exe KXRPC KXRPC.EXE 3, 60, 0, 0 57344 1999/09/01 15:00:00"
$kix_vs_info[13]="3.63 kix32.exe KIX32 KIX32.EXE 3, 63, 0, 0 163840 2000/10/15 14:50:20"
$kix_vs_info[33]="3.63 kx16.dll 47104 1999/09/01 16:00:00"
$kix_vs_info[53]="3.63 kx32.dll KX32 KX32.DLL 3, 60, 0, 0 32768 1999/09/01 16:00:00"
$kix_vs_info[73]="3.63 kx95.dll KX95 KX95.DLL 3, 60, 0, 0 36864 1999/09/01 16:00:00"
$kix_vs_info[93]="3.63 kxrpc.exe KXRPC KXRPC.EXE 3, 60, 0, 0 57344 1999/09/01 16:00:00"

; --------------------------------------------------------------------------
; - check kixtart version at local drive -
; --------------------------------------------------------------------------

$source_directory=@curdir
IF ($NT_mode = "yes")
$destination_directory=ReadValue("HKEY_LOCAL_MACHINE\software\microsoft\windows NT\currentversion", "SystemRoot")
ELSE
$destination_directory=ReadValue("HKEY_LOCAL_MACHINE\software\microsoft\windows\currentversion", "SystemRoot")
ENDIF
IF (len($destination_directory) = 0)
$destination_directory="c:\"
ENDIF
IF (substr($destination_directory,len($destination_directory),1) <> "\")
$destination_directory=$destination_directory+"\"
ENDIF
IF ($debug_mode = "yes")
$destination_directory="c:\" ; <--- change line to check another drive
ENDIF
;
$search_program="kix32.exe"
$search_key=$destination_directory+$search_program
IF (exist("%temp%\kixtart.tmp") = 1)
del %temp%\kixtart.tmp
ENDIF
SHELL "%comspec% /e:1024 /c dir "+$search_key+" /b /s >%temp%\kixtart.tmp"
SHELL "%comspec% /e:1024 /c echo -end.of.list- >>%temp%\kixtart.tmp"
IF (exist ("%temp%\kixtart.tmp") = 1)
IF open(1,"%temp%\kixtart.tmp")
ENDIF
;
$found="no"
$count=0
WHILE ($found = "no")
$result=readline(1)
IF (@error <> 0) or (instr($result,"-end.of.list-") <> 0)
$found="yes"
ELSE
$count=$count+1
$source_directory=substr($result,1,len($result)-len($search_program))
? "- "+substr(" ",1,5-len("$count"))+$count+" "+$result
GOSUB "check_version_info"
ENDIF
LOOP
IF close(1)
ENDIF
IF ($count <> 0)
IF ($count = 1)
? "Informative KIX-VERSION: "+$count+" file found with key '"+$search_key+" /s'."
ELSE
? "Informative KIX-VERSION: "+$count+" files found with key '"+$search_key+" /s'."
ENDIF
ENDIF
ENDIF
IF (exist("%temp%\kixtart.tmp") = 1)
del %temp%\kixtart.tmp
ENDIF
GOTO "end_script"
EXIT

; --------------------------------------------------------------------------
; - check kixtart version at specified directory -
; --------------------------------------------------------------------------

:check_version_info
IF (substr($source_directory,len($source_directory),1) <> "\")
$source_directory=$source_directory+"\"
ENDIF
;
$i=1
WHILE ($i <= $max_kix_files)
$source_file=$source_directory+$kix_files[$i]
IF (exist($source_file) = 1)
IF ($debug_mode = "yes")
?
? "Informative VERSION: "+LCASE($source_file)
?
? " size = "+GetFileSize($source_file)
? " time = "+GetFileTime($source_file)
?
? " company name "+GetFileVersion($source_file,"company name")
? " filedescription "+GetFileVersion($source_file,"filedescription")
? " fileversion "+GetFileVersion($source_file,"fileversion")
? " internalname "+GetFileVersion($source_file,"internalname")
? " language "+GetFileVersion($source_file,"language")
? " legalcopyright "+GetFileVersion($source_file,"legalcopyright")
? " legaltrademarks "+GetFileVersion($source_file,"legaltrademarks")
? " originalfilename "+GetFileVersion($source_file,"originalfilename")
? " privatebuild "+GetFileVersion($source_file,"privatebuild")
? " productname "+GetFileVersion($source_file,"productname")
? " productversion "+GetFileVersion($source_file,"productversion")
? " specialbuild "+GetFileVersion($source_file,"specialbuild")
ENDIF
$kix_file_size=GetFileSize($source_file)
$kix_file_time=GetFileTime($source_file)
$kix_internalname=GetFileVersion($source_file,"internalname")
$kix_original_filename=GetFileVersion($source_file,"originalfilename")
$kix_product_version=GetFileVersion($source_file,"productversion")
;
$kix_info[$i]=""
$kix_info[$i]=$kix_info[$i]+substr($kix_files[$i]+" ",1,10)+" "
;
$kix_info[$i]=$kix_info[$i]+substr($kix_internalname+" ",1,5)+" "
$kix_info[$i]=$kix_info[$i]+substr($kix_original_filename+" ",1,10)+" "
$kix_info[$i]=$kix_info[$i]+substr($kix_product_version+" ",1,11)+" "
$kix_info[$i]=$kix_info[$i]+substr(" ",1,7-len("$kix_file_size"))+$kix_file_size+" "
IF (len($kix_file_time) > 1)
$kix_info[$i]=$kix_info[$i]+$kix_file_time
ELSE
$kix_info[$i]=$kix_info[$i]+" - missing file - "
ENDIF
$kix_info[$i]=$kix_info[$i]+" "
$kix_info[$i]=$kix_info[$i]+$source_directory
ELSE
$kix_info[$i]=""
$kix_info[$i]=$kix_info[$i]+substr($kix_files[$i]+" ",1,10)+" "
$kix_info[$i]=$kix_info[$i]+"- missing file -"
ENDIF
$i=$i+1
LOOP
;
$version=substr($kix_info[1],29,1)+"."+substr($kix_info[1],32,2)
IF ($version = " . ")
$version="?.??"
ENDIF
$kix_found[1]=""
$kix_found[2]=""
$kix_found[3]=""
$kix_found[4]=""
$kix_found[5]=""
; - check_version -
$k=1
WHILE ($k <= $number_of_versions)
$l=1
WHILE ($l <= $max_kix_files)
IF (LTRIM(RTRIM(substr($kix_info[$l],1,52))) = LTRIM(RTRIM(substr($kix_vs_info[20*($l-1)+$k],6,52))))
$kix_found[$l]=$kix_found[$l]+"-"+substr($kix_vs_info[20*($l-1)+$k],1,4)+"-"
ENDIF
$l=$l+1
LOOP
$k=$k+1
LOOP
IF ($debug_mode = "yes")
?
ENDIF
? " -version- "+$version
? $kix_files[1]+" " +$kix_found[1]+" "+GetFileTime($source_directory+$kix_files[1])+" "+GetFileSize($source_directory+$kix_files[1])
? $kix_files[2]+" "+$kix_found[2]+" "+GetFileTime($source_directory+$kix_files[2])+" "+GetFileSize($source_directory+$kix_files[2])
? $kix_files[3]+" "+$kix_found[3]+" "+GetFileTime($source_directory+$kix_files[3])+" "+GetFileSize($source_directory+$kix_files[3])
? $kix_files[4]+" "+$kix_found[4]+" "+GetFileTime($source_directory+$kix_files[4])+" "+GetFileSize($source_directory+$kix_files[4])
? $kix_files[5]+" " +$kix_found[5]+" "+GetFileTime($source_directory+$kix_files[5])+" "+GetFileSize($source_directory+$kix_files[5])
IF ($version = "?.??")
$version=substr($kix_found[1],2,4)
ENDIF
IF (instr($kix_found[1], LTRIM(RTRIM($version))) <> 0) AND
(instr($kix_found[2], LTRIM(RTRIM($kix_found[1]))) <> 0) AND
(instr($kix_found[3], LTRIM(RTRIM($kix_found[1]))) <> 0) AND
(instr($kix_found[4], LTRIM(RTRIM($kix_found[1]))) <> 0) AND
THEN
$kix_ok="yes"
ELSE
$kix_ok="no"
ENDIF
IF ($kix_ok = "yes")
? " -version- "+$version+" found"
ELSE
? " -version- "+$version+" incomplete or missing file(s)"
ENDIF
;
IF ($log_mode = "yes")
$file=$log_file
$section=$os+" "+$version+" " ; - ok/error -
$key=LCASE(@wksta)+" "+$version+" "+$os
$xxx=""
$xxx=$xxx+substr(@date,1,4)+substr(@date,6,2)+substr(@date,9,2)
$xxx=$xxx+"_"
$xxx=$xxx+@time+" "
$xxx=$xxx+$version+" "
$xxx=$xxx+LTRIM(RTRIM($kix_files[1]))+"=('"+$kix_found[1]+"','"+GetFileTime($source_directory+$kix_files[1])+"') "
$xxx=$xxx+LTRIM(RTRIM($kix_files[2]))+"=('"+$kix_found[2]+"','"+GetFileTime($source_directory+$kix_files[2])+"') "
$xxx=$xxx+LTRIM(RTRIM($kix_files[3]))+"=('"+$kix_found[3]+"','"+GetFileTime($source_directory+$kix_files[3])+"') "
$xxx=$xxx+LTRIM(RTRIM($kix_files[4]))+"=('"+$kix_found[4]+"','"+GetFileTime($source_directory+$kix_files[4])+"') "
$xxx=$xxx+LTRIM(RTRIM($kix_files[5]))+"=('"+$kix_found[5]+"','"+GetFileTime($source_directory+$kix_files[5])+"') "
$xxx=$xxx+"directory=('"+$source_directory+"')"
IF ($debug_mode = "yes")
?
? " file = "+$file
IF ($kix_ok = "yes")
? " section = "+$section+"ok"
ELSE
? " section = "+$section+"error"
ENDIF
? " key = "+$key
? " xxx = "+$xxx
?
ENDIF
IF ($kix_ok = "yes")
IF writeprofilestring($file, $section+"error", $key, "")
ENDIF
IF writeprofilestring($file, $section+"ok", $key, $xxx+" -ok-")
ENDIF
ELSE
IF writeprofilestring($file, $section+"ok", $key, "")
ENDIF
IF writeprofilestring($file, $section+"error", $key, $xxx+" -error-")
ENDIF
ENDIF
ENDIF
RETURN

; --------------------------------------------------------------------------
; - end -
; --------------------------------------------------------------------------

:end_script
IF (RedirectOutput("CON") = 0)
ENDIF
IF ($debug_mode = "yes")
?
? "Informative KIX-VERSION: output written to '"+$debug_file+"'."
ENDIF


The complete run for known versions is:

code:

Kixtart 3.63 - NT4 version check (vs 1.03)

- 1 f:\versions\kix334\kix32.exe
-version- ?.??
kix32.exe -3.34- 1996/08/01 00:00:00 106496
kx16.dll -3.34- 1996/07/24 00:00:00 48128
kx32.dll -3.34- 1996/07/24 00:00:00 5632
kx95.dll -3.34--3.35-
kxrpc.exe -3.34--3.35-
-version- 3.34 found
- 2 f:\versions\kix335\kix32.exe
-version- ?.??
kix32.exe -3.35- 1996/11/12 03:35:00 108544
kx16.dll -3.35- 1996/11/12 03:35:00 47104
kx32.dll -3.35- 1996/11/12 03:35:00 22016
kx95.dll -3.34--3.35-
kxrpc.exe -3.34--3.35-
-version- 3.35 found
- 3 f:\versions\kix347\kix32.exe
-version- 3.47
kix32.exe -3.47- 1998/02/16 21:06:20 131072
kx16.dll -3.47--3.49--3.50--3.51--3.53--3.54--3.55- 1998/02/10 03:46:00 46592
kx32.dll -3.47--3.49--3.50--3.51--3.53--3.54--3.55- 1998/02/10 03:46:00 29184
kx95.dll -3.47--3.49--3.50--3.51--3.53--3.54--3.55- 1998/02/10 03:46:00 31744
kxrpc.exe -3.47--3.49--3.50--3.51--3.53--3.54--3.55- 1998/02/10 03:46:00 67072
-version- 3.47 found
- 4 f:\versions\kix349\kix32.exe
-version- 3.49
kix32.exe -3.49- 1998/09/23 17:53:04 137216
kx16.dll -3.47--3.49--3.50--3.51--3.53--3.54--3.55- 1998/09/19 03:48:00 46592
kx32.dll -3.47--3.49--3.50--3.51--3.53--3.54--3.55- 1998/09/19 03:48:00 29184
kx95.dll -3.47--3.49--3.50--3.51--3.53--3.54--3.55- 1998/09/19 03:48:00 31744
kxrpc.exe -3.47--3.49--3.50--3.51--3.53--3.54--3.55- 1998/09/19 03:48:00 67072
-version- 3.49 found
- 5 f:\versions\kix350\kix32.exe
-version- 3.50
kix32.exe -3.50- 1998/10/20 12:41:06 131072
kx16.dll -3.47--3.49--3.50--3.51--3.53--3.54--3.55- 1998/09/19 03:48:00 46592
kx32.dll -3.47--3.49--3.50--3.51--3.53--3.54--3.55- 1998/09/19 03:48:00 29184
kx95.dll -3.47--3.49--3.50--3.51--3.53--3.54--3.55- 1998/09/19 03:48:00 31744
kxrpc.exe -3.47--3.49--3.50--3.51--3.53--3.54--3.55- 1998/09/19 03:48:00 67072
-version- 3.50 found
- 6 f:\versions\kix351\kix32.exe
-version- 3.51
kix32.exe -3.51- 1999/01/05 18:40:22 131072
kx16.dll -3.47--3.49--3.50--3.51--3.53--3.54--3.55- 1998/09/19 02:48:00 46592
kx32.dll -3.47--3.49--3.50--3.51--3.53--3.54--3.55- 1998/09/19 02:48:00 29184
kx95.dll -3.47--3.49--3.50--3.51--3.53--3.54--3.55- 1998/09/19 02:48:00 31744
kxrpc.exe -3.47--3.49--3.50--3.51--3.53--3.54--3.55- 1998/09/19 02:48:00 67072
-version- 3.51 found
- 7 f:\versions\kix353\kix32.exe
-version- 3.53
kix32.exe -3.53- 1999/04/29 12:32:01 135168
kx16.dll -3.47--3.49--3.50--3.51--3.53--3.54--3.55- 1998/09/19 03:48:00 46592
kx32.dll -3.47--3.49--3.50--3.51--3.53--3.54--3.55- 1998/09/19 03:48:00 29184
kx95.dll -3.47--3.49--3.50--3.51--3.53--3.54--3.55- 1998/09/19 03:48:00 31744
kxrpc.exe -3.47--3.49--3.50--3.51--3.53--3.54--3.55- 1998/09/19 03:48:00 67072
-version- 3.53 found
- 8 f:\versions\kix354\kix32.exe
-version- 3.54
kix32.exe -3.54- 1999/05/01 12:27:06 135168
kx16.dll -3.47--3.49--3.50--3.51--3.53--3.54--3.55- 1998/09/19 03:48:00 46592
kx32.dll -3.47--3.49--3.50--3.51--3.53--3.54--3.55- 1998/09/19 03:48:00 29184
kx95.dll -3.47--3.49--3.50--3.51--3.53--3.54--3.55- 1998/09/19 03:48:00 31744
kxrpc.exe -3.47--3.49--3.50--3.51--3.53--3.54--3.55- 1998/09/19 03:48:00 67072
-version- 3.54 found
- 9 f:\versions\kix355\kix32.exe
-version- 3.55
kix32.exe -3.55- 1999/05/17 12:22:06 135168
kx16.dll -3.47--3.49--3.50--3.51--3.53--3.54--3.55- 1998/09/19 03:48:00 46592
kx32.dll -3.47--3.49--3.50--3.51--3.53--3.54--3.55- 1998/09/19 03:48:00 29184
kx95.dll -3.47--3.49--3.50--3.51--3.53--3.54--3.55- 1998/09/19 03:48:00 31744
kxrpc.exe -3.47--3.49--3.50--3.51--3.53--3.54--3.55- 1998/09/19 03:48:00 67072
-version- 3.55 found
- 10 f:\versions\kix360\kix32.exe
-version- 3.60
kix32.exe -3.60- 1999/09/01 16:00:00 159744
kx16.dll -3.60--3.61--3.62--3.63- 1999/09/01 16:00:00 47104
kx32.dll -3.60--3.61--3.62--3.63- 1999/09/01 16:00:00 32768
kx95.dll -3.60--3.61--3.62--3.63- 1999/09/01 16:00:00 36864
kxrpc.exe -3.60--3.61--3.62--3.63- 1999/09/01 16:00:00 57344
-version- 3.60 found
- 11 f:\versions\kix361\kix32.exe
-version- 3.61
kix32.exe -3.61- 1999/10/08 14:37:15 163840
kx16.dll -3.60--3.61--3.62--3.63- 1999/09/01 16:00:00 47104
kx32.dll -3.60--3.61--3.62--3.63- 1999/09/01 16:00:00 32768
kx95.dll -3.60--3.61--3.62--3.63- 1999/09/01 16:00:00 36864
kxrpc.exe -3.60--3.61--3.62--3.63- 1999/09/01 16:00:00 57344
-version- 3.61 found
- 12 f:\versions\kix362\kix32.exe
-version- 3.62
kix32.exe -3.62- 1999/11/24 16:50:01 163840
kx16.dll -3.60--3.61--3.62--3.63- 1999/09/01 15:00:00 47104
kx32.dll -3.60--3.61--3.62--3.63- 1999/09/01 15:00:00 32768
kx95.dll -3.60--3.61--3.62--3.63- 1999/09/01 15:00:00 36864
kxrpc.exe -3.60--3.61--3.62--3.63- 1999/09/01 15:00:00 57344
-version- 3.62 found
- 13 f:\versions\kix363\kix32.exe
-version- 3.63
kix32.exe -3.63- 2000/10/15 14:50:20 163840
kx16.dll -3.60--3.61--3.62--3.63- 1999/09/01 16:00:00 47104
kx32.dll -3.60--3.61--3.62--3.63- 1999/09/01 16:00:00 32768
kx95.dll -3.60--3.61--3.62--3.63- 1999/09/01 16:00:00 36864
kxrpc.exe -3.60--3.61--3.62--3.63- 1999/09/01 16:00:00 57344
-version- 3.63 found
Informative KIX-VERSION: 13 files found with key 'f:\kix32.exe /s'.


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

Top
#54781 - 2001-03-30 08:07 PM Re: KIXTART-TOOL: correct version? now check all kixtart files on your local pc.
Jack Lothian Offline
MM club member
*****

Registered: 1999-10-22
Posts: 1169
Loc: Ottawa,Ontario, Canada
Amazing what turns up on this board. I have often though of doing something like this but somehow I never have the time. Thanks.
_________________________
Jack

Top
#54782 - 2001-04-26 03:45 AM Re: KIXTART-TOOL: correct version? now check all kixtart files on your local pc.
MCA Offline
KiX Supporter
*****

Registered: 2000-04-28
Posts: 5152
Loc: Netherlands, EU
Dear.

Script version.kix has been updated for version kixtart 4.00 beta 2

Example of output:

code:

Kixtart 3.63 - NT4 version check (vs 1.07)

- 1 c:\winnt\kix32.exe
-version- 3.63
kix32.exe -3.63- 2000/10/15 00:00:00 163840
kx16.dll -3.60--3.61--3.62--3.63- 1999/09/01 00:00:00 47104
kx32.dll -3.60--3.61--3.62--3.63- 1999/09/01 00:00:00 32768
kx95.dll -3.60--3.61--3.62--3.63- 1999/09/01 00:00:00 36864
kxrpc.exe -3.34--3.35-
-version- 3.63 found
- 2 c:\kix400b1\kix32.exe
-version- 4.0c b1
kix32.exe -4.0 b1--4.0c b1- 2001/04/01 16:00:00 180224
kx16.dll -4.0 b1--4.0c b1--4.0 b2--4.0c b2- 2001/04/01 16:00:00 47104
kx32.dll -4.0 b1--4.0c b1--4.0 b2--4.0c b2- 2001/04/01 16:00:00 32768
kx95.dll -4.0 b1--4.0c b1--4.0 b2--4.0c b2- 2001/04/01 16:00:00 36864
kxrpc.exe -4.0 b1--4.0c b1--4.0 b2--4.0c b2- 2001/04/01 16:00:00 57344
-version- 4.0c b1 found
- 3 c:\kix400b2\kix32.exe
-version- 4.0c b2
kix32.exe -4.0 b2--4.0c b2- 2001/04/24 13:52:01 180224
kx16.dll -4.0 b1--4.0c b1--4.0 b2--4.0c b2- 2001/04/01 16:00:00 47104
kx32.dll -4.0 b1--4.0c b1--4.0 b2--4.0c b2- 2001/04/01 16:00:00 32768
kx95.dll -4.0 b1--4.0c b1--4.0 b2--4.0c b2- 2001/04/01 16:00:00 36864
kxrpc.exe 2001/04/23 21:42:16 61440
-version- 4.0c b2 found
Informative Version.KIX: 3 files found with key 'c:\winnt\kix32.exe /s'.



Greetings.

Site: http://home.wanadoo.nl/scripting

_________________________
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

Top
#54783 - 2001-07-13 06:49 AM Re: KIXTART-TOOL: correct version? now check all kixtart files on your local pc.
MCA Offline
KiX Supporter
*****

Registered: 2000-04-28
Posts: 5152
Loc: Netherlands, EU
Dear,

We have create and publish the new tool kixcheck. It doesn't
need any parameter. It will check all available KiXtart modules
addressable by your %path% specification.
In incorrect or incomplete will automatically delete the c:\kix????.ok
files from your local workstation.
It isn't necessary to remove them, because the program returns also an
ERRORLEVEL, which can be used by your BATch file.
Possible codes:

code:

%0\..\kixcheck.exe
if errorlevel 1 %0\..\kix363update.exe /q


or
code:

%0\..\kixcheck.exe >nul
if not exist c:\kix363.ok %0\..\kix363update.exe /q


or
code:

%0\..\kix363update.exe /q


The last one will always update your environment with the correct
files.
Possible output of KixCheck can be
code:

KixCheck 1.03 (c) scripting@wanadoo.nl 2001

Found as C:\WINDOWS\KIX32.EXE (15-10-2000 14:50:40 163840 bytes)
+ C:\WINDOWS\KX16.DLL (01-09-1999 16:00:00 47104 bytes)
+ C:\WINDOWS\KX32.DLL (01-09-1999 16:00:00 32768 bytes)
+ C:\WINDOWS\KX95.DLL (01-09-1999 16:00:00 36864 bytes)

path C:\WINDOWS;C:\WINDOWS\COMMAND

KiXtart environment: complete



See also the new topic
http://kixtart.org/cgi-bin/ultimatebb.cgi?ubb=get_topic&f=2&t=001950
for furthur comment from other other members.
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

Top
#54784 - 2001-11-21 06:44 PM Re: KIXTART-TOOL: correct version? now check all kixtart files on your local pc.
MCA Offline
KiX Supporter
*****

Registered: 2000-04-28
Posts: 5152
Loc: Netherlands, EU
Dear,

A new version of version has been released.
The public releases:
- kixtart 4.00 RC3 (build 50)
- kixtart 4.00 final release (build 62)
are included.
greetings.


btw: an alternative for verifying your kixtart environment is by using our
tool kixcheck.exe, which doesn't need an update.
The related topic is:
http://kixtart.org/cgi-bin/ultimatebb.cgi?ubb=get_topic&f=2&t=001950

_________________________
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

Top
#54785 - 2001-11-27 01:34 AM Re: KIXTART-TOOL: correct version? now check all kixtart files on your local pc.
MCA Offline
KiX Supporter
*****

Registered: 2000-04-28
Posts: 5152
Loc: Netherlands, EU
Dear,

Script version.kix has been updated for new Kixtart 4.01 build 64 release.
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

Top
#54786 - 2002-01-22 07:04 AM Re: KIXTART-TOOL: correct version? now check all kixtart files on your local pc.
MCA Offline
KiX Supporter
*****

Registered: 2000-04-28
Posts: 5152
Loc: Netherlands, EU
Dear,
Script version.kix has been updated for new Kixtart 4.02 build 71 release.
Minor change in presentation of results:
  • "4.XX" change to "4.XXw" for console-less version WKIX32
  • "4.XXc" change to "4.XX" for console version KIX32
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

Top
#54787 - 2002-04-10 05:07 AM Re: KIXTART-TOOL: correct version? now check all kixtart files on your local pc.
MCA Offline
KiX Supporter
*****

Registered: 2000-04-28
Posts: 5152
Loc: Netherlands, EU
Dear,

We have made some changes to our version.kix script.
Currently it is compliant with KiXtart 4.10 build 84 release.
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

Top
Page 1 of 1 1


Moderator:  Glenn Barnas, NTDOC, Arend_, Jochen, Radimus, Allen, ShaneEP, Ruud van Velsen, Mart 
Hop to:
Shout Box

Who's Online
0 registered and 2220 anonymous users online.
Newest Members
Viginette, ManuvdWielNL, Sir_Barrington, batdk82, StuTheCoder
17888 Registered Users

Generated in 0.08 seconds in which 0.047 seconds were spent on a total of 12 queries. Zlib compression enabled.

Search the board with:
superb Board Search
or try with google:
Google
Web kixtart.org