#50380 - 2000-06-28 03:04 PM
.KIX -> .EXE: Package and compact your script...
|
Flavien
Getting the hang of it
Registered: 1999-07-21
Posts: 95
Loc: Geneva, Switzerland
|
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).]
|
Top
|
|
|
|
#50382 - 2000-07-11 09:03 AM
Re: .KIX -> .EXE: Package and compact your script...
|
Flavien
Getting the hang of it
Registered: 1999-07-21
Posts: 95
Loc: Geneva, Switzerland
|
For the little window, you can get rid of it with the argument '/q:a'. Exemple: lpt2prt.exe /q:aFor 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?
|
Top
|
|
|
|
#50383 - 2000-07-14 01:50 PM
Re: .KIX -> .EXE: Package and compact your script...
|
Anonymous
Anonymous
Unregistered
|
looks like this could work well in some circumstances...Does anyone know about the license requirments to use these progs. thanks
|
Top
|
|
|
|
#50384 - 2000-07-15 07:54 PM
Re: .KIX -> .EXE: Package and compact your script...
|
MCA
KiX Supporter
Registered: 2000-04-28
Posts: 5152
Loc: Netherlands, EU
|
Information about license of Internet Administrator Resource Kitcode:
END-USER LICENSE AGREEMENT FOR MICROSOFT SOFTWAREIMPORTANT-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.
|
Top
|
|
|
|
#50385 - 2000-07-15 07:55 PM
Re: .KIX -> .EXE: Package and compact your script...
|
MCA
KiX Supporter
Registered: 2000-04-28
Posts: 5152
Loc: Netherlands, EU
|
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:14Informative 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).]
|
Top
|
|
|
|
#50386 - 2000-07-17 09:29 AM
Re: .KIX -> .EXE: Package and compact your script...
|
Flavien
Getting the hang of it
Registered: 1999-07-21
Posts: 95
Loc: Geneva, Switzerland
|
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).]
|
Top
|
|
|
|
#50387 - 2000-07-17 09:29 PM
Re: .KIX -> .EXE: Package and compact your script...
|
MCA
KiX Supporter
Registered: 2000-04-28
Posts: 5152
Loc: Netherlands, EU
|
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).]
|
Top
|
|
|
|
#50391 - 2001-03-22 11:26 PM
Re: .KIX -> .EXE: Package and compact your script...
|
MCA
KiX Supporter
Registered: 2000-04-28
Posts: 5152
Loc: Netherlands, EU
|
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 .
|
Top
|
|
|
|
#50392 - 2001-03-23 03:02 AM
Re: .KIX -> .EXE: Package and compact your script...
|
MCA
KiX Supporter
Registered: 2000-04-28
Posts: 5152
Loc: Netherlands, EU
|
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:14Informative 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.
|
Top
|
|
|
|
#50393 - 2001-06-08 03:45 AM
Re: .KIX -> .EXE: Package and compact your script...
|
MCA
KiX Supporter
Registered: 2000-04-28
Posts: 5152
Loc: Netherlands, EU
|
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:
|
Top
|
|
|
|
#50394 - 2001-06-08 01:58 PM
Re: .KIX -> .EXE: Package and compact your script...
|
Anonymous
Anonymous
Unregistered
|
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
|
Top
|
|
|
|
#50398 - 2002-01-09 11:41 PM
Re: .KIX -> .EXE: Package and compact your script...
|
MCA
KiX Supporter
Registered: 2000-04-28
Posts: 5152
Loc: Netherlands, EU
|
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.
|
Top
|
|
|
|
Moderator: Glenn Barnas, NTDOC, Arend_, Jochen, Radimus, Allen, ShaneEP, Ruud van Velsen, Mart
|
1 registered
(Allen)
and 466 anonymous users online.
|
|
|