; IF setconsole("hide") ; ENDIF ; ; NT/95 check kixtart version - Kixtart 3.63, 4.00, 4.01, 4.02, 4.10 ; ; (c) scripting@wanadoo.nl - 2001, 2002 ; ; vs 2.01 - 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.03p (20010330) - check also KXRPC module. ; - GetFileSize information also to $logfile entries. ; - introduction of $debug_file. change $logfile to $log_file. ; 1.04 (20010401) - information about "kix2001 beta1" (= 4.0). ; - kix32.exe ; - kix32c.exe ; - search also @curdir for a kixtart version. ; 1.05p (20010401) - kixtart 4.00 beta1 compliancy ; - add user information about output generation ; 1.06p (20010410) - remove illegal statement THEN ; 1.07p (20010425) - kixtart 4.00 beta2 compliancy ; 1.08p (20010426) - kixtart 4.00 beta2a compliancy ; 1.09 (20010701) - minor change with $log_file ; 1.10p (20010710) - standardization of $debug_file value ; 1.11p (20010720) - kixtart 4.00 rc1 (build 45) compliancy ; 1.12 (20011120) - add "windows XP" ; - suppress SetConsole("hide") ; 1.13p (20011120) - kixtart 4.00 rc3 (build 50) compliancy ; - kixtart 4.00 final release (build 62) compliancy ; 1.14p (20011125) - kixtart 4.01 final release (build 64) compliancy ; 2.00p (20020120) - kixtart 4.02 final release (build 71) compliancy ; - change "4.XXc" to "4.XX" (= kix32) and "4.XX" to "4.XXw" (= wkix32) ; 2.01p (20020410) - kixtart 4.10 beta1 (build 84) compliancy ; $prgrm_version="2.01" ; $tmp_directory=ExpandEnvironmentVars("%tmp%") IF (substr($tmp_directory,len($tmp_directory),1) <> "\") $tmp_directory=$tmp_directory+"\" ENDIF $tmp_file=$tmp_directory+"kixtart.tmp" ; --------------------------------------------------------------------------- ; - site defined settings - ; --------------------------------------------------------------------------- $debug_mode="no" ; - no = screen output will be generated ; - yes = output file will be generated will detailed information $debug_file=$tmp_directory+"kix-info.log" $log_mode="no" ; - yes/no - creation of dynamic list - $log_file=$tmp_directory+"kix-versions.txt" ; --------------------------------------------------------------------------- ; - - ; --------------------------------------------------------------------------- IF (@inwin = 1) $NT_mode="yes" ELSE $NT_mode="no" ENDIF ; $os="" $os_dos=@dos SELECT CASE ($NT_mode = "yes") AND ($os_dos = "5.1") ; - Windows XP - $os="XP" CASE ($NT_mode = "yes") AND ($os_dos = "5.0") ; - Windows 2000 - $os="W2K" CASE ($NT_mode = "yes") ; - Windows NT - $os="NT4" CASE ($NT_mode <> "yes") AND ($os_dos = "4.90") ; - Windows ME - $os="ME" CASE ($NT_mode <> "yes") AND ($os_dos = "4.10") ; - Windows 98 - $os="W98" CASE ($NT_mode <> "yes") AND ($os_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]="" ; $max_versions=50 $number_of_versions=31 $max_kix_version=($max_kix_files*$max_versions) DIM $kix_vs_info[$max_kix_version+1] $kix_vs_info[ 0]=" filename name filename version size date " $kix_vs_info[ 1]="52 3.34 kix32.exe 106496 1996/08/01 00:00:00" $kix_vs_info[ 51]="52 3.34 kx16.dll 48128 1996/07/24 00:00:00" $kix_vs_info[101]="52 3.34 kx32.dll 5632 1996/07/24 00:00:00" $kix_vs_info[151]="52 3.34 kx95.dll - missing file - " $kix_vs_info[201]="52 3.34 kxrpc.exe - missing file - " $kix_vs_info[ 2]="52 3.35 kix32.exe 108544 1996/11/12 03:35:00" $kix_vs_info[ 52]="52 3.35 kx16.dll 47104 1996/11/12 03:35:00" $kix_vs_info[102]="52 3.35 kx32.dll 22016 1996/11/12 03:35:00" $kix_vs_info[152]="52 3.35 kx95.dll - missing file - " $kix_vs_info[202]="52 3.35 kxrpc.exe - missing file - " $kix_vs_info[ 3]="52 3.47 kix32.exe KIX32 KIX32.EXE 3, 47, 0, 0 131072 1998/02/16 21:06:20" $kix_vs_info[ 53]="52 3.47 kx16.dll 46592 1998/02/10 03:46:00" $kix_vs_info[103]="52 3.47 kx32.dll KX32 KX32.DLL 3, 44, 0, 0 29184 1998/02/10 03:46:00" $kix_vs_info[153]="52 3.47 kx95.dll KX95 KX95.DLL 3, 44, 0, 0 31744 1998/02/10 03:46:00" $kix_vs_info[203]="52 3.47 kxrpc.exe KXRPC KXRPC.EXE 3, 44, 0, 0 67072 1998/02/10 03:46:00" $kix_vs_info[ 4]="52 3.49 kix32.exe KIX32 KIX32.EXE 3, 49, 0, 0 137216 1998/09/23 17:53:04" $kix_vs_info[ 54]="52 3.49 kx16.dll 46592 1998/09/19 03:48:00" $kix_vs_info[104]="52 3.49 kx32.dll KX32 KX32.DLL 3, 44, 0, 0 29184 1998/09/19 03:48:00" $kix_vs_info[154]="52 3.49 kx95.dll KX95 KX95.DLL 3, 44, 0, 0 31744 1998/09/19 03:48:00" $kix_vs_info[204]="52 3.49 kxrpc.exe KXRPC KXRPC.EXE 3, 44, 0, 0 67072 1998/09/19 03:48:00" $kix_vs_info[ 5]="52 3.50 kix32.exe KIX32 KIX32.EXE 3, 50, 0, 0 131072 1998/10/20 12:41:06" $kix_vs_info[ 55]="52 3.50 kx16.dll 46592 1998/09/19 03:48:00" $kix_vs_info[105]="52 3.50 kx32.dll KX32 KX32.DLL 3, 44, 0, 0 29184 1998/09/19 03:48:00" $kix_vs_info[155]="52 3.50 kx95.dll KX95 KX95.DLL 3, 44, 0, 0 31744 1998/09/19 03:48:00" $kix_vs_info[205]="52 3.50 kxrpc.exe KXRPC KXRPC.EXE 3, 44, 0, 0 67072 1998/09/19 03:48:00" $kix_vs_info[ 6]="52 3.51 kix32.exe KIX32 KIX32.EXE 3, 51, 0, 0 131072 1999/01/05 18:40:22" $kix_vs_info[ 56]="52 3.51 kx16.dll 46592 1998/09/19 02:48:00" $kix_vs_info[106]="52 3.51 kx32.dll KX32 KX32.DLL 3, 44, 0, 0 29184 1998/09/19 02:48:00" $kix_vs_info[156]="52 3.51 kx95.dll KX95 KX95.DLL 3, 44, 0, 0 31744 1998/09/19 02:48:00" $kix_vs_info[206]="52 3.51 kxrpc.exe KXRPC KXRPC.EXE 3, 44, 0, 0 67072 1998/09/19 02:48:00" $kix_vs_info[ 7]="52 3.53 kix32.exe KIX32 KIX32.EXE 3, 53, 0, 0 135168 1999/04/29 12:32:01" $kix_vs_info[ 57]="52 3.53 kx16.dll 46592 1998/09/19 03:48:00" $kix_vs_info[107]="52 3.53 kx32.dll KX32 KX32.DLL 3, 44, 0, 0 29184 1998/09/19 03:48:00" $kix_vs_info[157]="52 3.53 kx95.dll KX95 KX95.DLL 3, 44, 0, 0 31744 1998/09/19 03:48:00" $kix_vs_info[207]="52 3.53 kxrpc.exe KXRPC KXRPC.EXE 3, 44, 0, 0 67072 1998/09/19 03:48:00" $kix_vs_info[ 8]="52 3.54 kix32.exe KIX32 KIX32.EXE 3, 54, 0, 0 135168 1999/05/01 12:27:06" $kix_vs_info[ 58]="52 3.54 kx16.dll 46592 1998/09/19 03:48:00" $kix_vs_info[108]="52 3.54 kx32.dll KX32 KX32.DLL 3, 44, 0, 0 29184 1998/09/19 03:48:00" $kix_vs_info[158]="52 3.54 kx95.dll KX95 KX95.DLL 3, 44, 0, 0 31744 1998/09/19 03:48:00" $kix_vs_info[208]="52 3.54 kxrpc.exe KXRPC KXRPC.EXE 3, 44, 0, 0 67072 1998/09/19 03:48:00" $kix_vs_info[ 9]="52 3.55 kix32.exe KIX32 KIX32.EXE 3, 55, 0, 0 135168 1999/05/17 12:22:06" $kix_vs_info[ 59]="52 3.55 kx16.dll 46592 1998/09/19 03:48:00" $kix_vs_info[109]="52 3.55 kx32.dll KX32 KX32.DLL 3, 44, 0, 0 29184 1998/09/19 03:48:00" $kix_vs_info[159]="52 3.55 kx95.dll KX95 KX95.DLL 3, 44, 0, 0 31744 1998/09/19 03:48:00" $kix_vs_info[209]="52 3.55 kxrpc.exe KXRPC KXRPC.EXE 3, 44, 0, 0 67072 1998/09/19 03:48:00" $kix_vs_info[ 10]="52 3.60 kix32.exe KIX32 KIX32.EXE 3, 60, 0, 0 159744 1999/09/01 16:00:00" $kix_vs_info[ 60]="52 3.60 kx16.dll 47104 1999/09/01 16:00:00" $kix_vs_info[110]="52 3.60 kx32.dll KX32 KX32.DLL 3, 60, 0, 0 32768 1999/09/01 16:00:00" $kix_vs_info[160]="52 3.60 kx95.dll KX95 KX95.DLL 3, 60, 0, 0 36864 1999/09/01 16:00:00" $kix_vs_info[210]="52 3.60 kxrpc.exe KXRPC KXRPC.EXE 3, 60, 0, 0 57344 1999/09/01 16:00:00" $kix_vs_info[ 11]="52 3.61 kix32.exe KIX32 KIX32.EXE 3, 61, 0, 0 163840 1999/10/08 14:37:15" $kix_vs_info[ 61]="52 3.61 kx16.dll 47104 1999/09/01 16:00:00" $kix_vs_info[111]="52 3.61 kx32.dll KX32 KX32.DLL 3, 60, 0, 0 32768 1999/09/01 16:00:00" $kix_vs_info[161]="52 3.61 kx95.dll KX95 KX95.DLL 3, 60, 0, 0 36864 1999/09/01 16:00:00" $kix_vs_info[211]="52 3.61 kxrpc.exe KXRPC KXRPC.EXE 3, 60, 0, 0 57344 1999/09/01 16:00:00" $kix_vs_info[ 12]="52 3.62 kix32.exe KIX32 KIX32.EXE 3, 62, 0, 0 163840 1999/11/24 16:50:01" $kix_vs_info[ 62]="52 3.62 kx16.dll 47104 1999/09/01 15:00:00" $kix_vs_info[112]="52 3.62 kx32.dll KX32 KX32.DLL 3, 60, 0, 0 32768 1999/09/01 15:00:00" $kix_vs_info[162]="52 3.62 kx95.dll KX95 KX95.DLL 3, 60, 0, 0 36864 1999/09/01 15:00:00" $kix_vs_info[212]="52 3.62 kxrpc.exe KXRPC KXRPC.EXE 3, 60, 0, 0 57344 1999/09/01 15:00:00" $kix_vs_info[ 13]="52 3.63 kix32.exe KIX32 KIX32.EXE 3, 63, 0, 0 163840 2000/10/15 14:50:20" $kix_vs_info[ 63]="52 3.63 kx16.dll 47104 1999/09/01 16:00:00" $kix_vs_info[113]="52 3.63 kx32.dll KX32 KX32.DLL 3, 60, 0, 0 32768 1999/09/01 16:00:00" $kix_vs_info[163]="52 3.63 kx95.dll KX95 KX95.DLL 3, 60, 0, 0 36864 1999/09/01 16:00:00" $kix_vs_info[213]="52 3.63 kxrpc.exe KXRPC KXRPC.EXE 3, 60, 0, 0 57344 1999/09/01 16:00:00" $kix_vs_info[ 14]="58 4.0w b1 kix32.exe KIX32 KIX32.EXE 4, 0, 0, 0 180224 2001/04/01 16:00:00" ; - wkix32 - $kix_vs_info[ 64]="58 4.0w b1 kx16.dll 47104 2001/04/01 16:00:00" $kix_vs_info[114]="58 4.0w b1 kx32.dll KX32 KX32.DLL 3, 60, 0, 0 32768 2001/04/01 16:00:00" $kix_vs_info[164]="58 4.0w b1 kx95.dll KX95 KX95.DLL 3, 60, 0, 0 36864 2001/04/01 16:00:00" $kix_vs_info[214]="58 4.0w b1 kxrpc.exe KXRPC KXRPC.EXE 3, 60, 0, 0 57344 2001/04/01 16:00:00" $kix_vs_info[ 15]="58 4.0 b1 kix32.exe KIX32 KIX32.EXE 4, 0, 0, 0 180224 2001/04/01 16:00:00" ; - kix32 - $kix_vs_info[ 65]="58 4.0 b1 kx16.dll 47104 2001/04/01 16:00:00" $kix_vs_info[115]="58 4.0 b1 kx32.dll KX32 KX32.DLL 3, 60, 0, 0 32768 2001/04/01 16:00:00" $kix_vs_info[165]="58 4.0 b1 kx95.dll KX95 KX95.DLL 3, 60, 0, 0 36864 2001/04/01 16:00:00" $kix_vs_info[215]="58 4.0 b1 kxrpc.exe KXRPC KXRPC.EXE 3, 60, 0, 0 57344 2001/04/01 16:00:00" $kix_vs_info[ 16]="58 4.0w b2 kix32.exe KIX32 KIX32.EXE 4, 0, 0, 0 180224 2001/04/24 13:52:02" ; - wkix32 - $kix_vs_info[ 66]="58 4.0w b2 kx16.dll 47104 2001/04/01 16:00:00" $kix_vs_info[116]="58 4.0w b2 kx32.dll KX32 KX32.DLL 3, 60, 0, 0 32768 2001/04/01 16:00:00" $kix_vs_info[166]="58 4.0w b2 kx95.dll KX95 KX95.DLL 3, 60, 0, 0 36864 2001/04/01 16:00:00" $kix_vs_info[216]="58 4.0w b2 kxrpc.exe KXRPC KXRPC.EXE 3, 60, 0, 0 57344 2001/04/01 16:00:00" $kix_vs_info[ 17]="58 4.0 b2 kix32.exe KIX32 KIX32.EXE 4, 0, 0, 0 180224 2001/04/24 13:52:10" ; - kix32 - $kix_vs_info[ 67]="58 4.0 b2 kx16.dll 47104 2001/04/01 16:00:00" $kix_vs_info[117]="58 4.0 b2 kx32.dll KX32 KX32.DLL 3, 60, 0, 0 32768 2001/04/01 16:00:00" $kix_vs_info[167]="58 4.0 b2 kx95.dll KX95 KX95.DLL 3, 60, 0, 0 36864 2001/04/01 16:00:00" $kix_vs_info[217]="58 4.0 b2 kxrpc.exe KXRPC KXRPC.EXE 3, 60, 0, 0 57344 2001/04/01 16:00:00" $kix_vs_info[ 18]="58 4.0w b2akix32.exe KIX32 KIX32.EXE 4, 0, 0, 0 180224 2001/04/26 21:03:27" ; - wkix32 - $kix_vs_info[ 68]="58 4.0w b2akx16.dll 47104 2001/04/01 16:00:00" $kix_vs_info[118]="58 4.0w b2akx32.dll KX32 KX32.DLL 3, 60, 0, 0 32768 2001/04/01 16:00:00" $kix_vs_info[168]="58 4.0w b2akx95.dll KX95 KX95.DLL 3, 60, 0, 0 36864 2001/04/01 16:00:00" $kix_vs_info[218]="58 4.0w b2akxrpc.exe KXRPC KXRPC.EXE 3, 60, 0, 0 57344 2001/04/01 16:00:00" $kix_vs_info[ 19]="58 4.0 b2a kix32.exe KIX32 KIX32.EXE 4, 0, 0, 0 180224 2001/04/24 21:04:04" ; - kix32 - $kix_vs_info[ 69]="58 4.0 b2a kx16.dll 47104 2001/04/01 16:00:00" $kix_vs_info[119]="58 4.0 b2a kx32.dll KX32 KX32.DLL 3, 60, 0, 0 32768 2001/04/01 16:00:00" $kix_vs_info[169]="58 4.0 b2a kx95.dll KX95 KX95.DLL 3, 60, 0, 0 36864 2001/04/01 16:00:00" $kix_vs_info[219]="58 4.0 b2a kxrpc.exe KXRPC KXRPC.EXE 3, 60, 0, 0 57344 2001/04/01 16:00:00" $kix_vs_info[ 20]="58 4.0w rc1kix32.exe KIX32 KIX32.EXE 4, 0, 0, 0 196608 2001/07/18 15:24:04" ; - wkix32 - $kix_vs_info[ 70]="58 4.0w rc1kx16.dll 47104 2001/04/01 16:00:00" $kix_vs_info[120]="58 4.0w rc1kx32.dll KX32 KX32.DLL 3, 60, 0, 0 32768 2001/04/01 16:00:00" $kix_vs_info[170]="58 4.0w rc1kx95.dll KX95 KX95.DLL 3, 60, 0, 0 36864 2001/04/01 16:00:00" $kix_vs_info[220]="58 4.0w rc1kxrpc.exe KXRPC KXRPC.EXE 3, 60, 0, 0 57344 2001/04/01 16:00:00" $kix_vs_info[ 21]="58 4.0 rc1 kix32.exe KIX32 KIX32.EXE 4, 0, 0, 0 192512 2001/07/18 15:23:00" ; - kix32 - $kix_vs_info[ 71]="58 4.0 rc1 kx16.dll 47104 2001/04/01 16:00:00" $kix_vs_info[121]="58 4.0 rc1 kx32.dll KX32 KX32.DLL 3, 60, 0, 0 32768 2001/04/01 16:00:00" $kix_vs_info[171]="58 4.0 rc1 kx95.dll KX95 KX95.DLL 3, 60, 0, 0 36864 2001/04/01 16:00:00" $kix_vs_info[221]="58 4.0 rc1 kxrpc.exe KXRPC KXRPC.EXE 3, 60, 0, 0 57344 2001/04/01 16:00:00" $kix_vs_info[ 22]="58 4.0w rc3kix32.exe KIX32 KIX32.EXE 4, 0, 0, 0 196608 2001/09/10 10:14:56" ; - wkix32 - $kix_vs_info[ 72]="58 4.0w rc3kx16.dll 47104 2001/04/01 16:00:00" $kix_vs_info[122]="58 4.0w rc3kx32.dll KX32 KX32.DLL 3, 60, 0, 0 32768 2001/04/01 16:00:00" $kix_vs_info[172]="58 4.0w rc3kx95.dll KX95 KX95.DLL 3, 60, 0, 0 36864 2001/04/01 16:00:00" $kix_vs_info[222]="58 4.0w rc3kxrpc.exe KXRPC KXRPC.EXE 3, 60, 0, 0 73728 2001/08/25 15:23:56" $kix_vs_info[ 23]="58 4.0 rc3 kix32.exe KIX32 KIX32.EXE 4, 0, 0, 0 192512 2001/09/10 10:14:30" ; - kix32 - $kix_vs_info[ 73]="58 4.0 rc3 kx16.dll 47104 2001/04/01 16:00:00" $kix_vs_info[123]="58 4.0 rc3 kx32.dll KX32 KX32.DLL 3, 60, 0, 0 32768 2001/04/01 16:00:00" $kix_vs_info[173]="58 4.0 rc3 kx95.dll KX95 KX95.DLL 3, 60, 0, 0 36864 2001/04/01 16:00:00" $kix_vs_info[223]="58 4.0 rc3 kxrpc.exe KXRPC KXRPC.EXE 3, 60, 0, 0 72728 2001/08/25 15:23:56" $kix_vs_info[ 24]="58 4.00w kix32.exe KIX32 KIX32.EXE 4, 0, 0, 0 196608 2001/11/19 04:00:00" ; - wkix32 - $kix_vs_info[ 74]="58 4.00w kx16.dll 47104 2001/11/19 04:00:00" $kix_vs_info[124]="58 4.00w kx32.dll KX32 KX32.DLL 3, 60, 0, 0 49152 2001/11/19 04:00:00" $kix_vs_info[174]="58 4.00w kx95.dll KX95 KX95.DLL 3, 60, 0, 0 49152 2001/11/19 04:00:00" $kix_vs_info[224]="58 4.00w kxrpc.exe KXRPC KXRPC.EXE 3, 60, 0, 0 73728 2001/11/19 04:00:00" $kix_vs_info[ 25]="58 4.00 kix32.exe KIX32 KIX32.EXE 4, 0, 0, 0 196608 2001/11/19 04:00:00" ; - kix32 - $kix_vs_info[ 75]="58 4.00 kx16.dll 47104 2001/11/19 04:00:00" $kix_vs_info[125]="58 4.00 kx32.dll KX32 KX32.DLL 3, 60, 0, 0 49152 2001/11/19 04:00:00" $kix_vs_info[175]="58 4.00 kx95.dll KX95 KX95.DLL 3, 60, 0, 0 49152 2001/11/19 04:00:00" $kix_vs_info[225]="58 4.00 kxrpc.exe KXRPC KXRPC.EXE 3, 60, 0, 0 73728 2001/11/19 04:00:00" $kix_vs_info[ 26]="58 4.01w kix32.exe KIX32 KIX32.EXE 4, 0, 1 196608 2001/11/25 04:01:00" ; - wkix32 - $kix_vs_info[ 76]="58 4.01w kx16.dll 47104 2001/11/19 04:00:00" $kix_vs_info[126]="58 4.01w kx32.dll KX32 KX32.DLL 3, 60, 0, 0 49152 2001/11/19 04:00:00" $kix_vs_info[176]="58 4.01w kx95.dll KX95 KX95.DLL 3, 60, 0, 0 49152 2001/11/19 04:00:00" $kix_vs_info[226]="58 4.01w kxrpc.exe KXRPC KXRPC.EXE 4, 00, 0, 0 73728 2001/11/19 04:00:00" $kix_vs_info[ 27]="58 4.01 kix32.exe KIX32 KIX32.EXE 4, 0, 1 196608 2001/11/25 04:01:00" ; - kix32 - $kix_vs_info[ 77]="58 4.01 kx16.dll 47104 2001/11/19 04:00:00" $kix_vs_info[127]="58 4.01 kx32.dll KX32 KX32.DLL 3, 60, 0, 0 49152 2001/11/19 04:00:00" $kix_vs_info[177]="58 4.01 kx95.dll KX95 KX95.DLL 3, 60, 0, 0 49152 2001/11/19 04:00:00" $kix_vs_info[227]="58 4.01 kxrpc.exe KXRPC KXRPC.EXE 4, 00, 0, 0 73728 2001/11/19 04:00:00" $kix_vs_info[ 28]="58 4.02w kix32.exe KIX32 KIX32.EXE 4, 0, 2 204800 2002/01/18 20:59:28" ; - wkix32 - $kix_vs_info[ 78]="58 4.02w kx16.dll 47104 2001/11/19 04:00:00" $kix_vs_info[128]="58 4.02w kx32.dll KX32 KX32.DLL 3, 60, 0, 0 49152 2001/11/19 04:00:00" $kix_vs_info[178]="58 4.02w kx95.dll KX95 KX95.DLL 3, 60, 0, 0 49152 2001/11/19 04:00:00" $kix_vs_info[228]="58 4.02w kxrpc.exe KXRPC KXRPC.EXE 4, 00, 0, 0 73728 2001/11/19 04:00:00" $kix_vs_info[ 29]="58 4.02 kix32.exe KIX32 KIX32.EXE 4, 0, 2 204800 2002/01/18 21:00:30" ; - kix32 - $kix_vs_info[ 79]="58 4.02 kx16.dll 47104 2001/11/19 04:00:00" $kix_vs_info[129]="58 4.02 kx32.dll KX32 KX32.DLL 3, 60, 0, 0 49152 2001/11/19 04:00:00" $kix_vs_info[179]="58 4.02 kx95.dll KX95 KX95.DLL 3, 60, 0, 0 49152 2001/11/19 04:00:00" $kix_vs_info[229]="58 4.02 kxrpc.exe KXRPC KXRPC.EXE 4, 00, 0, 0 73728 2001/11/19 04:00:00" $kix_vs_info[ 30]="58 4.10w kix32.exe KIX32 KIX32.EXE 4, 10, 0, 0 221184 2002/04/03 18:06:08" ; - wkix32 - $kix_vs_info[ 80]="58 4.10w kx16.dll 47104 2001/08/27 20:17:58" $kix_vs_info[130]="58 4.10w kx32.dll KX32 KX32.DLL 3, 61, 1, 0 49152 2002/03/29 12:38:16" $kix_vs_info[180]="58 4.10w kx95.dll KX95 KX95.DLL 3, 60, 0, 0 49152 2001/11/19 05:00:00" $kix_vs_info[230]="58 4.10w kxrpc.exe KXRPC KXRPC.EXE 4, 00, 0, 0 73728 2001/11/19 05:00:00" $kix_vs_info[ 31]="58 4.10 b1 kix32.exe KIX32 KIX32.EXE 4, 10, 0, 0 221184 2002/04/03 18:06:46" ; - kix32 - $kix_vs_info[ 81]="58 4.10 b1 kx16.dll 47104 2001/08/27 20:17:58" $kix_vs_info[131]="58 4.10 b1 kx32.dll KX32 KX32.DLL 3, 61, 1, 0 49152 2002/03/29 12:38:16" $kix_vs_info[181]="58 4.10 b1 kx95.dll KX95 KX95.DLL 3, 60, 0, 0 49152 2001/11/19 05:00:00" $kix_vs_info[231]="58 4.10 b1 kxrpc.exe KXRPC KXRPC.EXE 4, 00, 0, 0 73728 2001/11/19 05: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($tmp_file) = 1) del $tmp_file ENDIF SHELL "%comspec% /c dir "+$search_key+" /b /s >"+$tmp_file IF (instr(LCASE(@curdir), LCASE($destination_directory)) = 0) SHELL "%comspec% /c dir "+@curdir+"\"+$search_program+" /b /s >>"+$tmp_file ENDIF SHELL "%comspec% /c echo -end.of.list- >>"+$tmp_file ; IF (exist($tmp_file) = 1) $count=0 IF (open(1,$tmp_file) = 0) $search_program="kix32.exe" $found="no" 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 ENDIF IF ($count <> 0) IF ($count = 1) ? "Informative Version.KIX: "+$count+" file found with key '"+LCASE($search_key)+" /s'." ELSE ? "Informative Version.KIX: "+$count+" files found with key '"+LCASE($search_key)+" /s'." ENDIF ENDIF ENDIF IF (exist($tmp_file) = 1) IF ($debug_mode <> "yes") del $tmp_file ENDIF 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 ; IF (substr($kix_info[1],33,1) = ',') $version=substr($kix_info[1],29,1)+"."+substr($kix_info[1],32,1) ELSE $version=substr($kix_info[1],29,1)+"."+substr($kix_info[1],32,2) ENDIF 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) $comparison_length=VAL(LTRIM(RTRIM(substr($kix_vs_info[($max_versions*($l-1)+$k)],1,2)))) IF (LTRIM(RTRIM(substr($kix_info[$l],1,$comparison_length))) = LTRIM(RTRIM(substr($kix_vs_info[($max_versions*($l-1)+$k)],12,$comparison_length)))) $kix_found[$l]=$kix_found[$l]+"-"+LTRIM(RTRIM(substr($kix_vs_info[($max_versions*($l-1)+$k)],4,8)))+"-" IF ($l = 1) $version=LTRIM(RTRIM(substr($kix_vs_info[($max_versions*($l-1)+$k)],4,8))) ENDIF IF ($debug_mode = "yes") IF ($l < 10) ? " " $l " compare.current = "+LTRIM(RTRIM($kix_info[$l])) ELSE IF ($l < 100) ? " " $l " compare.current = "+LTRIM(RTRIM($kix_info[$l])) ELSE ? " " $l " compare.current = "+LTRIM(RTRIM($kix_info[$l])) ENDIF ENDIF IF ($max_versions*($l-1)+$k < 10) ? " " ($max_versions*($l-1)+$k) " compare.kix_vs_info = "+LTRIM(RTRIM(substr($kix_vs_info[($max_versions*($l-1)+$k)],12,$comparison_length))) ELSE IF ($max_versions*($l-1)+$k < 100) ? " " ($max_versions*($l-1)+$k) " compare.kix_vs_info = "+LTRIM(RTRIM(substr($kix_vs_info[($max_versions*($l-1)+$k)],12,$comparison_length))) ELSE ? " " ($max_versions*($l-1)+$k) " compare.kix_vs_info = "+LTRIM(RTRIM(substr($kix_vs_info[($max_versions*($l-1)+$k)],12,$comparison_length))) ENDIF ENDIF ENDIF ENDIF IF ($debug_mode = "yes") IF ($l = 1) IF ($k < 10) ? "s " $k " -status- "+$kix_found[$l] ELSE IF ($k < 100) ? "s " $k " -status- "+$kix_found[$l] ELSE ? "s " $k " -status- "+$kix_found[$l] ENDIF ENDIF ENDIF 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=LTRIM(RTRIM(substr($kix_found[1],4,8))) 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) $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 ($log_mode = "yes") ? "Informative Version.KIX: create dynamic log file '"+$log_file+"'" ELSE ? "Informative Version.KIX: no creation dynamic log file '"+$log_file+"'" ENDIF IF ($debug_mode = "yes") ? "Informative Version.KIX: create debug list '"+$debug_file+"'" ELSE ? "Informative Version.KIX: no creation of debug list '"+$debug_file+"'" ENDIF