#74763 - 2003-05-05 07:27 AM
Re: Re-Write of the KIX32.EXE Deployment tool
|
MCA
KiX Supporter
Registered: 2000-04-28
Posts: 5152
Loc: Netherlands, EU
|
Dear,
In an earlier post of us in this topic you can read quote:
Also it can be necessary that you must install kixtart on your clients. F.e. we are running all kind of scripts in the background without the requirement of a network connection. Also during logging on and with the speed of current networks such installation isn't necessary. During logging on we will always updating our kixtart binaries on the clients without using our control file to skip this element. Also such update isn't a big problem by modem connection.
In our opinion FC isn't a good way of comparison, which has to deal with the control file. Our version of control file is changing all the time based on type of windows and the time of installation.
When you have problem with the deletion of old file it will be good to include those information also in f.e. control file. A control file which can be located on the server too. greetings.
|
Top
|
|
|
|
#74764 - 2003-05-05 08:11 AM
Re: Re-Write of the KIX32.EXE Deployment tool
|
Kdyer
KiX Supporter
Registered: 2001-01-03
Posts: 6241
Loc: Tigard, OR
|
MCA,
Please see my responses..
quote:
An alternative can be that you put those informative to the HKLM hive.
If you have a "locked down" user, would this still be available?
quote:
has to deal with the possibility that the environment variable %windir% doesn't exist.
Where in the world is this coming from? In time that we have been doing Computer Support (going on 8+ years now). This has never been true.. The only exception would be if you as the Technician were tweaking with the PATH. Why? Almost all programs out there need to know where WINDOWS is located. OK.. 16-Bit Apps? Sure, they need to know where to find WOWEXEC and NTVDM too.. Or, even %WINDIR%\command..
quote:
c:\scripts\kix32.exe ..other files..
In testing with various users on our domain, we decided to go with a folder outside of %WINDIR% as we had trouble copying a file there.
To Lonkero.. quote:
it's slow to run logon-from network but with even slow 256kb connection it's already quick enough to not need a dist...
We are starting to investigate this too. We are seeing some pretty dramatic results. You are 100% correct, you don't have to create distro package either.
Back to MCA.. quote:
When you have problem with the deletion of old file it will be good to include those information also in f.e. control file. A control file which can be located on the server too.
So.. Then, why not include this in the login log for the client.. You could check a database, currently we use a rather large text file (yes, a performance hit). But an Access or SQL Database, you could not only write the client login info, but KIX too. But, then again, if you keep the Executable and script on the server, is this needed? Sure, this is grand exercise for people that have not decided or cannot make this type of transistion.
Thanks,
Kent
|
Top
|
|
|
|
#74765 - 2003-05-05 02:51 PM
Re: Re-Write of the KIX32.EXE Deployment tool
|
Kdyer
KiX Supporter
Registered: 2001-01-03
Posts: 6241
Loc: Tigard, OR
|
OK.. So, we want to migrate our clients from NTLOGON to running KiX directly. Does this sound like a good candidate for for an FAQ?
Taking from the topic - MS-Tech Article findings: 318689
We obtain the following code (thanks Jooel for the code clean up on the Logger User Defined Function):
code:
CLS BREAK ON $DomainString='DOMAIN' ;Replace with your domain $GroupString='Domain Users' $GroupObj = GetObject('WinNT://' + $DomainString + '/' + $GroupString) For each $UserObj in $GroupObj.Members ;Look for the word NTLOGON in case of NTLOGON OR NTLOGON.BAT IF $UserObj.AccountDisabled<>'True' AND INSTR($UserObj.LoginScript,'NTLOGON') ?$UserObj.Name ?$UserObj.FullName $UserObj.LoginScript = 'WKIX32.EXE' $UserObj.SetInfo $error=@error $logshare='H:\' ;Change to an available drive or UNC path $logfile=$logshare+$DomainString+'CHANGESCRIPT.CSV' $logdata=$UserObj.Name+','+$UserObj.FullName+','+$error+@CRLF LOGGER($logfile,$logdata)
ENDIF Next ?'--' ?'Script complete' SLEEP 4
FUNCTION LOGGER($logfile,$logdata) DIM $n WHILE Open(1, $logfile, 5) OR $n=5 IF $n '.' ELSE ?'Please wait' ENDIF $n=$n+1 SLEEP 3 LOOP $n=WriteLine(1, $logdata) $n=Close(1) ENDFUNCTION
Thanks,
Kent [ 05. May 2003, 21:11: Message edited by: kdyer ]
|
Top
|
|
|
|
#74767 - 2003-05-05 08:35 PM
Re: Re-Write of the KIX32.EXE Deployment tool
|
Kdyer
KiX Supporter
Registered: 2001-01-03
Posts: 6241
Loc: Tigard, OR
|
Question..
How does WKIX32 "know" what to use for the login script? We have several .KIX files in the NETLOGON share.
Kent
|
Top
|
|
|
|
#74770 - 2003-05-05 08:44 PM
Re: Re-Write of the KIX32.EXE Deployment tool
|
Kdyer
KiX Supporter
Registered: 2001-01-03
Posts: 6241
Loc: Tigard, OR
|
|
Top
|
|
|
|
#74775 - 2003-05-07 01:07 AM
Re: Re-Write of the KIX32.EXE Deployment tool
|
Kdyer
KiX Supporter
Registered: 2001-01-03
Posts: 6241
Loc: Tigard, OR
|
With the update to the install script.. It works fine with KiXtart 4.12 or better..
With KiXtart 4.02 or better, we need to remove the lines with JOIN in place. For example:
code:
;KiXtart >= 4.12 $msg=LEFT(JOIN(split(@kix,'.'),''),3) ;KiXtart > 4.02 ;$msg=left((split(@kix,'.')[0]+split(@kix,'.')[1]),3)
Thanks,
Kent
|
Top
|
|
|
|
#74777 - 2003-06-20 02:13 PM
Re: Re-Write of the KIX32.EXE Deployment tool
|
Kdyer
KiX Supporter
Registered: 2001-01-03
Posts: 6241
Loc: Tigard, OR
|
Stop the presses..
I have uncovered a fundamental problem with this process..
If you look at the SED File from IEXPRESS, you see the following:
code:
AppLaunched=KIX32.EXE PostInstallCmd=KIX32.EXE install.kix
And you look at NTLOGON.BAT, you see:
code:
if not exist %SystemDrive%\Scripts\kix402.ok %LOGONSERVER%\NETLOGON\Programs\kix402update.exe /q %SystemDrive%\Scripts\kix32.exe %LOGONSERVER%\NETLOGON\Kixtart.kix /f GOTO END
The problem is that if KIX402.OK (it should not matter what version) is not on the client system, it spawns two login scripts. This is because we are using KIXTART.KIX on both of our domains and when the "Applaunched" is done from IEXpress, it looks for KIXTART.KIX and starts it as well as the NTLOGON.BAT. I have talked with our Management team about converting the user profiles to use WKIX32 in place of NTLOGON and they are pretty content to leave it as is.
I have tried to do the following in the NTLOGON.BAT File in an attempt to remedy this -
code:
if not exist %SystemDrive%\Scripts\kix402.ok %LOGONSERVER%\NETLOGON\Programs\kix402update.exe /q && GOTO END %SystemDrive%\Scripts\kix32.exe %LOGONSERVER%\NETLOGON\Kixtart.kix /f GOTO END
The problem now is when you add && GOTO END, the script does not start then.
Hmmm..
Kent
|
Top
|
|
|
|
#74778 - 2003-06-20 11:21 PM
Re: Re-Write of the KIX32.EXE Deployment tool
|
Kdyer
KiX Supporter
Registered: 2001-01-03
Posts: 6241
Loc: Tigard, OR
|
Fixed the issues -
Left the NTLOGON.BAT as is:
code:
if not exist %SystemDrive%\Scripts\kix402.ok %LOGONSERVER%\NETLOGON\Programs\kix402update.exe /q CALL %SystemDrive%\Scripts\kix32.exe %LOGONSERVER%\NETLOGON\Kixtart.kix /f
Made the following changes to the INSTALL.KIX file:
code:
$tmp='%tmp%\' $destdir=split('%WINDIR%',':')[0]+':\Scripts\' IF @KIX="4.02" ;KiXtart > 4.02 $srcdir=@scriptdir $msg=left((split(@kix,'.')[0]+split(@kix,'.')[1]),3) ELSE ;KiXtart >= 4.12 $srcdir=@scriptdir+'\' $msg=LEFT(JOIN(split(@kix,'.'),''),3) ENDIF
The last change is with the line -
code:
COPY '$srcfile' $destfile /h
Then looked at the .SED file and made the following change -
code:
AppLaunched=kix32.exe $ PostInstallCmd=kix32.exe install.kix
The kix32.exe $ needed unless you want to have the KIXTART.KIX be spawned twice.
HTH,
Kent
|
Top
|
|
|
|
Moderator: Glenn Barnas, NTDOC, Arend_, Jochen, Radimus, Allen, ShaneEP, Ruud van Velsen, Mart
|
0 registered
and 369 anonymous users online.
|
|
|