Flavien
(Getting the hang of it)
2000-06-28 03:04 PM
.KIX -> .EXE: Package and compact your script...

I found a solution to package kix32 + DLLs + scripts into one single .exe file. The tool is called IExpress, you can find it in the IE 5 Ressource Kit.

This is an exemple using IExpress:
Before:
kix32.exe + kx32.dll + kx16.dll (version 3.55) + lpt2prt.kix (small script to assign LPT2 to the default printer)
Size: 211'558 bytes

After:
lpt2prt.exe
Size: 139'520 bytes

This is the code:

code:

SetConsole("Hide")
If @InWin=1
$Dev=ReadValue("HKEY_CURRENT_USER\Software\Microsoft\Windows NT\CurrentVersion\Windows","Device")
$Printer=SubStr($Dev,1,(InStr($Dev,",")-1))
Else
$Dev=ReadValue("HKEY_LOCAL_MACHINE\Config\0001\System\CurrentControlSet\Control\Print\Printers","Default")
$Printer=ReadValue("HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\Print\Printers\"+$Dev,"Port")
EndIf
Use LPT2: /Delete
Use LPT2: $Printer /Persistent
MessageBox("LPT2: has been assigned to "+$Printer,"LPT2PRT",0,10)
Exit

If Kix is copied on every machine, you can even create the package without kix: the size go down to 67'840 bytes!!!

The Resource Kit is there: http://download.microsoft.com/download/ie501/install/5.01/w9xnt4/en-us/ieak5.exe

------------------
Flavien Scheurer

[This message has been edited by Flavien (edited 30 June 2000).]

MCA
(KiX Supporter)
2000-07-10 07:28 PM
Re: .KIX -> .EXE: Package and compact your script...

A very nice tool, but the complete tool exist of three files:

  • iexpress.exe
  • makecab.exe
  • wextract.exe

It is fast, but is shows a little windows for installation.
A nice activity is: the installation of kixtart in a Windows 9x/NT environment.
It isn't a solution of protecion of your kixtart program code.
Different members think about it. An example you will find at

http://kixtart.org/board/Forum2/HTML/000570.html

Greetings.

Flavien
(Getting the hang of it)
2000-07-11 09:03 AM
Re: .KIX -> .EXE: Package and compact your script...

For the little window, you can get rid of it with the argument '/q:a'. Exemple:
lpt2prt.exe /q:a

For the security: Yes, this is not a secure way to distribute scripts...
But do you care if one of your 3'000 users think of using WinZip to uncompress the .exe and read the script? Unless it contains passwords...
For me, the use of IExpress is obvious when:
- you need one single file that contains everythings
- that file can be executed on every PCs
- that file is even smaller than kix32.exe
- etc...

Well, isn't it just nicer to have one .exe than many files with 'unknown' extensions?


**DONOTDELETE**
(Lurker)
2000-07-14 01:50 PM
Re: .KIX -> .EXE: Package and compact your script...

looks like this could work well in some circumstances...Does anyone know about the license requirments to use these progs.


thanks

MCA
(KiX Supporter)
2000-07-15 07:54 PM
Re: .KIX -> .EXE: Package and compact your script...

Information about license of Internet Administrator Resource Kit

code:

END-USER LICENSE AGREEMENT FOR MICROSOFT SOFTWARE

IMPORTANT-READ CAREFULLY: This Microsoft End-User License Agreement (''EULA'') is a legal agreement between you
(either an individual or a single entity) and Microsoft Corporation for the Microsoft software accompanying this
EULA, which includes computer software and may include associated media, printed materials, and ''online'' or
electronic documentation (''SOFTWARE PRODUCT''). By installing, copying, or otherwise using the SOFTWARE PRODUCT,
you agree to be bound by the terms of this EULA. If you do not agree to the terms of this EULA, do not install,
copy or use the SOFTWARE PRODUCT.
SOFTWARE PRODUCT LICENSE
The SOFTWARE PRODUCT is protected by copyright laws and international copyright treaties, as well as other intel-
lectual property laws and treaties. The SOFTWARE PRODUCT is licensed, not sold.
1. GRANT OF LICENSE. This EULA grants you the following rights:
( Installation and Use. The SOFTWARE PRODUCT comprises a limited-use version of a Microsoft software product.
You may install and use one (1) copy of the SOFTWARE PRODUCT solely for purposes of internal demonstration
and evaluation.
* No Distribution Rights. The foregoing grant does not include distribution rights. You must obtain a valid
Microsoft Internet Explorer Administration Kit License and Distribution Agreement ("IEAK"). The IEAK is
located at http://www.microsoft.com/windows/ieak.
2. DESCRIPTION OF OTHER RIGHTS AND LIMITATIONS.
( Limitations on Reverse Engineering, Decompilation, and Disassembly. You may not reverse engineer, decompile,
( or disassemble the SOFTWARE PRODUCT, except and only to the extent that such activity is expressly permitted
( by applicable law notwithstanding this limitation.
( Rental. You may not sell, rent, or lease the SOFTWARE PRODUCT.
( Support Services. No technical support will be provided for the SOFTWARE PRODUCT.
( Software Transfer. You may permanently transfer all of your rights under this EULA, provided the recipient
( agrees to the terms of this EULA.
( Termination. Without prejudice to any other rights, Microsoft may terminate this EULA if you fail to comply
( with the terms and conditions of this EULA. In such event, you must destroy all copies of the SOFTWARE PRODUCT
( and all of its component parts.
3. COPYRIGHT. All title and copyrights in and to the SOFTWARE PRODUCT (including but not limited to any images,
photographs, animations, video, audio, music, text, and "applets" incorporated into the SOFTWARE PRODUCT),
the accompanying printed materials, and any copies of the SOFTWARE PRODUCT are owned by Microsoft or its
suppliers. The SOFTWARE PRODUCT is protected by copyright laws and international treaty provisions.
Therefore, you must treat the SOFTWARE PRODUCT like any other copyrighted material.

4. U.S. GOVERNMENT RESTRICTED RIGHTS. All SOFTWARE PRODUCT provided to the U.S. Government pursuant to soli-
citations issued on or after December 1, 1995 is provided with the commercial license rights and restrictions
described elsewhere herein. All SOFTWARE PRODUCT provided to the U.S. Government pursuant to solicitations
issued prior to December 1, 1995 is provided with "Restricted Rights" as provided for
in FAR, 48 CFR 52.227-14 (JUNE 1987) or DFAR, 48 CFR 52.227-7013 (OCT 1988), as applicable.
DISCLAIMER OF WARRANTIES. TO THE MAXIMUM EXTENT PERMITTED BY APPLICABLE LAW, MICROSOFT AND ITS SUPPLIERS
PROVIDE THE SOFTWARE PRODUCT AND ANY (IF ANY) SUPPORT SERVICES RELATED TO THE SOFTWARE PRODUCT ("SUPPORT
SERVICES") AS IS AND WITH ALL FAULTS, AND HEREBY DISCLAIM ALL WARRANTIES AND CONDITIONS, EITHER EXPRESS,
IMPLIED OR STATUTORY, INCLUDING, BUT NOT LIMITED TO, ANY (IF ANY) IMPLIED WARRANTIES OR CONDITIONS OF
MERCHANTABILITY, OF FITNESS FOR A PARTICULAR PURPOSE, OF LACK OF VIRUSES, OF ACCURACY OR COMPLETENESS
OF RESPONSES, OF RESULTS, AND OF LACK OF NEGLIGENCE OR LACK OF WORKMANLIKE EFFORT, ALL WITH REGARD TO
THE SOFTWARE PRODUCT, AND THE PROVISION OF OR FAILURE TO PROVIDE SUPPORT SERVICES. ALSO, THERE IS NO
WARRANTY OR CONDITION OF TITLE, QUIET ENJOYMENT, QUIET POSSESSION, CORRESPONDENCE TO DESCRIPTION OR
NON-INFRINGEMENT, WITH REGARD TO THE SOFTWARE PRODUCT. THE ENTIRE RISK AS TO THE QUALITY OF OR ARISING
OUT OF USE OR PERFORMANCE OF THE SOFTWARE PRODUCT AND SUPPORT SERVICES, IF ANY, REMAINS WITH YOU.
EXCLUSION OF INCIDENTAL, CONSEQUENTIAL AND CERTAIN OTHER DAMAGES. TO THE MAXIMUM EXTENT PERMITTED BY
APPLICABLE LAW, IN NO EVENT SHALL MICROSOFT OR ITS SUPPLIERS BE LIABLE FOR ANY SPECIAL, INCIDENTAL,
INDIRECT, OR CONSEQUENTIAL DAMAGES WHATSOEVER (INCLUDING, BUT NOT LIMITED TO, DAMAGES FOR LOSS OF
PROFITS OR CONFIDENTIAL OR OTHER INFORMATION, FOR BUSINESS INTERRUPTION, FOR PERSONAL INJURY, FOR
LOSS OF PRIVACY, FOR FAILURE TO MEET ANY DUTY INCLUDING OF GOOD FAITH OR OF REASONABLE CARE, FOR
NEGLIGENCE, AND FOR ANY OTHER PECUNIARY OR OTHER LOSS WHATSOEVER) ARISING OUT OF OR IN ANY WAY RE-
LATED TO THE USE OF OR INABILITY TO USE THE SOFTWARE PRODUCT, THE PROVISION OF OR FAILURE TO PROVIDE
SUPPORT SERVICES, OR OTHERWISE UNDER OR IN CONNECTION WITH ANY PROVISION OF THIS EULA, EVEN IN THE
EVENT OF THE FAULT, TORT (INCLUDING NEGLIGENCE), STRICT LIABILITY, BREACH OF CONTRACT OR BREACH OF
WARRANTY OF MICROSOFT OR ANY SUPPLIER, AND EVEN IF MICROSOFT OR ANY SUPPLIER HAS BEEN ADVISED OF THE
POSSIBILITY OF SUCH DAMAGES.
LIMITATION OF LIABILITY AND REMEDIES. Notwithstanding any damages that you might incur for any reason
whatsoever (including, without limitation, all damages referenced above and all direct or general da-
mages), the entire liability of Microsoft and any of its suppliers under any provision of this EULA
and your exclusive remedy for all of the foregoing shall be limited to the greater of the amount ac-
tually paid by you for the SOFTWARE PRODUCT or U.S.$5.00. The foregoing limitations, exclusions and
disclaimers shall apply to the maximum extent permitted by applicable law, even if any remedy fails
its essential purpose.
MISCELLANEOUS
If you acquired this product in the United States, this EULA is governed by the laws of the State of Washington.
If this product was acquired outside the United States, then local laws may apply.
Should you have any questions concerning this EULA, or if you desire to contact Microsoft for any
reason, please contact the Microsoft subsidiary serving your country, or write: Microsoft Sales Infor-
mation Center/One Microsoft Way/Redmond, WA 98052-6399.


code:

-------------------------------------------------------
Microsoft Internet Explorer Administration Kit README
Version 5.01 - September 1999
-------------------------------------------------------
(c) Copyright Microsoft Corporation, 1999
http://www.microsoft.com/windows/ieak


For the most current information on browser issues, please refer to the online
documentation that is installed with Internet Explorer 5.

This document provides complementary or late-breaking information to supplement
the Microsoft Internet Explorer Administration Kit (IEAK) documentation. You can
also look at the Microsoft(R) Web site for the latest information.


--------
CONTENTS
--------

WHAT'S NEW FOR IEAK 5
GENERAL SETUP REQUIREMENTS
KNOWN ISSUES


WHAT'S NEW FOR IEAK 5
=====================

IEAK 5 offers more opportunities for:

- Customization. The new and enhanced customization options, such as the periodic
update check page, enable you to give your users important information when
they need it. Customization of the browser toolbars enhances the way the browser
looks and behaves.

- Increased flexibility. You now have complete control over which components are
included in, or excluded from, your custom package. You can create the unique package
that meets your needs, which gives you more control over the length of time it
takes your users to download and install it.

- Improved end-user controls. Improved controls in both the Internet Explorer
Customization Wizard and the IEAK Profile Manager give you access to more powerful
features, at the same time making it easier for you to take advantage of these
features. Internet Explorer 5 features, such as Automatic Install, enable you
to distribute and support a minimal download and still give your users a fully
featured browser.

For a detailed list of new features and improvements, see the "What's New"
section in IEAK Help.

NOTE: The customizations installed by the IEAK during Internet Explorer Setup
will always overwrite previous customizations. Even if no Internet Explorer
components need to be installed, the customizations will install. Previous
options, including the branding version number and configuration identifier, are
no longer necessary.


GENERAL SETUP REQUIREMENTS
==========================

Before you can use the IEAK, you must install Internet Explorer 5.

Before starting the Internet Explorer Customization Wizard, calculate how much disk
space is required for the components you want to install:

- Depending on the number of components you download, you will need up to 100 MB of
disk space.

- For every custom package you generate and every media type you select, you will
need additional disk space equal to the size of the package for each media type.
This amount varies, and temporary space is also needed to create and compress each
of the media types.

For more information on each of the Microsoft components, see IEAK Help.


KNOWN ISSUES
============

- Careful attention should be paid to the AutoComplete feature options. AutoComplete
can store important or personal information in various scenarios. Depending on your
situation, these features should be configured appropriately or turned off completely.

- When you use a previously generated .ins file in a new session of the Internet Explorer
Customization Wizard, note that some of the feature settings or file paths may have
changed. Errors produced during package generation may be caused by this previous
.ins file. In order to be sure your new package will be generated correctly,
validate all settings and file paths before finishing the Customization Wizard.

- If you build a package to an existing directory via the Internet Explorer
Customization Wizard, disabling Setup Customizations via Feature Selection will
delete the previous ie5sites.dat that was created. To avoid this, do not
disable Setup Customizations when building to an existing directory.

- If you run the Internet Explorer Customization Wizard using different roles,
it is recommended that you build to different directories. This will prevent any
settings that are not applicable from being included in the custom package.

- If you install a single disk branding package on previous versions of Internet Explorer,
certain customizations may not be applied, or may be applied inconsistently when compared
to Internet Explorer 5.0 installs. The customizations may also produce inaccurate results.

- In Microsoft Outlook Express, presubscribed newsgroups are only configured if a
news server has also been specified.

- The Outlook Express junk mail filtering option, in Stage 5 of the Internet Explorer
Customization Wizard, has no effect on the computer Outlook Express is installed on.

- On Far East platforms, the Internet Explorer Customization Wizard may appear in a
large font when the computer is first restarted. To resolve this issue, restart
the computer again.

- When adding custom components for a Windows 3.11/WFW/NT 3.51 package, the file name
"setup.exe" cannot be used. This will overwrite the setup program for Internet
Explorer.

- The ISP File Wizard, included in the IEAK Toolkit, will only install on a computer that
has the Visual Basic 4.0 run-time components installed. It will install normally on a
Windows 98 computer.

- If you are creating packages on case-sensitive platforms, such as the UNIX platform, make
sure the path information for components includes the correct case.

Corporate Administrators
------------------------

- If you are importing your current Active Desktop settings, have the Channel bar
turned on, and are not including channels, the installed package will display an
empty Channel bar on the desktop.

- If you are distributing the Web Desktop Update on NT 4.0 workstations, and the users
are not at the Administrator level, you must use Policy Editor to manage the Web
Desktop Update restrictions. These restrictions are not applied during Internet
Explorer Setup or during automatic configuration. This is not an issue if your users
are at the Administrator level.

- When you use the policy to only allow controls from trusted publishers, be aware that
Internet Explorer Setup and automatic configuration with .cab files will not work if
the .cab files are not signed and the publisher isn't in the trusted publisher list.
Also, Automatic Install will not work when using this policy.

- If you are building a UNIX package, you must have Automatic Version Synchronization
turned on in order to choose between Solaris and HP-UX.

- The Internet Explorer 5 Tour is available for customization in the IEAK Toolkit. To
use the tour, run the tour.exe file in the Windows folder on your Web server. To link to
the tour, use a URL in the following format:
http://<YourServer>/Windows/IE/tour/default.htm


BTW: Kixtart has also a copyright note of Microsoft Corporation.




MCA
(KiX Supporter)
2000-07-15 07:55 PM
Re: .KIX -> .EXE: Package and compact your script...

Dear,

An usefull task is the installation of kixtart files at your local
workstation. Normally you can use a batch procedure to do it.
Possible problems are:


  • a lot of code is necessary in your normal kixtart calling batch procedure.
    solution:
    - create a IExpress file with a control file (f.e. "c:\kix362.ok").
    - change code to one single line:
    if not exist c:\kix362.ok %0\..\kix362update.exe /q
  • batch procedure can't check on file attributes and can't reset it.
    solution:
    - use kixtart command setfileattr($file, 128)
  • batch procedure can't check on file size, time and version
    solution:
    - use kixtart commands GetFileSize, GetFileTime and GetFileVersion.
  • destination folder/directory isn't correct, because windows isn't
    installed with general settings.
    solution:
    - use kixtart commands ReadValue
    NT -> ReadValue("HKEY_LOCAL_MACHINE\software\microsoft\windows NT\currentversion", "SystemRoot")
    9x -> ReadValue("HKEY_LOCAL_MACHINE\software\microsoft\windows\currentversion", "SystemRoot")

Other capabilities with a kixtart scripts are:

  • each individual file can be changed.
  • additional debug information about files.
  • additional information can be written to eventvwr log.

A batch procedure looks like:

code:

@echo off
cls
@echo installation of Kix 3.62
@echo.
if exist c:\kix362.ok goto server
if exist c:\winnt\kix362.ok goto server
if exist c:\windows\kix362.ok goto server
if exist c:\windows\nul goto w95-kix
:nt-kix
if exist c:\winnt\kx95.dll del c:\winnt\kx95.dll
if exist c:\winnt\kx16.dll del c:\winnt\kx16.dll
if exist c:\winnt\kx32.dll del c:\winnt\kx32.dll
if exist c:\winnt\system32\kx95.dll del c:\winnt\system32\kx95.dll
if exist c:\winnt\system32\kx16.dll del c:\winnt\system32\kx16.dll
if exist c:\winnt\system32\kx32.dll del c:\winnt\system32\kx32.dll
copy %temp%\ixp000.tmp\k*.exe c:\winnt\.
copy %temp%\ixp000.tmp\k*.dll c:\winnt\.
@echo Informative Kixtart: installation completed >c:\winnt\kix362.ok
goto server
:w95-kix
if exist c:\windows\kx95.dll del c:\windows\kx95.dll
if exist c:\windows\kx16.dll del c:\windows\kx16.dll
if exist c:\windows\kx32.dll del c:\windows\kx32.dll
if exist c:\windows\system\kx95.dll del c:\windows\system\kx95.dll
if exist c:\windows\system\kx16.dll del c:\windows\system\kx16.dll
if exist c:\windows\system\kx32.dll del c:\windows\system\kx32.dll
copy %temp%\ixp000.tmp\k*.exe c:\windows\.
copy %temp%\ixp000.tmp\k*.dll c:\windows\.
@echo Informative Kixtart: installation completed >c:\windows\kix362.ok
:server
@echo.
@echo completed.
@echo off

The kixtart script looks like:

code:

IF setconsole("hide")
ENDIF
;
; NT/95 logon - Kixtart 3.62
;
; (c) scripting@wanadoo.nl - 2000
;
; vs 1.00 - program
;
; 1.00 (20000715) original version. created for IExpress package.
; 1.01 (20000715) - additional information written to check-file.
;
$prgrm_version="1.01"
;
$debug_mode="no" ; - yes/no -
IF (@inwin = 1)
$NT_mode="yes"
ELSE
$NT_mode="no"
ENDIF
$time_start=@time
;
IF ($debug_mode = "yes")
break on
IF (RedirectOutput("c:\temp\kixtart.txt",1) = 0)
ENDIF
ELSE
break off
IF (RedirectOutput("nul",1) = 0)
ENDIF
ENDIF
IF ($debug_mode = "yes")
IF ($NT_mode = "yes")
? "Kixtar "+@kix+" - NT debug mode (vs "+$prgrm_version+")"+" "+$time_start
ELSE
? "Kixtar "+@kix+" - 95 debug mode (vs "+$prgrm_version+")"+" "+$time_start
ENDIF
?
ENDIF

; --------------------------------------------------------------------------
; - install kixtart at local workstation -
; - -
; - 1. calculates source/destination directory -
; - 2. check for update -
; - - GetFileSize -
; - - GetFileTime -
; - - GetFileVersion -
; - 3. update any kixtart file, when installed version isn't the same. -
; - first it removes unwanted fileattributes -
; - (hidden, readonly, system) -
; - 4a. create information file, which can be checked by batch -
; - procedure. it eliminates a unwanted download + installation. -
; - 4b. log update information to eventvwr log. -
; - -
; - call by installation procedure -
; - fe. "if not exist c:\kix362.ok %0\..\kix362update.exe /q" -
; --------------------------------------------------------------------------

$source_directory=@curdir ; - "%temp%\ixp000.tmp\" -
IF (substr($source_directory,len($source_directory),1) <> "\")
$source_directory=$source_directory+"\"
ENDIF
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=@lanroot
ENDIF
IF (substr($destination_directory,len($destination_directory),1) <> "\")
$destination_directory=$destination_directory+"\"
ENDIF
;
$max_kix_files=4
DIM $kix_files[$max_kix_files+1]
$kix_files[0]="kix362.ok" ; - check file -
$kix_files[1]="kix32.exe"
$kix_files[2]="kx16.dll"
$kix_files[3]="kx32.dll"
$kix_files[4]="kx95.dll"
;
$update="no"
$update_info=""
$i=1
WHILE ($i <= $max_kix_files)
$source_file=$source_directory+$kix_files[$i]
$destination_file=$destination_directory+$kix_files[$i]
IF (exist($destination_file) = 1)
IF (setfileattr($destination_file, 128) <> 0)
ENDIF
IF ($debug_mode = "yes")
del $destination_file ; - activates an automatic update for debugging script -
ENDIF
ENDIF
$update="yes"
IF (exist($source_file) = 1)
$update="no"
IF (GetFileSize($source_file) <> GetFileSize($destination_file))
$update="yes"
ENDIF
IF (GetFileTime($source_file) <> GetFileTime($destination_file))
$update="yes"
ENDIF
IF (GetFileVersion($source_file,"filedescription") <> GetFileVersion($destination_file,"filedescription"))
$update="yes"
ENDIF
IF (GetFileVersion($source_file,"fileversion") <> GetFileVersion($destination_file,"fileversion"))
$update="yes"
ENDIF
IF (GetFileVersion($source_file,"internalname") <> GetFileVersion($destination_file,"internalname"))
$update="yes"
ENDIF
IF (GetFileVersion($source_file,"language") <> GetFileVersion($destination_file,"language"))
$update="yes"
ENDIF
IF (GetFileVersion($source_file,"originalfilename") <> GetFileVersion($destination_file,"originalfilename"))
$update="yes"
ENDIF
IF (GetFileVersion($source_file,"productname") <> GetFileVersion($destination_file,"productname"))
$update="yes"
ENDIF
ENDIF
;
IF ($update = "yes")
copy $source_file $destination_file
$update_info=$update_info+" "+LCASE($kix_files[$i])
ENDIF
IF ($debug_mode = "yes")
? "Informative INSTALL: copy "+LCASE($source_file)+" "+LCASE($destination_file)
?
? " size.old = "+GetFileSize($source_file)
? " size.new = "+GetFileSize($destination_file)
? " time.old = "+GetFileTime($source_file)
? " time.new = "+GetFileTime($destination_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
IF (@error <> 0)
? "Warning INSTALL: "+@serror
ENDIF
$i=$i+1
LOOP
;
IF(exist("c:\"+$kix_files[0]) <> 1)
$update="yes"
ENDIF
IF ($update = "yes")
$update_info="("+LTRIM(RTRIM(LCASE($update_info)))+") to "+'"'+LTRIM(RTRIM(LCASE($destination_directory)))+'"'
IF ($NT_mode = "yes" )
IF writeprofilestring("c:\"+$kix_files[0], "Kixtart NT", "Kixtart @kix", "installation completed at "+@date+" "+@time+" "+$update_info)
ENDIF
ELSE
IF writeprofilestring("c:\"+$kix_files[0], "Kixtart 9x", "Kixtart @kix", "installation completed at "+@date+" "+@time+" "+$update_info)
ENDIF
ENDIF
ENDIF

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

:end_script
$time_stop=@time
$log_info="Kixtart-UPDATE "+$prgrm_version+" script completed successfully"
$log_info=$log_info+" ("+$time_start+" - "+$time_stop+") "+LTRIM(RTRIM($update_info))
;
IF ($debug_mode = "yes")
?
? " logevent = "+$log_info
?
ENDIF
IF ($update = "yes")
IF logevent(0, 1, $log_info, "", "Kixtart UPDATE @kix"+"c")
ENDIF
IF (RedirectOutput("CON") = 0)
ENDIF
? "Kixtart "+@kix+" update completed."
ENDIF
:end
break on
flushkb


Batch command for updating kixtart files by using IExpress package:

code:

@echo off
if not exist c:\kix362.ok %0\..\kix362update.exe /q"
@echo off

Control files looks like:

code:

[Kixtart NT]
Kixtart 3.62=installation completed at 2000/07/15 17:31:17 (kix32.exe kx16.dll kx32.dll kx95.dll) to "c:\winnt\"


code:

[Kixtart 9x]
Kixtart 3.62=installation completed at 2000/07/15 17:20:03 (kix32.exe kx16.dll kx32.dll kx95.dll) to "c:\windows\"

The debug file looks like:

code:

Kixtar 3.62 - NT debug mode (vs 1.01) 17:31:14

Informative INSTALL: copy v:\temp\ixp000.tmp\kix32.exe c:\winnt\kix32.exe

size.old = 163840
size.new = 163840
time.old = 1999/11/25 00:00:00
time.new = 1999/11/25 00:00:00

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

Informative INSTALL: copy v:\temp\ixp000.tmp\kx16.dll c:\winnt\kx16.dll

size.old = 47104
size.new = 47104
time.old = 1999/09/01 00:00:00
time.new = 1999/09/01 00:00:00

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

Informative INSTALL: copy v:\temp\ixp000.tmp\kx32.dll c:\winnt\kx32.dll

size.old = 32768
size.new = 32768
time.old = 1999/09/01 00:00:00
time.new = 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 INSTALL: copy v:\temp\ixp000.tmp\kx95.dll c:\winnt\kx95.dll

size.old = 36864
size.new = 36864
time.old = 1999/09/01 00:00:00
time.new = 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

logevent = Kixtart-UPDATE 1.01 script completed successfully (17:31:14 - 17:31:17) (kix32.exe kx16.dll kx32.dll kx95.dll) to "c:\winnt\"


By entering http://home.wanadoo.nl/scripting/index.htm you can download
the scripts and IExpress package file of Kixtart 3.62.

Greetings.


BTW: the IExpress SED file of kix362update.exe

code:

[Version]
Class=IEXPRESS
SEDVersion=3
[Options]
PackagePurpose=InstallApp
ShowInstallProgramWindow=1
HideExtractAnimation=1
UseLongFileName=0
InsideCompressed=0
CAB_FixedSize=0
CAB_ResvCodeSigning=0
RebootMode=N
InstallPrompt=%InstallPrompt%
DisplayLicense=%DisplayLicense%
FinishMessage=%FinishMessage%
TargetName=%TargetName%
FriendlyName=%FriendlyName%
AppLaunched=%AppLaunched%
PostInstallCmd=%PostInstallCmd%
AdminQuietInstCmd=%AdminQuietInstCmd%
UserQuietInstCmd=%UserQuietInstCmd%
SourceFiles=SourceFiles
[Strings]
InstallPrompt=
DisplayLicense=
FinishMessage=
TargetName=V:\kix362update.exe
FriendlyName=Kixtart 3.62 installation at local workstation
AppLaunched=Kix32.exe
PostInstallCmd=Kix32.exe install.kix
AdminQuietInstCmd=
UserQuietInstCmd=
FILE0="Install.kix"
FILE1="Kix32.exe"
FILE2="Kx16.dll"
FILE3="Kx32.dll"
FILE4="Kx95.dll"
[SourceFiles]
SourceFiles0=V:\
[SourceFiles0]
%FILE0%=
%FILE1%=
%FILE2%=
%FILE3%=
%FILE4%=

[This message has been edited by MCA (edited 15 July 2000).]

[This message has been edited by MCA (edited 16 July 2000).]

Flavien
(Getting the hang of it)
2000-07-17 09:29 AM
Re: .KIX -> .EXE: Package and compact your script...

Well, sometimes using only Windows stuff can do it...

For exemple, I use only a .INF file to deploy Kixtart. And since we don't use KXRPC, I don't include kx95.dll in the package. So, only 4 files are needed: kix32.exe, kx16.dll, kx32.dll and kix.inf.

KIX.INF

code:

; kix.inf - Install Kixtart
; Created by Flavien Scheurer, 09.05.2000

[Version]
Signature="$Chicago$"

[DefaultInstall]
CopyFiles=ExeFiles
AddReg=KixReg

[DefaultInstall.NT]
CopyFiles=ExeFiles.NT
AddReg=KixReg

[KixReg]
HKLM,"Software\Kixtart","Kixtart",,"3.55"

[ExeFiles.NT]
kix32.exe

[ExeFiles]
kix32.exe
kx16.dll
kx32.dll

[DestinationDirs]
ExeFiles=10
ExeFiles.NT=10

[SourceDisksNames]
1="Kixtart",,,

[SourceDisksFiles]
kix32.exe=1,,
kx16.dll=1,,
kx32.dll=1,,

[Strings]


As you can see, that .INF file is easy to understand and should work with all versions of kixtart.

Then, this is the .SED file:

code:

[Version]
Class=IEXPRESS
SEDVersion=3

[Options]
PackagePurpose=InstallApp
ShowInstallProgramWindow=0
HideExtractAnimation=0
UseLongFileName=0
InsideCompressed=0
CAB_FixedSize=0
CAB_ResvCodeSigning=0
RebootMode=N
InstallPrompt=%InstallPrompt%
DisplayLicense=%DisplayLicense%
FinishMessage=%FinishMessage%
TargetName=%TargetName%
FriendlyName=%FriendlyName%
AppLaunched=%AppLaunched%
PostInstallCmd=%PostInstallCmd%
AdminQuietInstCmd=%AdminQuietInstCmd%
UserQuietInstCmd=%UserQuietInstCmd%
SourceFiles=SourceFiles

[Strings]
InstallPrompt=Ready to install Kixtart 3.55.
DisplayLicense=
FinishMessage=
TargetName=<YourTargetEXEFile>
FriendlyName=Kixtart 3.55
AppLaunched=kix.inf
PostInstallCmd=<none>
AdminQuietInstCmd=
UserQuietInstCmd=
FILE0="Kx32.dll"
FILE1="Kix32.exe"
FILE2="Kx16.dll"
FILE3="kix.inf"

[SourceFiles]
SourceFiles0=<YourSourcePath>

[SourceFiles0]
%FILE0%=
%FILE1%=
%FILE2%=
%FILE3%=


Since the .INF will create a registry entry, you check on it to install kix. If you need to install without admin rights, remove the [KixReg] section...

[This message has been edited by Flavien (edited 17 July 2000).]

MCA
(KiX Supporter)
2000-07-17 09:29 PM
Re: .KIX -> .EXE: Package and compact your script...

A good suggestion. Only we include kx95.dll because it must work at all circumstances. So also on a server we doesn't know.
The installation is to copy some additional files to NETLOGON folder and add one batch call to the user profile file.

By using IExpress we detected special kind of errors:


  • @curdir isn't always equal to %temp%\ixp000.tmp folder. so the drive can be another drive.
  • Iexpress doesn't support variables like %temp%. you must expliciet specify temp-path.

the new SED code is:

code:

[Version]
Class=IEXPRESS
SEDVersion=3
[Options]
PackagePurpose=InstallApp
ShowInstallProgramWindow=1
HideExtractAnimation=1
UseLongFileName=0
InsideCompressed=0
CAB_FixedSize=0
CAB_ResvCodeSigning=0
RebootMode=N
InstallPrompt=%InstallPrompt%
DisplayLicense=%DisplayLicense%
FinishMessage=%FinishMessage%
TargetName=%TargetName%
FriendlyName=%FriendlyName%
AppLaunched=%AppLaunched%
PostInstallCmd=%PostInstallCmd%
AdminQuietInstCmd=%AdminQuietInstCmd%
UserQuietInstCmd=%UserQuietInstCmd%
SourceFiles=SourceFiles
[Strings]
InstallPrompt=
DisplayLicense=
FinishMessage=
TargetName=V:\kix362update.exe
FriendlyName=Kixtart 3.62/1.02 installation at local workstation
AppLaunched=Kix32.exe
PostInstallCmd=c:\temp\ixp000.tmp\Kix32.exe c:\temp\ixp000.tmp\install.kix
AdminQuietInstCmd=
UserQuietInstCmd=
FILE0="Install.kix"
FILE1="Kix32.exe"
FILE2="Kx16.dll"
FILE3="Kx32.dll"
FILE4="Kx95.dll"
[SourceFiles]
SourceFiles0=V:\
[SourceFiles0]
%FILE0%=
%FILE1%=
%FILE2%=
%FILE3%=
%FILE4%=

Install.KIX 1.02 update

code:

IF setconsole("hide")
ENDIF
;
; NT/95 logon - Kixtart 3.62
;
; (c) scripting@wanadoo.nl - 2000
;
; vs 1.02 - program
;
; 1.00 (20000715) original version. created for IExpress package.
; 1.01 (20000715) - additional information written to check-file.
; 1.02 (20000715) - additional information about starting script.
; system tries to find "c:\temp\kixtart.dbg" file, which will
; create a info file "c:\temp\kixtart.txt".
; automatic remove of "c:\temp\kixtart.dbg" + "c:\temp\kixtart.txt" by next run.
; - change "source_directory" to "c:\temp\ixp000.tmp\",
; because "@curdir" is "@homeshr" directory.
; - CHANGE iexpress package changed. calling command
; "kix32.exe install.kix"
; to
; "c:\temp\ixp000.tmp\kix32.exe c:\temp\ixp000.tmp\install.kix".
; sometime actual drive isn't correct.
;
$prgrm_version="1.02"
;
$debug_mode="no" ; - yes/no -
IF (exist("c:\temp\kixtart.dbg") = 1)
$debug_mode="yes"
ENDIF
IF (@inwin = 1)
$NT_mode="yes"
ELSE
$NT_mode="no"
ENDIF
$time_start=@time
;
IF ($debug_mode = "yes")
break on
del "c:\temp\kixtart.dbg"
del "c:\temp\kixtart.txt"
IF (RedirectOutput("c:\temp\kixtart.txt",1) = 0)
ENDIF
$log_info="Kixtart-UPDATE "+$prgrm_version+" script started."
IF logevent(0, 1, $log_info, "", "Kixtart UPDATE @kix")
ENDIF
ELSE
break off
del "c:\temp\kixtart.dbg"
del "c:\temp\kixtart.txt"
IF (RedirectOutput("nul",1) = 0)
ENDIF
ENDIF

IF ($debug_mode = "yes")
IF ($NT_mode = "yes")
? "Kixtar "+@kix+" - NT debug mode (vs "+$prgrm_version+")"+" "+$time_start
ELSE
? "Kixtar "+@kix+" - 95 debug mode (vs "+$prgrm_version+")"+" "+$time_start
ENDIF
?
ENDIF

; --------------------------------------------------------------------------
; - install kixtart at local workstation -
; - -
; - 1. calculates source/destination directory -
; - 2. check for update -
; - - GetFileSize -
; - - GetFileTime -
; - - GetFileVersion -
; - 3. update any kixtart file, when installed version isn't the same. -
; - first it removes unwanted fileattributes -
; - (hidden, readonly, system) -
; - 4a. create information file, which can be checked by batch -
; - procedure. it eliminates a unwanted download + installation. -
; - 4b. log update information to eventvwr log. -
; - -
; - call by installation procedure -
; - fe. "if not exist c:\kix362.ok %0\..\kix362update.exe /q" -
; --------------------------------------------------------------------------

$source_directory="c:\temp\ixp000.tmp\"
IF (substr($source_directory,len($source_directory),1) <> "\")
$source_directory=$source_directory+"\"
ENDIF
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=@lanroot
ENDIF
IF (substr($destination_directory,len($destination_directory),1) <> "\")
$destination_directory=$destination_directory+"\"
ENDIF
;
$max_kix_files=4
DIM $kix_files[$max_kix_files+1]
$kix_files[0]="kix362.ok" ; - check file -
$kix_files[1]="kix32.exe"
$kix_files[2]="kx16.dll"
$kix_files[3]="kx32.dll"
$kix_files[4]="kx95.dll"
;
$update="no"
$update_info=""
$i=1
WHILE ($i <= $max_kix_files)
$source_file=$source_directory+$kix_files[$i]
$destination_file=$destination_directory+$kix_files[$i]
IF (exist($destination_file) = 1)
IF (setfileattr($destination_file, 128) <> 0)
ENDIF
IF ($debug_mode = "yes")
del $destination_file ; - activates an automatic update for debugging script -
ENDIF
ENDIF
$update="yes"
IF (exist($source_file) = 1)
$update="no"
IF (GetFileSize($source_file) <> GetFileSize($destination_file))
$update="yes"
ENDIF
IF (GetFileTime($source_file) <> GetFileTime($destination_file))
$update="yes"
ENDIF
IF (GetFileVersion($source_file,"filedescription") <> GetFileVersion($destination_file,"filedescription"))
$update="yes"
ENDIF
IF (GetFileVersion($source_file,"fileversion") <> GetFileVersion($destination_file,"fileversion"))
$update="yes"
ENDIF
IF (GetFileVersion($source_file,"internalname") <> GetFileVersion($destination_file,"internalname"))
$update="yes"
ENDIF
IF (GetFileVersion($source_file,"language") <> GetFileVersion($destination_file,"language"))
$update="yes"
ENDIF
IF (GetFileVersion($source_file,"originalfilename") <> GetFileVersion($destination_file,"originalfilename"))
$update="yes"
ENDIF
IF (GetFileVersion($source_file,"productname") <> GetFileVersion($destination_file,"productname"))
$update="yes"
ENDIF
ENDIF
;
IF ($update = "yes")
copy $source_file $destination_file
$update_info=$update_info+" "+LCASE($kix_files[$i])
ENDIF
IF ($debug_mode = "yes")
? "Informative INSTALL: copy "+LCASE($source_file)+" "+LCASE($destination_file)
?
? " size.old = "+GetFileSize($source_file)
? " size.new = "+GetFileSize($destination_file)
? " time.old = "+GetFileTime($source_file)
? " time.new = "+GetFileTime($destination_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
IF (@error <> 0)
? "Warning INSTALL: "+@serror
ENDIF
$i=$i+1
LOOP
;
IF ($debug_mode = "yes")
del "c:\"+$kix_files[0] ; - activates an automatic update for debugging script -
ENDIF
IF(exist("c:\"+$kix_files[0]) <> 1)
$update="yes"
$i=1
WHILE ($i <= $max_kix_files)
$destination_file=$destination_directory+$kix_files[$i]
IF (exist($destination_file) <> 1)
$update="no"
$update_info=$update_info+" unknown_file."+LCASE($kix_files[$i])
ENDIF
$i=$i+1
LOOP
ENDIF
IF ($update = "yes")
$update_info="("+LTRIM(RTRIM(LCASE($update_info)))+") to "+'"'+LTRIM(RTRIM(LCASE($destination_directory)))+'"'
IF ($NT_mode = "yes" )
IF writeprofilestring("c:\"+$kix_files[0], "Kixtart NT", "Kixtart @kix", "installation completed at "+@date+" "+@time+" "+$update_info)
ENDIF
ELSE
IF writeprofilestring("c:\"+$kix_files[0], "Kixtart 9x", "Kixtart @kix", "installation completed at "+@date+" "+@time+" "+$update_info)
ENDIF
ENDIF
ELSE
IF (exist("c:\"+$kix_files[0]) = 1)
del "c:\"+$kix_files[0]
ENDIF
ENDIF

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

:end_script
$time_stop=@time
IF ($update = "yes")
$log_info="Kixtart-UPDATE "+$prgrm_version+" script completed successfully"
$log_info=$log_info+" ("+$time_start+" - "+$time_stop+") "+LTRIM(RTRIM($update_info))
IF ($debug_mode = "yes")
?
? " logevent = "+$log_info
?
ENDIF
IF logevent(0, 1, $log_info, "", "Kixtart UPDATE @kix"+"c")
ENDIF
ENDIF
IF ($update = "yes")
? "Kixtart "+@kix+" update completed."
ELSE
? "Kixtart "+@kix+" update incompleted. ('"+$source_directory+"' -> '"+$destination_directory+"')"
ENDIF
IF (RedirectOutput("CON") = 0)
ENDIF
:end
break on
flushkb



the install.kix file and iexpress package has been update at http://home.wanadoo.nl/scripting

Greetings.

[This message has been edited by MCA (edited 17 July 2000).]

Flavien
(Getting the hang of it)
2000-07-19 02:43 PM
Re: .KIX -> .EXE: Package and compact your script...

Oops,
Since Microsoft has released IE 5.01 SP1, the link to IEAK has changed: http://download.microsoft.com/download/ie501sp1/Install/5.01_SP1/WIN98/EN-US/ieak5.exe

For further reference, this is THE url to try if the link is broken again: http://www.microsoft.com/windows/ieak/en/download/

------------------
Flavien Scheurer

MCA
(KiX Supporter)
2000-07-30 07:53 AM
Re: .KIX -> .EXE: Package and compact your script...

Dear,

A new Iexpress package has created. it not only install automatically kix32 to your windows directory, but also it creates file associations + additional elements to your menu.

programs: kix362registry.exe
site: http://home.wanadoo.nl/scripting

Greetings.

btw: the contains of both IEAK files are the same. only the location and name has been changed.

MCA
(KiX Supporter)
2000-10-24 01:09 AM
Re: .KIX -> .EXE: Package and compact your script...

A new Iexpress package has created. It is an update for Kixtart 3.63 edition.
It not only install automatically kix32 to your windows directory, but also it creates
file associations + additional elements to your menu.

programs: kix363registry.exe
site: http://home.wanadoo.nl/scripting

Greetings.


btw: it requires:


  • directory c:\temp exist
  • environment variable tmp value must be c:\temp

btw: kix363update.exe doesn't create file associations in the registry.


MCA
(KiX Supporter)
2001-03-22 11:26 PM
Re: .KIX -> .EXE: Package and compact your script...

Dear,

New Iexpress package has been created. Previously versions
required


  • directory c:\temp exist
  • environment variable tmp value must be c:\temp

The new versions doesn't have any requirement.
For kixtart 3.62 version:

  • kix362update.exe
  • kix362registry.exe

For kixtart 3.63 version:

  • kix363update.exe
  • kix363registry.exe

The registry versions install kixtart to your %systemroot%
folder and add file associations for kixtart to your HKCR registry
keys. So you have additional elements to your menu.
The update versions install kixtart also to your %systemroot%
folder and remove file associations for kixtart from your
registry.

Possible calls in your logon procedure can be:


  • x:\kixtart\kix362update.exe /q
  • %0\..\kix363registry.exe /q
  • if not exist c:\kix363.ok %0\..\kix363update.exe /q

After using above programs there will be created a control
file c:\kix362.ok or c:\kix363.ok. So it isn't
necessary to run the installation process again.

Greetings.


BTW: packages contains an update of install.kix which you can
find also on site http://home.wanadoo.nl/scripting .


MCA
(KiX Supporter)
2001-03-23 03:02 AM
Re: .KIX -> .EXE: Package and compact your script...

Dear,

An example of debug information of running install.kix, which
will be processed during execution of kix36?update.exe or
kix36?registry.exe files.

code:

Kixtart 3.63 - W95 debug mode (vs 2.00) 23:36:14

Informative INSTALL: copy c:\temp\ixp002.tmp\kix32.exe c:\windows\kix32.exe

size.old = 163840
size.new = 163840
time.old = 2000/10/15 00:00:00
time.new = 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 INSTALL: copy c:\temp\ixp002.tmp\kx16.dll c:\windows\kx16.dll

size.old = 47104
size.new = 47104
time.old = 1999/09/01 00:00:00
time.new = 1999/09/01 00:00:00

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

Informative INSTALL: copy c:\temp\ixp002.tmp\kx32.dll c:\windows\kx32.dll

size.old = 32768
size.new = 32768
time.old = 1999/09/01 00:00:00
time.new = 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 INSTALL: copy c:\temp\ixp002.tmp\kx95.dll c:\windows\kx95.dll

size.old = 36864
size.new = 36864
time.old = 1999/09/01 00:00:00
time.new = 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


logevent = Kixtart-UPDATE 2.00 script completed successfully (23:36:14 - 23:36:44) (kix32.exe kx16.dll kx32.dll kx95.dll) to "c:\windows\"

Kixtart 3.63 update incompleted. ('c:\temp\IXP002.TMP\' -> 'C:\WINDOWS\')


Greetings.

MCA
(KiX Supporter)
2001-06-08 03:45 AM
Re: .KIX -> .EXE: Package and compact your script...

Dear,

After a reaction on starters forum (= 2427) we make some changes
to all packages on our site and install.kix script.
Previously it was very difficult to trace a problem situation.
Reason: the script is an element of the package and you can't
activate a debug mode.

Extension to previous version:


  • debug mode will be active when you have declare the environment
    variable kix-debug. the value is meaningless.
  • shows pop-up windows about progress and shows which version and
    which directories will be using.
  • creates a debug file c:\kixtart.log, which gives us infor-
    mation about the installation process of your package.
  • the control file c:\kix???.ok will contain additional infor-
    mation about the kixtart files.

Attention for following issue for Windows 95 environments:

code:

too late flushing write-buffers on windows95 may give unexpected
and unwanted errors. We discover this by running COPY statement
by kixtart 4.00 beta 2 (build 24.4.2001).

For the creation of debug file c:\kixtart.log you must change
your BAT file to:

code:

set kix-debug=ok
%0\..\kix363update.exe /q
set kix-debug=


or
code:

set kix-debug=ok
if not exist c:\kix363.ok %0\..\kix363update.exe /q
set kix-debug=

Your window screen will show:

code:

First it will show a pop-up window with a message like
Installation of Kixtart 363 started from 'c:\my documents\ixp000.tmp'."
After completion it will show following pop-up window:
Installation of Kixtart 363 completed from 'c:\my documents\ixp000.tmp'. File 'KIX363.OK' created."
or
Installation of Kixtart 363 incompleted from 'c:\my documents\ixp000.tmp'. No file 'KIX363.OK' created."


Please press YES button by both pop-up windows.

The contents of kix363.ok will be

code:

[Kixtart W95]
kix32.exe 3.63=2001/06/08 01:56:52 -> 2000/10/15 14:50:20 163840
kx16.dll 3.63=2001/06/08 01:56:52 -> 1999/09/01 16:00:00 47104
kx32.dll 3.63=2001/06/08 01:56:52 -> 1999/09/01 16:00:00 32768
kx95.dll 3.63=2001/06/08 01:56:52 -> 1999/09/01 16:00:00 36864
Kixtart 3.63=installation completed at 2001/06/08 01:56:52 (=kix32.exe =kx16.dll =kx32.dll =kx95.dll) to "c:\windows\"

The contents of your debug output file c:\kixtart.log can be:

code:

----- Install.KIX 3.63 ----------------------------------------- 2001/06/08
- 1-00:48:05-
- 3-00:48:05-
- 4-00:48:05-
- 5-00:48:05-
- 6-00:48:05-
- 7-00:48:05-
- 8-00:48:05-
- 9-00:48:05-
- 10-00:48:05-
- 11-00:48:05-
- 12-00:48:05-
- 13-00:48:05-
- 14-00:48:05-
- 15-00:48:05-
- 16-00:48:05-
- 17-00:48:05-
- 18-00:48:05-
- 19-00:48:05-
- 20-00:48:05-
- 21-00:48:05-
- 22-00:48:05-
- 23-00:48:05-
- 24-00:48:05-
- 25-00:48:05-
- 26-00:48:05-
- 27-00:48:05-
- 28-00:48:05-
- 29-00:48:05-
- 30-00:48:05-
- 31-00:48:05-
- 32-00:48:05-
- 33-00:48:05-
- 34-00:48:05-
- 35-00:48:05-
- 36-00:48:05-
- 37-00:48:05-
- 38-00:48:05-
- 39-00:48:05-
- 40-00:48:05-
- 41-00:48:05-
- 42-00:48:05-
- 43-00:48:05-
- 44-00:48:05-
- 45-00:48:05-
- 46-00:48:05-
- 47-00:48:05-
- 48-00:48:05-
- 49-00:48:05-
- 50-00:48:05-
- 51-00:48:05-
- 52-00:48:05-
- 53-00:48:05-
- 54-00:48:05-
- 55-00:48:05-
- 56-00:48:05-
- 57-00:48:05-
- 58-00:48:05-
- 59-00:48:05-
- 60-00:48:05-
- 61-00:48:05-
- 62-00:48:05-
- 63-00:48:05-
- 64-00:48:05-
- 65-00:48:05-
- 66-00:48:05-
- 67-00:48:05-
- 70-00:48:05-
- 71-00:48:05-
- 72-00:48:05-
- 73-00:48:05-
- 74-00:48:05-
- 84-00:48:05-
- 85-00:48:05-
- 88-00:48:05-
- 89-00:48:05-
- 90-00:48:05-
- 91-00:48:05-
- 92-00:48:05-
- 93-00:48:05-
- 94-00:48:05-
- 95-00:48:05-
- 96-00:48:05-
- 97-00:48:05-
- 98-00:48:05-
- 104-00:48:05-
- 105-00:48:05-
- 106-00:48:05-
Kixtart 3.63 - W95 debug mode (vs 2.02) 00:48:05
- 107-00:48:05-

- 108-00:48:05-
- 109-00:48:05-
- 110-00:48:05-
- 111-00:48:05-
- 112-00:48:05-
- 113-00:48:05-
- 114-00:48:05-
- 115-00:48:05-
- 116-00:48:05-
- 117-00:48:05-
- 118-00:48:05-
- 119-00:48:05-
- 120-00:48:05-
- 121-00:48:05-
- 122-00:48:05-
- 123-00:48:05-
- 124-00:48:05-
- 125-00:48:05-
- 126-00:48:05-
- 127-00:48:05-
- 128-00:48:05-
- 129-00:48:05-
- 130-00:48:05-
- 131-00:48:05-
- 132-00:48:05-
- 133-00:48:05-
- 134-00:48:05-
- 135-00:48:05-
- 136-00:48:05-
- 139-00:48:05-
- 140-00:48:05-
- 141-00:48:05-
- 144-00:48:05-
- 145-00:48:05-
- 146-00:48:05-
- 147-00:48:05-
- 148-00:48:05-
- 149-00:48:05-
- 152-00:48:05-
- 153-00:48:05-
- 154-00:48:05-
- 155-00:48:05-
- 156-00:48:05-
- 159-00:48:05-
- 160-00:48:05-
- 161-00:48:05-
- 162-00:48:05-
- 163-00:48:05-
- 164-00:48:05-
- 165-00:48:05-
- 166-00:48:05-
- 167-00:48:05-
- 168-00:48:05-
- 169-00:48:05-
- 170-00:48:05-
- 171-00:48:05-
- 173-00:48:05-
- 174-00:48:05-
- 175-00:48:05-
- 176-00:48:05-
- 177-00:48:05-
- 178-00:48:05-
- 179-00:48:05-
- 180-00:48:05-
- 181-00:48:05-
- 182-00:48:05-
- 183-00:48:05-
- 184-00:48:05-
- 185-00:48:05-
- 186-00:48:05-
- 187-00:48:05-
- 188-00:48:05-
- 189-00:48:05-
- 190-00:48:05-
- 191-00:48:05-
- 192-00:48:05-
- 193-00:48:05-
- 194-00:48:05-
- 195-00:48:05-
- 196-00:48:05-
- 197-00:48:05-
- 198-00:48:05-
- 199-00:48:05-
- 200-00:48:05-
- 201-00:48:05-
- 202-00:48:05-
- 203-00:48:05-
- 204-00:48:05-
- 205-00:48:05-
- 206-00:48:05-
- 207-00:48:05-
- 208-00:48:05-
- 209-00:48:05-
- 212-00:48:05-
- 215-00:48:05-
- 216-00:48:05-
Informative INSTALL: copy c:\temp\ixp000.tmp\kix32.exe c:\windows\kix32.exe
- 217-00:48:05-

- 218-00:48:05-
size.old = 163840
- 219-00:48:05-
size.new = 163840
- 220-00:48:05-
time.old = 2000/10/15 14:50:20
- 221-00:48:05-
time.new = 2000/10/15 14:50:20
- 222-00:48:05-

- 223-00:48:05-
company name
- 224-00:48:05-
filedescription KiXtart main executable
- 225-00:48:05-
fileversion 3, 63, 0, 0
- 226-00:48:05-
internalname KIX32
- 227-00:48:05-
language 0409English
- 228-00:48:05-
legalcopyright Copyright Microsoft Corp. 1999
- 229-00:48:05-
legaltrademarks $
- 230-00:48:05-
originalfilename KIX32.EXE
- 231-00:48:05-
privatebuild
- 232-00:48:05-
productname KiXtart
- 233-00:48:05-
productversion 3, 63, 0, 0
- 234-00:48:05-
specialbuild
- 235-00:48:05-

- 236-00:48:05-
- 237-00:48:05-
- 238-00:48:05-
- 168-00:48:05-
- 169-00:48:05-
- 170-00:48:05-
- 171-00:48:05-
- 173-00:48:05-
- 174-00:48:05-
- 175-00:48:05-
- 176-00:48:05-
- 177-00:48:05-
- 178-00:48:05-
- 179-00:48:05-
- 180-00:48:05-
- 181-00:48:05-
- 182-00:48:05-
- 183-00:48:05-
- 184-00:48:05-
- 185-00:48:05-
- 186-00:48:05-
- 189-00:48:05-
- 192-00:48:05-
- 195-00:48:05-
- 198-00:48:05-
- 201-00:48:05-
- 204-00:48:05-
- 205-00:48:05-
- 206-00:48:05-
- 207-00:48:05-
- 208-00:48:05-
- 209-00:48:05-
- 212-00:48:05-
- 215-00:48:05-
- 216-00:48:05-
Informative INSTALL: copy c:\temp\ixp000.tmp\kx16.dll c:\windows\kx16.dll
- 217-00:48:05-

- 218-00:48:05-
size.old = 47104
- 219-00:48:05-
size.new = 47104
- 220-00:48:05-
time.old = 1999/09/01 16:00:00
- 221-00:48:05-
time.new = 1999/09/01 16:00:00
- 222-00:48:05-

- 223-00:48:05-
company name
- 224-00:48:05-
filedescription
- 225-00:48:05-
fileversion
- 226-00:48:05-
internalname
- 227-00:48:05-
language
- 228-00:48:05-
legalcopyright
- 229-00:48:05-
legaltrademarks
- 230-00:48:05-
originalfilename
- 231-00:48:05-
privatebuild
- 232-00:48:05-
productname
- 233-00:48:05-
productversion
- 234-00:48:05-
specialbuild
- 235-00:48:05-

- 236-00:48:05-
- 237-00:48:05-
- 238-00:48:05-
- 168-00:48:05-
- 169-00:48:05-
- 170-00:48:05-
- 171-00:48:05-
- 173-00:48:05-
- 174-00:48:05-
- 175-00:48:05-
- 176-00:48:05-
- 177-00:48:05-
- 178-00:48:05-
- 179-00:48:05-
- 180-00:48:05-
- 181-00:48:05-
- 182-00:48:05-
- 183-00:48:05-
- 184-00:48:05-
- 185-00:48:05-
- 186-00:48:05-
- 187-00:48:05-
- 188-00:48:05-
- 189-00:48:05-
- 190-00:48:05-
- 191-00:48:05-
- 192-00:48:05-
- 193-00:48:05-
- 194-00:48:05-
- 195-00:48:05-
- 196-00:48:05-
- 197-00:48:05-
- 198-00:48:05-
- 199-00:48:05-
- 200-00:48:05-
- 201-00:48:05-
- 202-00:48:05-
- 203-00:48:05-
- 204-00:48:05-
- 205-00:48:05-
- 206-00:48:05-
- 207-00:48:05-
- 208-00:48:05-
- 209-00:48:05-
- 212-00:48:05-
- 215-00:48:05-
- 216-00:48:05-
Informative INSTALL: copy c:\temp\ixp000.tmp\kx32.dll c:\windows\kx32.dll
- 217-00:48:05-

- 218-00:48:05-
size.old = 32768
- 219-00:48:05-
size.new = 32768
- 220-00:48:05-
time.old = 1999/09/01 16:00:00
- 221-00:48:05-
time.new = 1999/09/01 16:00:00
- 222-00:48:05-

- 223-00:48:05-
company name
- 224-00:48:05-
filedescription KiXtart 32 bit Thunk DLL
- 225-00:48:05-
fileversion 3, 60, 0, 0
- 226-00:48:05-
internalname KX32
- 227-00:48:05-
language 0409English
- 228-00:48:05-
legalcopyright Copyright © Microsoft Corp. 1999
- 229-00:48:05-
legaltrademarks
- 230-00:48:05-
originalfilename KX32.DLL
- 231-00:48:05-
privatebuild
- 232-00:48:05-
productname KiXtart
- 233-00:48:05-
productversion 3, 60, 0, 0
- 234-00:48:05-
specialbuild
- 235-00:48:05-

- 236-00:48:05-
- 237-00:48:05-
- 238-00:48:05-
- 168-00:48:05-
- 169-00:48:05-
- 170-00:48:05-
- 171-00:48:05-
- 173-00:48:05-
- 174-00:48:05-
- 175-00:48:05-
- 176-00:48:05-
- 177-00:48:05-
- 178-00:48:05-
- 179-00:48:05-
- 180-00:48:05-
- 181-00:48:05-
- 182-00:48:05-
- 183-00:48:05-
- 184-00:48:05-
- 185-00:48:05-
- 186-00:48:05-
- 187-00:48:05-
- 188-00:48:05-
- 189-00:48:05-
- 190-00:48:05-
- 191-00:48:05-
- 192-00:48:05-
- 193-00:48:05-
- 194-00:48:05-
- 195-00:48:05-
- 196-00:48:05-
- 197-00:48:05-
- 198-00:48:05-
- 199-00:48:05-
- 200-00:48:05-
- 201-00:48:05-
- 202-00:48:05-
- 203-00:48:05-
- 204-00:48:05-
- 205-00:48:05-
- 206-00:48:05-
- 207-00:48:05-
- 208-00:48:05-
- 209-00:48:05-
- 212-00:48:05-
- 215-00:48:05-
- 216-00:48:05-
Informative INSTALL: copy c:\temp\ixp000.tmp\kx95.dll c:\windows\kx95.dll
- 217-00:48:05-

- 218-00:48:05-
size.old = 36864
- 219-00:48:05-
size.new = 36864
- 220-00:48:05-
time.old = 1999/09/01 16:00:00
- 221-00:48:05-
time.new = 1999/09/01 16:00:00
- 222-00:48:05-

- 223-00:48:05-
company name
- 224-00:48:05-
filedescription KiXtart RPC client DLL
- 225-00:48:05-
fileversion 3, 60, 0, 0
- 226-00:48:05-
internalname KX95
- 227-00:48:05-
language 0409English
- 228-00:48:05-
legalcopyright Copyright © Microsoft Corp. 1999
- 229-00:48:05-
legaltrademarks
- 230-00:48:05-
originalfilename KX95.DLL
- 231-00:48:05-
privatebuild
- 232-00:48:05-
productname KiXtart
- 233-00:48:05-
productversion 3, 60, 0, 0
- 234-00:48:05-
specialbuild
- 235-00:48:05-

- 236-00:48:05-
- 237-00:48:05-
- 238-00:48:05-
- 239-00:48:05-
- 240-00:48:05-
- 241-00:48:05-
- 242-00:48:05-
- 243-00:48:05-
- 244-00:48:05-
- 245-00:48:05-
- 246-00:48:05-
- 247-00:48:05-
- 248-00:48:05-
- 254-00:48:05-
- 256-00:48:05-
- 257-00:48:05-
- 258-00:48:05-
- 247-00:48:05-
- 248-00:48:05-
- 254-00:48:05-
- 256-00:48:05-
- 257-00:48:05-
- 258-00:48:05-
- 247-00:48:05-
- 248-00:48:05-
- 254-00:48:05-
- 256-00:48:05-
- 257-00:48:05-
- 258-00:48:05-
- 247-00:48:05-
- 248-00:48:05-
- 254-00:48:05-
- 256-00:48:05-
- 257-00:48:05-
- 258-00:48:05-
- 259-00:48:05-
- 260-00:48:05-
- 261-00:48:05-
- 263-00:48:05-
- 268-00:48:05-
- 275-00:48:05-
- 276-00:48:05-
- 277-00:48:05-
- 278-00:48:05-
- 279-00:48:05-
- 280-00:48:05-
- 281-00:48:05-
- 286-00:48:05-
- 287-00:48:05-
- 292-00:48:05-
- 293-00:48:05-
- 298-00:48:05-
- 299-00:48:05-
- 300-00:48:05-
- 301-00:48:05-
- 302-00:48:05-
- 303-00:48:05-
Informative INSTALL.KIX: creation of KIX file associations.
- 304-00:48:05-
- 305-00:48:08-
- 306-00:48:08-
- 307-00:48:08-
- 308-00:48:08-
- 309-00:48:08-
- 310-00:48:08-
- 311-00:48:08-
- 312-00:48:08-
- 313-00:48:08-
- 314-00:48:08-
- 315-00:48:08-
- 316-00:48:08-
- 317-00:48:08-
- 318-00:48:08-
- 319-00:48:08-
- 320-00:48:08-

- 321-00:48:08-
logevent = Kixtart-UPDATE 2.02 script completed successfully (00:48:05 - 00:48:08) (+kix32.exe +kx16.dll +kx32.dll +kx95.dll) to "c:\windows\" (CONSOLE)
- 322-00:48:08-

- 323-00:48:08-
- 324-00:48:08-
- 325-00:48:08-
- 326-00:48:08-
- 327-00:48:08-
- 331-00:48:08-
- 332-00:48:08-
- 333-00:48:08-
- 334-00:48:08-
- 337-00:48:08-
- 340-00:48:08-
Kixtart 3.63 update completed. ('c:\temp\IXP000.TMP\' -> 'C:\WINDOWS\')
- 341-00:48:08-
- 342-00:48:08-
- 343-00:48:08-
- 344-00:48:08-
- 347-00:48:08-
- 348-00:48:08-
- 349-00:48:08-

- 350-00:48:08-
- 351-00:48:08-
- 352-00:48:08-
- 355-00:48:08-
- 356-00:48:08-
- 357-00:48:08-

winbootdir=C:\WINDOWS
PATH=C:\WINDOWS;C:\WINDOWS\COMMAND
COMSPEC=C:\WINDOWS\COMMAND.COM
TEMP=C:\temp
TMP=c:\temp
PROMPT=$t$h$h$h $p$g
DIRCMD=/l /o:n
USER=w95uk
windir=C:\WINDOWS
SNDSCAPE=C:\WINDOWS
BLASTER=A220 I7 D1 T2
KIX-DEBUG=ok

Volume in drive C is W95UK
Volume Serial Number is 2410-1DEA
Directory of C:\WINDOWS

kix32 exe 163.840 15-10-00 14:50 kix32.exe
1 file(s) 163.840 bytes
0 dir(s) 286.457.856 bytes free

Volume in drive C is W95UK
Volume Serial Number is 2410-1DEA
Directory of C:\WINDOWS

kx16 dll 47.104 01-09-99 16:00 kx16.dll
kx32 dll 32.768 01-09-99 16:00 kx32.dll
kx95 dll 36.864 01-09-99 16:00 kx95.dll
3 file(s) 116.736 bytes
0 dir(s) 286.457.856 bytes free


By possible problems run the package in debug mode and send the
debug output file c:\kixtart.log to us.
Any comment is welcome.
Greetings.

btw: the packages run first a small script. the definition of
your environment variable kix-debug will the script
with or without debugging code.
this script runs START1.KIX (original installation script) or
START2.KIX (script with additional debug information):

code:

IF setconsole("hide")
ENDIF
;
; NT/95 install kixtart - Kixtart 3.62, 3.63, 4.00
;
; (c) scripting@wanadoo.nl - 2000, 2001
;
; vs 1.00 - program
;
; 1.00 (20010605) original version. created for IExpress package.
; - split script for with/without debugging.
; - activate $debug_mode when variable %kix-debug% is declared.
; - shows also @curdir value.
;
$prgrm_version="1.00"
;
$debug_mode="no"
IF (len(ExpandEnvironmentVars(CHR(37)+"kix-debug"+CHR(37))) <> 0)
$debug_mode="yes"
ENDIF
;
IF ($debug_mode = "yes")
$message="Installation of Kixtart "+@kix+" started from '"+LCASE(@curdir)+"'."
$title="Kixtart "+@kix
IF (MessageBox($message, $title, 340, 300) <> 0)
ENDIF
? $message
ENDIF
IF ($debug_mode <> "yes")
call "start1.kix"
ELSE
call "start2.kix"
ENDIF
:end
IF (RedirectOutput("CON") = 0)
ENDIF
$debug_mode="no"
IF (len(ExpandEnvironmentVars(CHR(37)+"kix-debug"+CHR(37))) <> 0)
$debug_mode="yes"
ENDIF
;
IF ($debug_mode <> "yes")
? "Informative INSTALL: no creation of debug list 'c:\kixtart.log'"
ELSE
? "Informative INSTALL: create debug list 'c:\kixtart.log'"
IF (Exist("c:\kix"+substr(@kix,1,1)+substr(@kix,3,2)+".ok") = 1)
$message="Installation of Kixtart "+@kix+" completed from '"+LCASE(@curdir)+"'."
$message=$message+" File '"+UCASE("kix"+substr(@kix,1,1)+substr(@kix,3,2)+".ok")+"' created."
ELSE
$message="Installation of Kixtart "+@kix+" incompleted from '"+LCASE(@curdir)+"'."
$message=$message+" No file '"+UCASE("kix"+substr(@kix,1,1)+substr(@kix,3,2)+".ok")+"' created."
ENDIF
$title="Kixtart "+@kix
IF (MessageBox($message, $title, 340, 300) <> 0)
ENDIF
? $message
ENDIF
break on
flushkb


------------------
Site map:



**DONOTDELETE**
(Lurker)
2001-06-08 01:58 PM
Re: .KIX -> .EXE: Package and compact your script...

Have you thought about using a tool like SMS installer. If run from the run once when KIX is not being used you don't have to worry about the winint function and copying to temp directories etc.

Performed this above routine on 28,000 users without issue

MCA
(KiX Supporter)
2001-06-16 01:51 AM
Re: .KIX -> .EXE: Package and compact your script...

Dear,

In this situation we aren't using SMS because it isn't for free and
not anybody have install it or can install it in his environment.
With the IExpress software which you can retrieve from the internet
everybody can create his own packages. With the experience of doing
this it is very easily to create any kind of packages.
In the case of Kixtart we do a lot of additional checking and we
can create the package without really using it. The only require-
ment is: all files are situated on the same location.

After finishing you create the package with the right command call.
A benefit is: the file has been compressed also.
Greetings.

------------------
Site map:



MCA
(KiX Supporter)
2001-07-13 06:46 AM
Re: .KIX -> .EXE: Package and compact your script...

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.


MCA
(KiX Supporter)
2001-11-21 06:39 PM
Re: .KIX -> .EXE: Package and compact your script...

Dear,

We have also update a lot of files on our site after releasing
the final version of kixtart 2001 (build 62).

A short list:

  • kix400.zip
  • kix400help.chm (input by www.scriptlogic.com/kixtart)
  • kixref.exe 2.18
  • kix363strip.exe 2.33
  • kix400strip.exe 2.33

  • kix400update.exe
  • kix400registry.exe (= kix400update.exe + file associations links)

A new iexpress package of kixtart 4.00 finale release (build 62)
has been created.
The packages kix400update.exe and kix400registry.exe contains
also some changes:

  • it logs also information about windows XP (input by kdyer last night)
  • the installation mode 'update/registry' will also be logged

An example of latest issue
code:

[Kixtart NT4]
kix32.exe 4.00=2001/11/21 02:05:04 -> 2001/11/19 04:00:00 196608
kx16.dll 4.00=2001/11/21 02:05:05 -> 2001/11/19 04:00:00 47104
kx32.dll 4.00=2001/11/21 02:05:05 -> 2001/11/19 04:00:00 49152
kx95.dll 4.00=2001/11/21 02:05:05 -> 2001/11/19 04:00:00 49152
Kixtart 4.00=installation completed at 2001/11/21 02:05:05 (+kix32.exe +kx16.dll +kx32.dll +kx95.dll) to "c:\winnt\"
Kixtart 4.00 mode=update


or
code:

[Kixtart NT4]
kix32.exe 4.00=2001/11/21 02:03:16 -> 2001/11/19 04:00:00 196608
kx16.dll 4.00=2001/11/21 02:03:16 -> 2001/11/19 04:00:00 47104
kx32.dll 4.00=2001/11/21 02:03:17 -> 2001/11/19 04:00:00 49152
kx95.dll 4.00=2001/11/21 02:03:17 -> 2001/11/19 04:00:00 49152
Kixtart 4.00=installation completed at 2001/11/21 02:03:17 (+kix32.exe +kx16.dll +kx32.dll +kx95.dll) to "c:\winnt\"
Kixtart 4.00 mode=registry


any comment, question or other input is welcome.
greetings.


btw: running a "kix400update" will remove existing file associations
with .k2k, .udf, .kix and .scr.

MCA
(KiX Supporter)
2002-01-09 11:41 PM
Re: .KIX -> .EXE: Package and compact your script...

Dear,

We have create an iexpress package which contains the wkix32.exe file.
During the installation process
[/list]

  • it will verify the files wkix32.exe, kx16.dll, kx32.dll & kx95.dll
    missing files will be added. incorrect files will be replaced.
  • it will not influence the registry file association settings
  • the control file will be kix401w.ok instead of kix401.ok.
    [/list]
    The file on our site http://home.wanadoo.nl/scripting
    is
    wkix401update.exe
    A possible call in your logon batch file can be:
    code:

    @echo off
    %0\..\wkix401update.exe /q
    rem
    rem - your script call
    rem
    @echo off

    We didn't create file association entries with wkix32.exe, because the way
    of correct calling can be different on different windows environments.

    The actual iexpress packages are:

    • kix401registry.exe
      (install kix32.exe with related DLLs files. it will remove the file associations
      .k2k, .kix, .scr and .udf and also it will remove
      the menu issues)

      (creates c:\kix401.ok as control file)

    • kix401update.exe
      (install kix32.exe with related DLLs files. it will add the file associations
      .k2k, .kix, .scr and .udf and also it will add
      the menu issues)

      (creates c:\kix401.ok as control file)

    • wkix401update.exe
      (install wkix32.exe with related DLLs files. it has no influience on file associations)

      (creates c:\kix401w.exe as control file)


    Any question, comment or remark is welcome.
    greetings.

  • MCA
    (KiX Supporter)
    2002-01-22 04:33 AM
    Re: .KIX -> .EXE: Package and compact your script...

    Dear,

    A new iexpress package of kixtart 4.02 finale release (build 71)
    has been created.
    The package kix402update.exe contains also extensions:

    • it logs also information about windows XP (input by kdyer last night)
    • the installation mode 'update/registry' will also be logged

    An example of latest issue
    code:

    [Kixtart NT4]
    kix32.exe 4.02=2001/11/21 02:05:04 -> 2001/11/19 04:00:00 196608
    kx16.dll 4.02=2001/11/21 02:05:05 -> 2001/11/19 04:00:00 47104
    kx32.dll 4.02=2001/11/21 02:05:05 -> 2001/11/19 04:00:00 49152
    kx95.dll 4.02=2001/11/21 02:05:05 -> 2001/11/19 04:00:00 49152
    Kixtart 4.02=installation completed at 2001/11/21 02:05:05 (+kix32.exe +kx16.dll +kx32.dll +kx95.dll) to "c:\winnt\"
    Kixtart 4.02 mode=update


    or
    code:

    [Kixtart NT4]
    kix32.exe 4.02=2001/11/21 02:03:16 -> 2001/11/19 04:00:00 196608
    kx16.dll 4.02=2001/11/21 02:03:16 -> 2001/11/19 04:00:00 47104
    kx32.dll 4.02=2001/11/21 02:03:17 -> 2001/11/19 04:00:00 49152
    kx95.dll 4.02=2001/11/21 02:03:17 -> 2001/11/19 04:00:00 49152
    Kixtart 4.02=installation completed at 2001/11/21 02:03:17 (+kix32.exe +kx16.dll +kx32.dll +kx95.dll) to "c:\winnt\"
    Kixtart 4.02 mode=registry


    greetings.


    btw: running a kix402update will remove existing file associations
    with .k2k, .udf, .kix and .scr.

    btw: we have also create wkix402update.exe which will not influence the existing
    file associations. it is related to the WKIX32.EXE file.

    MCA
    (KiX Supporter)
    2002-04-11 04:01 AM
    Re: .KIX -> .EXE: Package and compact your script...

    Dear,

    A new iexpress package of kixtart 4.10 beta 1 (build 84) release
    has been created.

    Also all other iexpress packages are upgraded.
    New functions:
    • it can show a MessageBox during the installation of any kind of package.
      it is only necessary to define the environment variable kix-show for
      activation.
      To prevent a box each time we will show only a box
      - by installation of new kixtart release.
      - by installation of another type of kixtart (kix32.exe / wkix32.exe)
      - by an incomplete set of kixtart files. a complete set contain: kix32.exe/wkix32.exe, kx16.dll, kx32.dll, kx95.dll
      The other environment is kix-debug, which will create the debug file c:\kixtart.logand which will show other MessageBox.
    • now the check-file c:\kix???.ok file will show the build version
      of your KiXtart release.
    • only the actual check-file will remain on your local drive.
    Current availablepackages
    • kix362update.exe (kix32.exe)
    • kix363update.exe (kix32.exe)
    • kix400update.exe (kix32.exe)
    • kix401update.exe (kix32.exe)
    • kix402update.exe (kix32.exe)
    • kix410update.exe (kix32.exe)
    • kix362registry.exe (kix32.exe)
    • kix363registry.exe (kix32.exe)
    • kix400registry.exe (kix32.exe)
    • kix401registry.exe (kix32.exe)
    • kix402registry.exe (kix32.exe)
    • kix410registry.exe (kix32.exe)
    • wkix400update.exe (wkix32.exe)
    • wkix401update.exe (wkix32.exe)
    • wkix402update.exe (wkix32.exe)
    • wkix410update.exe (wkix32.exe)
    An example of new kix???.ok
    code:
    [Kixtart NT4]
    kix32.exe 4.02=2002/04/10 00:27:53 -> 2002/01/18 00:00:00 204800 (build 071)
    kx16.dll 4.02=2002/04/10 00:27:53 -> 2001/11/19 00:00:00 47104
    kx32.dll 4.02=2002/04/10 00:27:54 -> 2001/11/19 00:00:00 49152
    kx95.dll 4.02=2002/04/10 00:27:55 -> 2001/11/19 00:00:00 49152
    Kixtart 4.02=installation completed at 2002/04/10 00:27:55 (+kix32.exe +kx16.dll +kx32.dll =kx95.dll) to "c:\winnt\"
    Kixtart 4.02 mode=registry

    greetings.

    btw: running a kix???update will remove existing file associations
    with .k2k, .udf, .kix and .scr.

    btw: we have also create wkix???update.exe which will not influence the existing
    file associations. it is related to the WKIX32.EXE file.


    MCA
    (KiX Supporter)
    2002-06-20 11:50 PM
    Re: .KIX -> .EXE: Package and compact your script...

    Dear,

    All our iexpress package for updating your clients has been updated.
    Issues
    • we create the check file also in %windir% directory.
      this check file kix???.ok.
      the problem was that in some situations the file c:\kix???.ok couldn't
      be created. for backwards compatibility we create two check files
      - c:\kix???.ok
      - %windir%\kix???.ok
      btw: we are using "HKLM\Software\Microsoft\Windows\CurrentVersion\Run\Windir" value.
    • during the creation of file associations with kix32 we aren't using
      the external kixedit.reg file. it is using internal kixtart func-
      tions.
    • to prevent also problems with the installation of c:\kixedit.ico file,
      we move it also to the %windir% directory.
    • the control-file is restyled and as kixtart users you can easily read
      information from it.
      an example:
      code:
      [KiXtart]
      kix32.exe=2002/06/18 20:19:09 -> 2002/05/29 16:59:06 225280 (build 095)
      kx16.dll=2002/06/18 20:19:09 -> 2001/08/27 20:17:29 47104
      kx32.dll=2002/06/18 20:19:09 -> 2002/03/29 12:38:08 49152
      kx95.dll=2002/06/18 20:19:09 -> 2001/11/19 05:00:00 49152
      KiXtart=installation completed at 2002/06/18 20:19:09 (+kix32.exe +kx16.dll +kx32.dll +kx95.dll) to "c:\windows\"
      KiXtart release=ME -> kix 4.10 Release Candidate 2
      KiXtart mode=registry

      btw: the old format was
      code:
      [Kixtart ME]
      kix32.exe 4.10 Beta 1=2002/05/01 17:04:13 -> 2002/04/03 00:00:00 221184 (build 084)
      kx16.dll 4.10 Beta 1=2002/05/01 17:04:13 -> 2001/08/27 00:00:00 47104
      kx32.dll 4.10 Beta 1=2002/05/01 17:04:13 -> 2002/03/29 00:00:00 49152
      kx95.dll 4.10 Beta 1=2002/05/01 17:04:13 -> 2001/11/19 00:00:00 49152
      Kixtart 4.10 Beta 1=installation completed at 2002/05/01 17:04:13 (+kix32.exe +kx16.dll +kx32.dll +kx95.dll) to "c:\windows\"
      Kixtart 4.10 Beta 1 mode=registry

    • we have rename the debugging file from "c:\kixtart.log" to "%tmp%\kixtart.txt".
      btw: this file will created when environment variable "kix-debug" exist.
      btw: by problem you should mail also this file to us.
      an example of it
      tuesday 2002/06/18 20:19:09- kixtart 4.10 Release Candidate 2/3.03e script starting.
      -
      -curdir: c:\windows\temp\ixp000.tmp
      -scriptdir: c:\windows\temp\ixp000.tmp
      -scriptname: start2.kix
      -startdir: c:\windows\temp\ixp000.tmp
      -
      -userid: -/-
      -user priv: guest
      -version: inwin=2/dos=4.90/productsuite=/producttype=Windows Me/csd=
      -
      - start-20:19:09- 0 The operation completed successfully.
      - 1-20:19:09- 0 The operation completed successfully.
      - 2-20:19:09- 0 The operation completed successfully.
      - 3-20:19:09- 0 The operation completed successfully.

      - 426-20:19:10- 6 The handle is invalid.
      - end-20:19:10- 6 The handle is invalid.

      -
      -tuesday 2002/06/18 20:19:10- kixtart 4.10 Beta 1/3.03e script ending.
      -
      -Intel Pentium III (0 Mhz, memory 511 MB)
      -

    Still the special environment variable exist
    • kix-debug
      it creates a logfile in your temporary directory. name is %tmp%\kixtart.txt.
    • kix-show
      it shows information about installation progress by some MessageBox's.
    Your logon BATch file can be something like:
    code:
    @echo off
    %0\..\kix410update.exe /q
    kix32 %\..\your_script.kix
    @echo

    or
    code:
    @echo off
    %0\..\kixcheck.exe
    if errorlevel 1 %0\..\kix410update.exe /q
    kix32 \\server\netlogon\your_script.kix
    @echo off

    or
    code:
    @echo off
    if not exist %windir%\kix410.ok %0\..\kix410update.exe /q
    if not exist %windir%\kix410.ok goto net
    kix32 \\server\netlogon\your_script.kix
    goto end
    :net
    \\server\netlogon\kix32 \\server\netlogon\your_script.kix
    :end
    @echo off

    We were using our tool kixcheck in above logon BATch files
    which return an errorlevel 1 when kixtart binaries aren't installed
    in a correct way.
    The output of "kixcheck" is:
    • for a correct installation:
      code:
      KixCheck 1.05 (c) scripting@wanadoo.nl 2001

      Found as C:\WINDOWS\KIX32.EXE (29-05-2002 16:59:12 225280 bytes)
      + C:\WINDOWS\KX16.DLL (27-08-2001 20:17:58 47104 bytes)
      + C:\WINDOWS\KX32.DLL (29-03-2002 12:38:16 49152 bytes)
      + C:\WINDOWS\KX95.DLL (19-11-2001 05:00:00 49152 bytes)

      path c:\windows;c:\windows\command

      KiXtart environment: complete.

    • for an incomplete the output look like:
      code:
      KixCheck 1.05 (c) scripting@wanadoo.nl 2001

      Found as C:\WINDOWS\KIX32.EXE (29-05-2002 16:59:12 225280 bytes)
      + C:\WINDOWS\KX16.DLL (27-08-2001 20:17:58 47104 bytes)
      + C:\WINDOWS\KX32.DLL (29-03-2002 12:38:16 49152 bytes)

      path c:\windows;c:\windows\command

      KiXtart environment: incomplete. remove "c:\kix*.ok" files.

    greetings.
    (our reaction 3000- to the board)


    MCA
    (KiX Supporter)
    2002-07-08 08:32 PM
    Re: .KIX -> .EXE: Package and compact your script...

    Now compliant with Kixtart 4.10 final release (build 98)

    MCA
    (KiX Supporter)
    2002-07-08 10:14 PM
    Re: .KIX -> .EXE: Package and compact your script...

    Now compliant with Kixtart 4.10 final release (build 99)

    MCA
    (KiX Supporter)
    2002-07-19 12:01 AM
    Re: .KIX -> .EXE: Package and compact your script...

    Dear,

    Based on Lonkero reaction we have modify our tool a little bit.
    It wasn't possible to verify wkix32.exe version.
    Now we have add an option to it.
    With the call
    • kixcheck.exe
      it will verify for the kix32, kx16.dll, kx32.dll & kx95.dll files.
      it is the default selection.
      the output will be
      code:
      KixCheck 2.01 (c) scripting@wanadoo.nl 2002

      Found as C:\WINDOWS\KIX32.EXE (08-07-2002 20:41:24 225280 bytes)
      + C:\WINDOWS\KX16.DLL (27-08-2001 20:17:58 47104 bytes)
      + C:\WINDOWS\KX32.DLL (29-03-2002 12:38:16 49152 bytes)
      + C:\WINDOWS\KX95.DLL (19-11-2001 05:00:00 49152 bytes)

      path c:\windows;c:\windows\command

      KiXtart environment: complete.

    • kixcheck.exe wkix32
      it will verify for the wkix32, kx16.dll, kx32.dll & kx95.dll files.
      code:
      KixCheck 2.01 (c) scripting@wanadoo.nl 2002

      Found as C:\WINDOWS\WKIX32.EXE (29-05-2002 16:56:14 225280 bytes)
      + C:\WINDOWS\KX16.DLL (27-08-2001 20:17:58 47104 bytes)
      + C:\WINDOWS\KX32.DLL (29-03-2002 12:38:16 49152 bytes)
      + C:\WINDOWS\KX95.DLL (19-11-2001 05:00:00 49152 bytes)

      path c:\windows;c:\windows\command

      KiXtart environment: complete.

    The help information (= kixcheck ?) is
    code:
    KixCheck 2.01                      (c) MCA - scripting@wanadoo.nl - 2001, 2002
    ------------------------------------------------------------------------------
    KixCheck [kix32|wkix32]

    For simplicity we introduce also the wkixcheck.exe tool.
    Only the differences are:
    default it will search for the wkix32.exe instead of kix32.exe file.
    The output will be
    code:
    WkixCheck 2.01 (c) scripting@wanadoo.nl 2002

    Found as C:\WINDOWS\WKIX32.EXE (29-05-2002 16:56:14 225280 bytes)
    + C:\WINDOWS\KX16.DLL (27-08-2001 20:17:58 47104 bytes)
    + C:\WINDOWS\KX32.DLL (29-03-2002 12:38:16 49152 bytes)
    + C:\WINDOWS\KX95.DLL (19-11-2001 05:00:00 49152 bytes)

    path c:\windows;c:\windows\command
    KiXtart environment: complete.

    code:
    WkixCheck 2.01 (c) scripting@wanadoo.nl 2002

    Found as C:\WINDOWS\KIX32.EXE (08-07-2002 20:41:24 225280 bytes)
    + C:\WINDOWS\KX16.DLL (27-08-2001 20:17:58 47104 bytes)
    + C:\WINDOWS\KX32.DLL (29-03-2002 12:38:16 49152 bytes)
    + C:\WINDOWS\KX95.DLL (19-11-2001 05:00:00 49152 bytes)

    path c:\windows;c:\windows\command

    KiXtart environment: complete.

    The possible calls in your script can be:
    • to verify kix32.exe
      code:
      @echo off
      %0\..\kixcheck.exe
      if errorlevel 1 %0\..\kix410update.exe /q
      kix32.exe %0\..\your_script.kix
      @echo off

      or
      code:
      @echo off
      %0\..\kixcheck.exe kix32
      if errorlevel 1 %0\..\kix410update.exe /q
      kix32.exe %0\..\your_script.kix
      @echo off

      or
      code:
      @echo off
      %0\..\wkixcheck.exe kix32
      if errorlevel 1 %0\..\kix410update.exe /q
      kix32.exe %0\..\your_script.kix
      @echo off

    • to verify wkix32.exe
      code:
      @echo off
      %0\..\wkixcheck.exe
      if errorlevel 1 %0\..\wkix410update.exe /q
      kix32.exe %0\..\your_script.kix
      @echo off

      or
      code:
      @echo off
      %0\..\wkixcheck.exe wkix32
      if errorlevel 1 %0\..\kix410update.exe /q
      kix32.exe %0\..\your_script.kix
      @echo off

      or
      code:
      @echo off
      %0\..\kixcheck.exe wkix32
      if errorlevel 1 %0\..\kix410update.exe /q
      kix32.exe %0\..\your_script.kix
      @echo off

    greetings.


    MCA
    (KiX Supporter)
    2002-08-15 02:17 AM
    Re: .KIX -> .EXE: Package and compact your script...

    Dear,

    Based on the input from Kent Dyer & Les Ligetfa we
    have extend the iexpress packages a little bit.
    New is:
    • implementation of "terminal service" model.
      we are using drive based on "systemroot" registry setting. it solves
      problems with unavailable C-drive.
      for the temporary files it will use as prefix %tmp% environment
      variable.
    • status of file association .scr untouch by another association.
    • additional information will be written to debugging file. So you can
      see what the actual registry settings for .K2K, .KIX, .SCR and .UDF are.
    • script returns now also a errorlevel- 0 = a complete installation done
      - 1 = a incomplete installation done
      this value can use in your BATch file.
      f.e.
      code:
      @echo off
      %0\..\kix410update.exe /q
      if errorlevel 1 goto server
      if errorlevel 0 goto client
      goto server
      :server
      %0\..\kix32.exe %0\..\your_script.kix
      goto end
      :client
      kix32 %0\..\your_script.kix
      :end
      @echo off

    • in the NTx environment it isn't necessary to install the kx16.dll,
      kx32.dll and kx95.dll.
      we make it possible such installation, but for backward compatibility
      we introduce the additional environment variable kix-only-required.
      its value isn't important.
      the control file shows the result of such installation.
    Current environment variables to control packages are
    • kix-debug
    • kix-only-required
    • kix-show
    Examples:
    • a standard installation
      code:
      [KiXtart]
      kix32.exe=2002/08/14 02:35:01 -> 2002/07/08 20:41:12 225280 (build 099)
      kx16.dll=2002/08/14 02:35:02 -> 2001/08/27 20:17:29 47104
      kx32.dll=2002/08/14 02:35:02 -> 2002/03/29 12:38:08 49152
      kx95.dll=2002/08/14 02:35:02 -> 2001/11/19 05:00:00 49152
      KiXtart=installation completed at 2002/08/14 02:35:02 (+kix32.exe +kx16.dll +kx32.dll +kx95.dll) to "c:\windows\"
      KiXtart release=ME -> kix 4.10
      KiXtart mode=registry

      kix-only-required specified.
      code:
      [KiXtart]
      kix32.exe=2002/08/14 02:46:02 -> 2002/07/08 20:41:12 225280 (build 099)
      KiXtart=installation completed at 2002/08/14 02:46:02 (+kix32.exe -kx16.dll -kx32.dll -kx95.dll) to "c:\windows\"
      KiXtart release=NT4 -> kix 4.10
      KiXtart mode=registry (only required files)

      -kx16.dll, -kx32.dll and -kix95.dll were removed.

      kix-only-required specified.
      code:
      [KiXtart]
      kix32.exe=2002/08/14 02:57:36 -> 2002/07/08 20:41:12 225280 (build 099)
      KiXtart=installation completed at 2002/08/14 02:57:36 (+kix32.exe ?kx16.dll ?kx32.dll ?kx95.dll) to "c:\windows\"
      KiXtart release=NT4 -> kix 4.10
      KiXtart mode=registry (only required files)

      ?kx16.dll, ?kx32.dll and ?kix95.dll aren't available on drive.
    • the debugging output when kix-debug & kix-only-required are specified
      in a NTx environment:
      code:
      Kixtart 4.10 - NT4 debug mode (vs 3.07)               02:57:34

      Informative INSTALL: copy x:\kix32.exe c:\windows\kix32.exe

      size.old = 225280
      size.new = 225280
      time.old = 2002/07/08 20:41:12
      time.new = 2002/07/08 20:41:12

      company name
      filedescription KiXtart main executable
      fileversion 4, 10, 0, 0
      internalname KIX32
      language 0409English
      legalcopyright Copyright Ruud van Velsen 2002
      legaltrademarks $
      originalfilename KIX32.EXE
      privatebuild
      productname KiXtart
      productversion 4, 10, 0, 0
      specialbuild Build 099

      => KiXtart - kix32.exe - 2002/08/14 02:57:36 -> 2002/07/08 20:41:12 225280 (build 099)
      => KiXtart - - installation completed at 2002/08/14 02:57:36 (+kix32.exe ?kx16.dll ?kx32.dll ?kx95.dll) to "c:\windows\"
      Informative INSTALL: creation of KIX file associations.
      =>
      => .kix kix32 document
      => .k2k kix32 document
      => .scr kix32 document
      => .udf kix32 document
      => kix32 document Edit
      =>
      => KiXtart - KiXtart release - NT4 -> kix 4.10
      => KiXtart - KiXtart mode - registry (only required files)

      logevent = Kixtart-UPDATE 3.07 script completed successfully (02:57:34 - 02:57:36) (+kix32.exe ?kx16.dll ?kx32.dll ?kx95.dll) to "c:\windows\"

      Kixtart 4.10 update completed. ('X:\' -> 'c:\windows\')

    • the debugging output when kix-debug & kix-only-required are specified
      in a 95x environment:
      code:
      Kixtart 4.10 - ME debug mode (vs 3.07)               02:59:26

      Informative INSTALL: copy x:\kix32.exe c:\windows\kix32.exe

      size.old = 225280
      size.new = 225280
      time.old = 2002/07/08 20:41:12
      time.new = 2002/07/08 20:41:12

      company name
      filedescription KiXtart main executable
      fileversion 4, 10, 0, 0
      internalname KIX32
      language 0409English
      legalcopyright Copyright Ruud van Velsen 2002
      legaltrademarks $
      originalfilename KIX32.EXE
      privatebuild
      productname KiXtart
      productversion 4, 10, 0, 0
      specialbuild Build 099

      Informative INSTALL: copy x:\kx16.dll c:\windows\kx16.dll

      size.old = 47104
      size.new = 47104
      time.old = 2001/08/27 20:17:29
      time.new = 2001/08/27 20:17:29

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

      Informative INSTALL: copy x:\kx32.dll c:\windows\kx32.dll

      size.old = 49152
      size.new = 49152
      time.old = 2002/03/29 12:38:08
      time.new = 2002/03/29 12:38:08

      company name
      filedescription KiXtart 32 bit Thunk DLL
      fileversion 3, 61, 1, 0
      internalname KX32
      language 0409English
      legalcopyright Copyright Ruud van Velsen. 2001
      legaltrademarks
      originalfilename KX32.DLL
      privatebuild
      productname KiXtart
      productversion 3, 61, 1, 0
      specialbuild

      Informative INSTALL: copy x:\kx95.dll c:\windows\kx95.dll

      size.old = 49152
      size.new = 49152
      time.old = 2001/11/19 05:00:00
      time.new = 2001/11/19 05:00:00

      company name
      filedescription KiXtart RPC client DLL
      fileversion 3, 60, 0, 0
      internalname KX95
      language 0409English
      legalcopyright Copyright Ruud van Velsen. 2001
      legaltrademarks
      originalfilename KX95.DLL
      privatebuild
      productname KiXtart
      productversion 3, 60, 0, 0
      specialbuild

      => KiXtart - kix32.exe - 2002/08/14 02:59:31 -> 2002/07/08 20:41:12 225280 (build 099)
      => KiXtart - kx16.dll - 2002/08/14 02:59:31 -> 2001/08/27 20:17:29 47104
      => KiXtart - kx32.dll - 2002/08/14 02:59:31 -> 2002/03/29 12:38:08 49152
      => KiXtart - kx95.dll - 2002/08/14 02:59:31 -> 2001/11/19 05:00:00 49152
      => KiXtart - - installation completed at 2002/08/14 02:59:31 (+kix32.exe +kx16.dll +kx32.dll +kx95.dll) to "c:\windows\"
      Informative INSTALL: creation of KIX file associations.
      =>
      => .kix kix32 document
      => .k2k kix32 document
      => .scr kix32 document
      => .udf kix32 document
      => kix32 document Edit
      =>
      => KiXtart - KiXtart release - ME -> kix 4.10
      => KiXtart - KiXtart mode - registry

      logevent = Kixtart-UPDATE 3.07 script completed successfully (02:59:26 - 02:59:31) (+kix32.exe +kx16.dll +kx32.dll +kx95.dll) to "c:\windows\"

      Kixtart 4.10 update completed. ('X:\' -> 'C:\WINDOWS\')

    • a Kix410registry.exe installation when .scr has already another
      file association:
      code:
      Kixtart 4.10 - ME debug mode (vs 3.06)               01:30:11

      Informative INSTALL: copy x:\kix32.exe c:\windows\kix32.exe

      => KiXtart - kix32.exe - 2002/08/08 01:30:18 -> 2002/07/08 20:41:12 225280 (build 099)
      => KiXtart - kx16.dll - 2002/08/08 01:30:18 -> 2001/08/27 20:17:29 47104
      => KiXtart - kx32.dll - 2002/08/08 01:30:18 -> 2002/03/29 12:38:08 49152
      => KiXtart - kx95.dll - 2002/08/08 01:30:18 -> 2001/11/19 05:00:00 49152
      => KiXtart - - installation completed at 2002/08/08 01:30:18 (+kix32.exe +kx16.dll +kx32.dll +kx95.dll) to "c:\windows\"
      Informative INSTALL: creation of KIX file associations.
      =>
      => .kix kix32 document
      => .k2k kix32 document
      => .scr kix32 document test
      => .udf kix32 document
      => kix32 document Edit
      =>
      => KiXtart - KiXtart release - ME -> kix 4.10
      => KiXtart - KiXtart mode - registry

      logevent = Kixtart-UPDATE 3.06 script completed successfully (01:30:11 - 01:30:19) (+kix32.exe +kx16.dll +kx32.dll +kx95.dll) to "c:\windows\"

      Kixtart 4.10 update completed. ('X:\' -> 'C:\WINDOWS\')

    • a Kix410update.exe installation when .scr has already another
      file association:
      code:
      Kixtart 4.10 - ME debug mode (vs 3.06)               01:30:58

      Informative INSTALL: copy x:\kix32.exe c:\windows\kix32.exe

      => KiXtart - kix32.exe - 2002/08/08 01:31:03 -> 2002/07/08 20:41:12 225280 (build 099)
      => KiXtart - kx16.dll - 2002/08/08 01:31:03 -> 2001/08/27 20:17:29 47104
      => KiXtart - kx32.dll - 2002/08/08 01:31:03 -> 2002/03/29 12:38:08 49152
      => KiXtart - kx95.dll - 2002/08/08 01:31:03 -> 2001/11/19 05:00:00 49152
      => KiXtart - - installation completed at 2002/08/08 01:31:03 (+kix32.exe +kx16.dll +kx32.dll +kx95.dll) to "c:\windows\"
      =>
      => .kix
      => .k2k
      => .scr kix32 document test
      => .udf
      => kix32 document
      =>
      => KiXtart - KiXtart release - ME -> kix 4.10
      => KiXtart - KiXtart mode - update

      logevent = Kixtart-UPDATE 3.06 script completed successfully (01:30:58 - 01:31:03) (+kix32.exe +kx16.dll +kx32.dll +kx95.dll) to "c:\windows\"

      Kixtart 4.10 update completed. ('X:\' -> 'C:\WINDOWS\')

    • the control file when you are installation kixtart files on f.e. X-drive
      code:
      [KiXtart]
      kix32.exe=2002/08/07 23:42:53 -> 2002/07/08 20:41:12 225280 (build 099)
      kx16.dll=2002/08/07 23:42:53 -> 2001/08/27 20:17:29 47104
      kx32.dll=2002/08/07 23:42:53 -> 2002/03/29 12:38:08 49152
      kx95.dll=2002/08/07 23:42:53 -> 2001/11/19 05:00:00 49152
      KiXtart=installation completed at 2002/08/07 23:42:53 (+kix32.exe +kx16.dll +kx32.dll +kx95.dll) to "x:\windows\"
      KiXtart release=ME -> kix 4.10
      KiXtart mode=registry

    greetings.


    Kdyer
    (KiX Supporter)
    2002-10-07 06:46 PM
    Re: .KIX -> .EXE: Package and compact your script...

    MCA,

    As a follow-up to the update - Deployment of Kix Scripts.

    Made the following modifications to the INSTALL.KIX file:

    code:
      IF (@inwin = 1)
    $destination_directory=ReadValue("HKEY_LOCAL_MACHINE\software\microsoft\windows NT\currentversion", "SystemRoot")
    $system_drive=Substr($destination_directory,1,3) ; - This will show C: or M: or what drive windows is installed on -
    $destination_directory=$system_drive+"\Scripts"
    IF GETFILEATTR($destination_directory) & 16
    ELSE
    SHELL "%comspec% /c md "+$destination_directory
    ENDIF
    ELSE
    $destination_directory=ReadValue("HKEY_LOCAL_MACHINE\software\microsoft\windows\currentversion", "SystemRoot")
    $system_drive=Substr($destination_directory,1,3) ; - This will show C: or M: or what drive windows is installed on -
    $destination_directory=$system_drive+"\Scripts"
    IF GETFILEATTR($destination_directory) & 16
    ELSE
    SHELL "%comspec% /c md "+$destination_directory
    ENDIF
    ENDIF

    In the START1.KIX, made the following modification:
    code:
      IF ($nt_mode = "yes")
    $destination_directory=ReadValue("HKEY_LOCAL_MACHINE\software\microsoft\windows NT\currentversion", "SystemRoot")
    $system_drive=Substr($destination_directory,1,3) ; - This will show C: or M: or what drive windows is installed on -
    $destination_directory=$system_drive+"\Scripts"
    IF GETFILEATTR($destination_directory) & 16
    ELSE
    SHELL "%comspec% /c md "+$destination_directory
    ENDIF
    ELSE
    $destination_directory=ReadValue("HKEY_LOCAL_MACHINE\software\microsoft\windows\currentversion", "SystemRoot")
    $system_drive=Substr($destination_directory,1,3) ; - This will show C: or M: or what drive windows is installed on -
    $destination_directory=$system_drive+"\Scripts"
    IF GETFILEATTR($destination_directory) & 16
    ELSE
    SHELL "%comspec% /c md "+$destination_directory
    ENDIF
    ENDIF

    Thanks!

    Kent


    MCA
    (KiX Supporter)
    2002-11-15 02:11 AM
    Re: .KIX -> .EXE: Package and compact your script...

    Now compliant with
    - Kixtart 4.11 final release (build 104)
    - Kixtart 4.12 final release (build 112)
    greetings.

    [ 01. December 2002, 08:08: Message edited by: MCA ]


    MCA
    (KiX Supporter)
    2002-11-15 02:22 AM
    Re: .KIX -> .EXE: Package and compact your script...

    Current available versions are
    - kix362update.exe
    - kix363update.exe
    - kix402update.exe
    - kix410update.exe
    - kix411update.exe
    - kix412update.exe

    - kix362registry.exe
    - kix363registry.exe
    - kix402registry.exe
    - kix410registry.exe
    - kix411registry.exe
    - kix412registry.exe

    - wkix402update.exe
    - wkix410update.exe
    - wkix411update.exe
    - wkix412update.exe

    We have remove the following versions:
    - kix400update.exe
    - kix401update.exe
    - kix400registry.exe
    - kix401registry.exe
    - wkix400update.exe
    - wkix401update.exe
    greetings.


    MCA
    (KiX Supporter)
    2002-12-01 08:04 AM
    Re: .KIX -> .EXE: Package and compact your script...

    Dear Kent,

    Would it be nice for your situation, when the iexpress package creates also the subdirectory scripts?

    Also we understand that in your environment kixtart is installing in a correct
    way. That means:
    - within W9x environment also the necessary DLL's will be installed.
    - within NTx environment only the KIX32.EXE will be installed.
    After confirmation by you we will change our script in such a way, that it
    isn't necessary to specify an environment variable for it.

    Please confirm our request.
    greetings.

    (other related topic F2-639)

    [ 01. December 2002, 08:09: Message edited by: MCA ]


    LonkeroAdministrator
    (KiX Master Guru)
    2002-12-01 08:07 AM
    Re: .KIX -> .EXE: Package and compact your script...

    mca, just noticed, you have wrong version number for 4.11 [Wink]

    MCA
    (KiX Supporter)
    2002-12-01 08:10 AM
    Re: .KIX -> .EXE: Package and compact your script...

    Thanks Lonkero. Already correct it.

    Kdyer
    (KiX Supporter)
    2002-12-05 05:46 PM
    Re: .KIX -> .EXE: Package and compact your script...

    MCA,

    quote:

    Also we understand that in your environment kixtart is installing in a correct
    way. That means:
    - within W9x environment also the necessary DLL's will be installed.
    - within NTx environment only the KIX32.EXE will be installed.
    After confirmation by you we will change our script in such a way, that it
    isn't necessary to specify an environment variable for it.

    These are correct. I believe the DLL being unecessary has been talked about.

    (1) Why copy the DLLs when not used in an NT Environment?
    (2) Why Associate .KIX, .KX, .UDF files unless you are a "scripter" like you and me? [Big Grin]
    (3) The C:\Scripts folder change I implemented below is because we ran into a security issue when a "locked down" user could not write a file even to %windir%.

    Here are the changes made to the package:

    >> ISNTALL.KIX <<
    Original -
    code:
      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

    Change to -
    code:
      IF ($nt_mode = "yes")
    $destination_directory=ReadValue("HKEY_LOCAL_MACHINE\software\microsoft\windows NT\currentversion", "SystemRoot")
    $system_drive=Substr($destination_directory,1,3) ; - This will show C: or M: or what drive windows is installed on -
    $destination_directory=$system_drive+"\Scripts"
    IF GETFILEATTR($destination_directory) & 16
    ELSE
    MD $destination_directory
    ENDIF
    ELSE
    $destination_directory=ReadValue("HKEY_LOCAL_MACHINE\software\microsoft\windows\currentversion", "SystemRoot")
    $system_drive=Substr($destination_directory,1,3) ; - This will show C: or M: or what drive windows is installed on -
    $destination_directory=$system_drive+"\Scripts"
    IF GETFILEATTR($destination_directory) & 16
    ELSE
    MD $destination_directory
    ENDIF
    ENDIF

    >> START1.KIX <<

    Original -
    code:
      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

    Change to -
    code:
      IF ($nt_mode = "yes")
    $destination_directory=ReadValue("HKEY_LOCAL_MACHINE\software\microsoft\windows NT\currentversion", "SystemRoot")
    $system_drive=Substr($destination_directory,1,3) ; - This will show C: or M: or what drive windows is installed on -
    $destination_directory=$system_drive+"\Scripts"
    IF GETFILEATTR($destination_directory) & 16
    ELSE
    MD $destination_directory
    ENDIF
    ELSE
    $destination_directory=ReadValue("HKEY_LOCAL_MACHINE\software\microsoft\windows\currentversion", "SystemRoot")
    $system_drive=Substr($destination_directory,1,3) ; - This will show C: or M: or what drive windows is installed on -
    $destination_directory=$system_drive+"\Scripts"
    IF GETFILEATTR($destination_directory) & 16
    ELSE
    MD $destination_directory
    ENDIF
    ENDIF

    Change $update="no"

    For the Registry..

    Add in a line -
    $associat = "No"

    Above -
    $required_mode="no"

    IF $associat = "Yes"

    Add in an ENDIF below -
    code:
      IF ($debug_mode = "yes")
    ? " =>"
    ? " => .kix "+ReadValue("HKEY_CLASSES_ROOT\.kix","")
    ? " => .k2k "+ReadValue("HKEY_CLASSES_ROOT\.k2k","")
    ? " => .scr "+ReadValue("HKEY_CLASSES_ROOT\.scr","")
    ? " => .udf "+ReadValue("HKEY_CLASSES_ROOT\.udf","")
    ? " => kix32 document "+ReadValue("HKEY_CLASSES_ROOT\kix32 document\Shell","")
    ? " =>"
    ENDIF
    ENDIF ;>> Added

    Thanks,

    Kent


    MCA
    (KiX Supporter)
    2002-12-05 06:20 PM
    Re: .KIX -> .EXE: Package and compact your script...

    Dear,

    We will make it possible that anyone will have the capability to install all
    kixtart files regardless NT or not.
    In our opinion the iexpress package should be bullet-proof for new windows
    releases. It is possible that a new release requires all files.

    As reaction on
    (1) after releasing a new version it will only copy necessary kixtart files
    to client. For NTx only kix32.exe and for W9x also the DLLs.

    With the new release no environment variable is necessary for above
    way of installation.

    (2) for the general users (= none "scripters") we are using always the kix???update.exe
    version for installation. we are removing existing file associations with
    during these installation.
    Only the kix???registry.exe will create kixtart file associations.

    (3) we will think about "how to implement this".

    Kent, can you mail me those kixtart scripts?
    Later this month we try to have the new releases. At the same time we
    try to have documentation about the way it can and should use. At the
    moment we read many times the same questions.
    Of course we will send you for testing a copy of the new one, before ma-
    king them public.

    Thanks and greetings.


    Les
    (KiX Master)
    2002-12-05 06:35 PM
    Re: .KIX -> .EXE: Package and compact your script...

    Will you fix the issue of the .OK files that are created even when the update was not OK?

    Kdyer
    (KiX Supporter)
    2002-12-05 11:14 PM
    Re: .KIX -> .EXE: Package and compact your script...

    MCA,

    You've got mail!

    Kent


    MCA
    (KiX Supporter)
    2003-01-20 02:02 AM
    Re: .KIX -> .EXE: Package and compact your script...

    Dear,

    Based on "KiXtart 2001 - 4.20 release candidate 1 (build 123)" we have create
    new iexpress packages.
    Available now
    - kix420registry.exe
    - kix420update.exe
    - wkix420update.exe
    Now available by

    Summary of Site
    &
    Home - Kix Downloads

    pages.
    greetings.


    MCA
    (KiX Supporter)
    2003-10-16 08:07 PM
    Re: .KIX -> .EXE: Package and compact your script...

    Dear,

    Add new kix422update.exe & kix422registry.exe. Compliant with KiXtart 4.22 release candidate 1.
    Update of kix420update.exe, kix421update.exe, kix420registry.exe & kix421registry.exe.

    An example of check file.
    code:
    [KiXtart]
    kix32.exe=2003/10/10 01:28:56 -> 2003/08/25 16:32:07 241664 (build 137)
    kx16.dll=2003/10/10 01:28:56 -> 2001/08/27 20:17:29 47104
    kx32.dll=2003/10/10 01:28:56 -> 2002/03/29 12:38:08 49152
    kx95.dll=2003/10/10 01:28:56 -> 2002/11/11 08:50:03 49152 (build 003)
    KiXtart=installation completed at 2003/10/10 01:28:56 (+kix32.exe +kx16.dll +kx32.dll +kx95.dll) to "c:\windows\"
    KiXtart release=Windows Me -> kix 4.22 Release Candidate 1
    KiXtart mode=registry

    Now available by

    Summary of Site
    &
    Home - Kix Downloads

    pages
    greetings.

    btw: Also wkix422update.exe, wkix421update.exe & wkix420update.exe has been updated.


    Les
    (KiX Master)
    2003-10-17 01:39 AM
    Re: .KIX -> .EXE: Package and compact your script...

    Instead of packaging RC versions, why not wait till they go gold?

    MCA
    (KiX Supporter)
    2003-10-17 03:54 AM
    Re: .KIX -> .EXE: Package and compact your script...

    Dear,

    Of course, that was possible.

    Sometime people were asking "where are the new packages for kixtart 4.22 release".
    For those beta-testers it can be handy.

    With previous upgrades it was a very simple process to create those package.
    By changing the @kix layout we MUST not only modify our internal scripts, but
    also the kixstrip program for the debugging part.
    Now the process is the same again.

    When Ruud goes for GOLD we can distribute that version with related package
    very fast.
    greetings.


    Sealeopard
    (KiX Master)
    2003-10-17 05:15 AM
    Re: .KIX -> .EXE: Package and compact your script...

    And why not consolidate all these announcements that regularly dredge up old posts into a single one in the 'General' forum?

    LonkeroAdministrator
    (KiX Master Guru)
    2003-10-17 08:42 AM
    Re: .KIX -> .EXE: Package and compact your script...

    that's like really nice idea.
    MCA, I know you don't want to do that as you have the "version history" info threads...
    but imagine.
    all the stuff in one announcement.
    "what has been updated on scripting@wandandoo"
    or, "scripting@wandandoo has been updated"

    and when there is like month or more between the updates, do totally new topic that has also reference to "older updates to site"
    this way they will not break in chain and member don't need to scroll to whatever page in topic to get to the info.
    what ya think?


    MCA
    (KiX Supporter)
    2003-10-17 04:14 PM
    Re: .KIX -> .EXE: Package and compact your script...

    Dear,

    The idea isn't bad, but our site topics have all kind of links to special "kixtart.org" topics.
    Those "kixtart.org" topics are a way of document our items.

    First, everybody can read all kind of history information of our site on our site.
    Secondly, everybody - who is a Member of Site - will be informed by mail what has been updated.
    Third, it prevents that we must rewrite relevant documentation each time. Now we need
    only to add new elements to it.
    Fourth, not everybody is using all the new stuff.
    Fifth, most of those 'dragged' topics are informative topics.

    Lonkero, the scrolling part isn't a big issue. The UBB.classic version can go directly
    to latest posts of a topic.
    greetings.