First I have to mention that we do not work as you did. We do not have installed the RPC and do not work with KX95.DLLWe work with around 300 W95 clients which have KIX32.EXE, KX16.DLL and KX32.DLL in their \windows\system directory.
At this time have have set the upgrade to go automaticly.
First I have made a share for the update in which I have placed the files for the \windows\system directory.
On the NETLOGON I have placed a batchfile which is started at the Logon. This batchfile looks if there is a file called kixtart.upd in the \windows\system directory. If not it will copy the files for KIXtart to this directory.
Every user has his own script this script set the time to the domaintime. Then the virusscanner will be upgraded and the share and printers are connected.
After this a subscript is started which looks if there is a program update ready for the user usually a SMS.
This subscript also has a subscript which compare the KIX32.EXE in the \windows\system directory with the one on the update share. If these are the same it places a file called kixtart.upd on the local drive this is done for the batchfile.
The only thing which I am working on is that a few of our notebooks have problem with starting the scripts. The error I am getting is:
Can not find KX16.DLL these must be in %path% or %windir%.
The \windows\system directory is in the path of autoexec.bat.
Files:
kixtart.bat:
@echo off
if not exist c:\windows\system\kix.upd goto 1verder
goto 2verder
:1verder
net use j: \\FILESERVER\update$ /y
copy j:\kix32.exe c:\windows\system > nul
copy j:\kx16.dll c:\windows\system > nul
copy j:\kx32.dll c:\windows\system > nul
net use j: /d /y
:2verder
echo The shares are being connected ......
c:\windows\system\kix32.exe
Userscript:
settime "TIMEDOMAIN"
shell "\\SERVER\share$$\AUTOPCC.EXE"
use i: "\\SERVER\shareA"
use n: "\\SERVER\shareB"
call update.scr
Update.scr:
use j: "\\Server\update$$"
if exist ("j:\"+@userid+".scr")
call ("j:\"+@userid+".scr") ; a script calling a SMS or copies some files
del "j:\"+@userid+".scr"
endif
call updatekx.scr
use j: /delete
exit
updatekx.scr:
$VER=GetFileTime ("c:\windows\system\kix32.exe")
$UPD=GetFileTime ("j:\kix32.exe")
IF $VER=$UPD
copy "j:\update" "c:\windows\system\kix.upd" ; J:\update is a file containing some tekst
goto end
else
if exist ("c:\windows\system\kix.upd")
del "c:\windows\system\kix.upd"
endif
:end
EXIT