Hi

I know this type of problem has been posted many times but here we go again.

I have 5 NT4 Domain Controllers running KIX3.63, with no KIXRPC service. I have 200 Win95 clients who run the logon script from a DC. The logon script runs OK until the final stages where the log files are created.

During the final stages an illegal operation occurs, I have checked that all DC servers have the same KIX version, I do not believe I need the KIXRPC service, has anyone got any suggestions for possible workaround.

Kix batch program 'fhdckix.bat' below
code:
  
@ECHO OFF
%0\..\kix32 %0\..\fhdc.kix
exit

Kix Script 'fhdc.kix' below
code:
;**
;** Forest Heath District Council Kixtart Logon Script
;**

;** Copy Previous Kixtart Desktop Log File
shell "COMMAND.COM /C COPY C:\kix.log C:\kix-old.log"

;** Setup Environment
setascii("on")
flushkb
setconsole("FOREGROUND")
color w+/b
cls

; Set time to logon server
if ((@WKSTA = "fhdcchpdc1") or (substr(@WKSTA,1,6) = "FH-MEM"))
goto "xsettime"
endif
if (@LSERVER = "\\fhdcchfp1")
shell "NET TIME \\fhdcchfp1 /SET /YES"
endif
if (@LSERVER = "\\fhdcchgw1")
shell "NET TIME \\fhdcchgw1 /SET /YES"
endif
if (@LSERVER = "\\fhdcchgw2")
shell "NET TIME \\fhdcchgw2 /SET /YES"
endif
if (@LSERVER = "\\fhdcchmail")
shell "NET TIME \\fhdcchmail /SET /YES"
endif
if (@LSERVER = "\\fhdcchpdc1")
shell "NET TIME \\fhdcchpdc1 /SET /YES"
endif
cls
:xsettime

;** Initialise Variables
$HH = substr(@TIME,1,2)
$PWEXPIRE = 28 - @PWAGE
if (@PWAGE > 28)
$PWEXPIRE = 0
endif

;** Fox IT Logo and Logon Details
?"Kix Version: @KIX"
?"Domain: @DOMAIN"
?"Logon Server: @LSERVER"
?"Computername: @WKSTA"
?"User ID: @USERID"
?"Priviledge: @PRIV"
?"Password Expiry: $PWEXPIRE days"
?"@DATE Time: @TIME"

;** Logon Welcome Message
if ($HH < 12)
$HELLO = "Good morning"
endif
if (($HH > 11) and ($HH < 18))
$HELLO = "Good afternoon"
endif
if ($HH > 17)
$HELLO = "Good evening"
endif
$NAME = substr(@FULLNAME,1,instr(@FULLNAME," ")-1)
?
?"$HELLO $NAME, You are logged onto the FHDC Windows NT Domain."

;** Drive Mappings Message
?"Logon drive mappings are;"

;** U: User Mapping
if (instr(@HOMESHR,"fhdcchfp1"))
$HOMESHR = "\\fhdcchfp1\@USERID"
else
$HOMESHR = "\\fhdcchfp2\@USERID"
endif
use U: $HOMESHR
?"U: - Personal"

;** G: Primary Group Mapping
if (ingroup("Accounts"))
use G: "\\fhdcchfp1\accounts"
?"G: - Accounts"
endif
if (ingroup("Admin"))
use G: "\\fhdcchfp2\admin"
?"G: - Administration"
endif
if (ingroup("Audit"))
use G: "\\fhdcchfp2\audit"
?"G: - Audit"
endif
if (ingroup("Dev&Planning"))
use G: "\\fhdcchfp1\dev&planning"
?"G: - Development & Planning"
endif
if ((ingroup("Dir-DCS-Sec")) and (ingroup("Dev&Planning") =0))
use G: "\\fhdcchfp2\dir-dcs-sec"
?"G: - Director of DCS Secretary"
endif
if (ingroup("Dir-Fin-Sec"))
use G: "\\fhdcchfp1\dir-fin-sec"
?"G: - Director of Finance Secretary"
endif
if ((ingroup("Dir-LA-Sec")) and (ingroup("Legal") = 0))
use G: "\\fhdcchfp2\dir-la-sec"
?"G: - Director of Law & Admin Secretary"
endif
if (ingroup("Env-Services"))
use G: "\\fhdcchfp1\envserv"
?"G: - Environmental Services"
endif
if (ingroup("Fox-IT"))
use G: "\\fhdcchfp2\fox-it"
?"G: - Fox IT"
endif
if ((ingroup("Housing")) and (ingroup("Property") =0))
use G: "\\fhdcchfp2\housing"
?"G: - Housing"
endif
if (ingroup("HR"))
use G: "\\fhdcchfp1\hr"
?"G: - Human Resources"
endif
if (ingroup("IT"))
use G: "\\fhdcchfp1\it"
?"G: - Information Technology"
endif
if (ingroup("Land Charges"))
use G: "\\fhdcchfp2\land-charges"
?"G: - Land Charges"
endif
if ((ingroup("LandProp&EconDev")) and (ingroup(Housing) =0))
use G: "\\fhdcchfp2\land&econdev"
?"G: - Land & Property \ Economic Development"
endif
if (ingroup("Legal"))
use G: "\\fhdcchfp1\legal"
?"G: - Legal"
endif
if ((((ingroup("Leisure")) and (ingroup("Dev&Planning") = 0)) and (ingroup("LandProp&EconDev") = 0)) and (ingroup("Dir-Fin-Sec") = 0))
use G: "\\fhdcchfp2\leisure"
?"G: - Leisure Services"
endif
if (ingroup("Members"))
use G: "\\fhdcchfp2\members"
?"G: - Council Members"
endif
if (ingroup("Policy"))
use G: "\\fhdcchfp2\policy"
?"G: - Policy Office"
endif
if (ingroup("PR"))
use G: "\\fhdcchfp1\pr"
?"G: - Public Relations"
endif
if ((ingroup("Property")) and (ingroup("Fox-IT") = 0))
use G: "\\fhdcchfp1\property"
?"G: - Property Services"
endif
if (ingroup("Revenues"))
use G: "\\fhdcchfp2\revenues"
?"G: - Revenues"
endif
if (ingroup("Training"))
use G: "\\fhdcchfp1\training"
?"G: - Training"
endif

;** H: Supplementary Group Mapping
if ((ingroup("Dev&Planning")) and (ingroup("Property")))
use H: "\\fhdcchfp1\dev&planning"
?"H: - Dev&Planning"
endif
if ((ingroup("Dir-DCS-Sec")) and (ingroup("Dev&Planning")))
use H: "\\fhdcchfp2\dir-dcs-sec"
?"H: - Director of DCS Secretary"
endif
if ((ingroup("Dir-LA-Sec")) and (ingroup("Legal")))
use H: "\\fhdcchfp2\dir-la-sec"
?"H: - Director of Law and Admin Secretary"
endif
if ((ingroup("Housing")) and (ingroup("Property")))
use H: "\\fhdcchfp2\housing"
?"H: - Housing"
endif
if ((ingroup("Leisure")) and (ingroup("Dev&Planning")))
use H: "\\fhdcchfp2\leisure"
?"H: - Leisure Services"
endif
if ((ingroup("Leisure")) and (ingroup("Dir-Fin-Sec")))
use H: "\\fhdcchfp2\leisure"
?"H: - Leisure Services"
endif
if ((ingroup("Leisure")) and (ingroup("LandProp&EconDev")))
use H: "\\fhdcchfp2\leisure"
?"H: - Leisure Services"
endif
if ((ingroup("Payroll")) and (ingroup("Accounts")))
use H: "\\fhdcchfp1\payroll"
?"H: - Payroll"
endif
if ((ingroup("Property")) and (ingroup("Fox-IT")))
use H: "\\fhdcchfp1\property"
?"H: - Property Services"
endif
if (ingroup("PR-ReadOnly"))
use H: "\\fhdcchfp1\pr"
?"H: - Public Relations (Read Only)"
endif

;** I: Supplementary Group Mapping
if (((ingroup("LandProp&EconDev")) and (ingroup("Housing"))) and (ingroup("Property")))
use I: "\\fhdcchfp2\land&econdev"
?"I: - Land & Property \ Economic Development"
endif

;** J: Supplementary Group Mapping

;** K: Application Mapping
if (ingroup("Env-Services"))
use K: "\\fhdcchfp1\mka"
?"K: - Mka Public Protection Wizard"
endif

;** L: Application Mapping
if (ingroup("Icon Export-Import"))
use L: "\\fhdcchap1\iconftf"
?"L: - Icon Export-Import"
endif

;** M: Application Mapping
if (ingroup("Personnel-Manager"))
use M: "\\fhdcchfp2\personnel manager"
?"M: - Personnel Manager"
endif

;** N: Application Mapping
if ingroup("SSM")
if (ingroup("Accounts"))
use N: "\\fhdcchfp1\ssmbuac"
?"N: - SSM Backup"
endif
if (ingroup("Admin"))
use N: "\\fhdcchfp2\ssmbuad"
?"N: - SSM Backup"
endif
if (ingroup("Dev&Planning"))
use N: "\\fhdcchfp1\ssmbupl"
?"N: - SSM Backup"
endif
if (ingroup("Env-Services"))
use N: "\\fhdcchfp1\ssmbueh"
?"N: - SSM Backup"
endif
if ((ingroup("Housing")) or (ingroup("Property")))
use N: "\\fhdcchfp1\ssmbuhr"
?"N: - SSM Backup"
endif
if (ingroup("IT"))
use N: "\\fhdcchfp1\ssmbuit"
?"N: - SSM Backup"
endif
if ((ingroup("Legal")) or (ingroup("Dir-LA-Sec")))
use N: "\\fhdcchfp1\ssmbulg"
?"N: - SSM Backup"
endif
endif

;** O: Application Mapping
if (ingroup ("Orch-Word-Data"))
use O: "\\fhdcchap3\worddata"
?"O: - Orchard WordData"
endif

;** P: Application Mapping
if ((ingroup("Revenues")) or (ingroup("IT")))
use P: "\\fhdcchfp1\qmcharts"
?"P: - QM Charts"
endif

;** Q: Application Mapping
if (ingroup ("Corporate-Apps"))
use Q: "\\fhdcchfp2\applications"
?"Q: - Applications"
endif

;** R: Application Mapping
if (ingroup ("AGRShares"))
use R: "\\fhdcchap6\shares"
?"R: - Agresso Shares Test System"
endif

;** S: Application Mapping
if (ingroup ("Land Charges"))
use S: "\\fhdcchap2\kofax"
?"S: - Kofax Share"
endif

;** T: Application Mapping
if (ingroup ("AGRShares"))
use T: "\\fhdcchap5\shares_live"
?"T: - Agresso Shares Live System"
endif

;** X: FHDC Corporate Mapping
use X: "\\fhdcchfp2\corporate"
?"X: - FHDC Corporate"

;** Helpdesk Message
?
?"Problems should be reported to the Fox IT helpdesk on **** or ****-*******."

;** Exit Message
if (substr(@WKSTA,1,6) = "FH-MEM")
goto xpresskey
endif
?"Press any key to continue."
get $KEY
:xpresskey

;** Admin Tasks
?"Updates start"
if ((substr(@WKSTA,1,2) = "DT") OR (substr(@WKSTA,1,2) = "LT"))
shell "COMMAND.COM /C \\fhdcchfp1\support\locate.bat"
endif
if (substr(@WKSTA,1,5) = "DT023")
shell "COMMAND.COM /C \\fhdcchfp1\support\locdt023.bat"
endif
if ((substr(@WKSTA,1,2) = "DT") OR (substr(@WKSTA,1,2) = "LT"))
shell "COMMAND.COM /C \\fhdcchfp1\support\normal.bat"
endif
if (exist("C:\Windows\Start Menu\Programs\StartUp\Microsoft Find Fast.lnk") = 1)
shell "COMMAND.COM /C \\fhdcchfp1\support\off97del.bat"
endif
if ((substr(@WKSTA,1,2) = "DT") OR (substr(@WKSTA,1,2) = "LT"))
shell "COMMAND.COM /C \\fhdcchfp1\support\sdate.bat"
endif
if (substr(@WKSTA,1,6) = "FH-MEM")
shell "COMMAND.COM /C \\fhdcchfp1\support\2kwd97.bat"
endif
?"Updates end"

;** SMS Client Installation
;if (((substr(@WKSTA,1,2) = "DT") or (substr(@WKSTA,1,2) = "LT")) or (substr(@WKSTA,6,1) = "W"))
; shell "COMMAND.COM /E:2048 /C \\fhdcchpdc1\netlogon\SMSLS.BAT"
;endif
?"End of logon script(1)"

;** Kixtart Desktop Log
?"End of logon script(2)"
redirectoutput("C:\kix.log",1)
?"Log Starts @DATE @TIME"
?"Kix Version: @KIX"
?"Domain: @DOMAIN"
?"Logon Server: @LSERVER"
?"Computername: @WKSTA"
?"Address: @ADDRESS"
?"User ID: @USERID"
?"Full Name: @FULLNAME"
?"Priviledge: @PRIV"
?"Password Expiry: $PWEXPIRE"
? use list
?"Log Ends @DATE @TIME"
?"End of logon script(3)"

;** Kixtart Network Log
if ((substr(@WKSTA,1,2) = "DT") OR (substr(@WKSTA,1,2) = "LT"))
$NETLOGFILE = "\\fhdcchfp1\kixlogs\" + @WKSTA + "\kix.log"
if (exist($NETLOGFILE) = 0)
md "\\fhdcchfp1\kixlogs\@WKSTA"
endif
redirectoutput($NETLOGFILE,0)
?"Log Starts @DATE @TIME"
?"Kix Version: @KIX"
?"Domain: @DOMAIN"
?"Logon Server: @LSERVER"
?"Computername: @WKSTA"
?"Address: @ADDRESS"
?"User ID: @USERID"
?"Full Name: @FULLNAME"
?"Priviledge: @PRIV"
?"Password Expiry: $PWEXPIRE"
? use list
?"Log Ends @DATE @TIME"
?"End of logon script(4)"
endif