When configuring your Windows 9x users, you can point them to the login script (typically NTLOGON.BAT) under the profile section of User Manager or Tab of Active Directory Users and Computers).Because Windows 9x, does not know how to handle RPC (Remote Procedure Calls), you have to setup the Account Groups for your users to use Local Groups e.g. ACCOUNTING_LOCAL (These Local Groups can be a member of the Global Group e.g. ACCOUNTING) and you will need to reference these in the script.
In your Windows 9x script, you would do the following:
code:
IF INGROUP("ACCOUNTING_LOCAL")
; -- Do stuff
In you Windows NT script, you would do the following:
code:
IF INGROUP("ACCOUNTING")
; -- Do stuff
When using Kixtart with Windows 9x, you will need access to the following files:
- KIX32.EXE
- KX16.DLL
- KX32.DLL
- KX95.DLL
- KIXTART.INI (optional)
- KX95.KIX (or your script file)
There has be some debate whether to execute the KIX Script from the server or the client. Either way should work just about as well. That is neat, how do you do that?
Executing locally (Contents of NTLOGON.BAT):
code:
@ECHO OFF
:: --- DETECT OS FIRSTSet ERRORLEVEL=
if /i %OS% == Windows_NT goto WINNT
:: --- NT IS NOT FOUND - IT HAS TO BE A 9X MACHINE
GOTO WIN9X
:: -- OTHER NT CODE - YOU COULD USE GETTYPE.EXE or other detection methods
:WIN9X
:: --- WIN9X CONFIG ---
SET SYSDIR=%WINDIR%\system
ECHO "Hello Windows95/98 User"
:: **********************************************************************************************
:: ***********************NEEDED LOCAL EXECUTABLES FOR 95/98*************************************
:: **********************************************************************************************
:: --- CHECK FOR FILES TO SET THE USER NAME
IF NOT EXIST %WINDIR%\PUTINENV.EXE XCOPY \\PDC\NETLOGON\Programs\Win9x\PUTINENV.EXE %WINDIR%
IF NOT EXIST %WINDIR%\WINSET.EXE XCOPY \\PDC\NETLOGON\Programs\Win9x\WINSET.EXE %WINDIR%
:: --- COPY CONFIGURATION FILES
IF EXIST %WINDIR%\SYSTEM\KX16.DLL DEL %WINDIR%\SYSTEM\KX16.DLL > NUL
IF NOT EXIST %WINDIR%\SYSTEM\KX16.DLL XCOPY \\PDC\NETLOGON\KX16.DLL %WINDIR%\SYSTEM > NUL
IF EXIST %WINDIR%\SYSTEM\KX32.DLL DEL %WINDIR%\SYSTEM\KX32.DLL > NUL
IF NOT EXIST %WINDIR%\SYSTEM\KX32.DLL XCOPY \\PDC\NETLOGON\KX32.DLL %WINDIR%\SYSTEM > NUL
IF EXIST %WINDIR%\SYSTEM\KX95.DLL DEL %WINDIR%\SYSTEM\KX95.DLL > NUL
IF NOT EXIST %WINDIR%\SYSTEM\KX95.DLL XCOPY \\PDC\NETLOGON\KX95.DLL %WINDIR%\SYSTEM > NUL
IF NOT EXIST %WINDIR%\SYSTEM\KIX32.EXE XCOPY \\PDC\NETLOGON\PROGRAMS\V362\KIX32.EXE %WINDIR%\SYSTEM > NUL
:: - THIS NEXT FILE MAY CHANGE AT ANY POINT - UPDATES TO RPC SERVERS, ETC.
IF EXIST %WINDIR%\SYSTEM\KIX95.KIX DEL %WINDIR%\SYSTEM\KIX95.KIX
:: - SINCE THE KIX95.KIX FILE HAS BEEN REMOVED, WE NEED A COPY
IF NOT EXIST %WINDIR%\SYSTEM\KIX95.KIX XCOPY \\PDC\NETLOGON\KIX95.KIX %WINDIR%\SYSTEM > NUL
:: - THIS NEXT FILE MAY CHANGE AT ANY POINT
IF EXIST %WINDIR%\SYSTEM\KIXTART.INI DEL %WINDIR%\SYSTEM\KIXTART.INI
:: - SINCE THE KIXTART.INI HAS BEEN REMOVED, WE NEED A COPY
IF NOT EXIST %WINDIR%\SYSTEM\KIXTART.INI XCOPY \\PDC\NETLOGON\KIXTART.INI %WINDIR%\SYSTEM > NUL
%windir%\putinenv.exe L
%windir%\Winset USERNAME=%USERNAME%
%windir%\Winset COMPUTERNAME=%COMPUTERNAME%
%windir%\Winset LOGONSERVER=%LOGONSERVER%
:: --- DISPLAY THE USER NAME/DOMAIN
ECHO "HELLO %USERNAME%!"
ECHO Welcome to %LANGROUP%, Inc. Windows 9x Domain Environment
:: --- EXECUTE THE KIX SCRIPT FOR WINDOWS 9X
%WINDIR%\SYSTEM\KIX32 KIX95.KIX
OK.. So, how do we execute this from just the server level?
code:
@ECHO OFF
:: --- DETECT OS FIRSTSet ERRORLEVEL=
if /i %OS% == Windows_NT goto WINNT
:: --- NT IS NOT FOUND - IT HAS TO BE A 9X MACHINE
GOTO WIN9X
:: -- OTHER NT CODE - YOU COULD USE GETTYPE.EXE or other detection methods
:WIN9X
ECHO "Hello Windows95/98 User"
\\PDC\NETLOGON\putinenv.exe L
\\PDC\NETLOGON\Winset USERNAME=%USERNAME%
\\PDC\NETLOGON\Winset COMPUTERNAME=%COMPUTERNAME%
\\PDC\NETLOGON\Winset LOGONSERVER=%LOGONSERVER%
:: --- DISPLAY THE USER NAME/DOMAIN
ECHO "HELLO %USERNAME%!"
ECHO Welcome to %LANGROUP%, Inc. Windows 9x Domain Environment
:: --- EXECUTE THE KIX SCRIPT FOR WINDOWS 9X
\\PDC\NETLOGON\KIX32 KIX95.KIX
Some caveats that come to mind with this type of configuration... If you run this script through a VPN or Dial-up, the time to execute these scripts can take a very long time.
[ 25 February 2002: Message edited by: kdyer ]