I more like the robust approach, but there is IMHO an error in the text about the Win9x command line. In the list to find OS's you may want to add the newer ones as you need them.
Code:

@ECHO off
SETLOCAL

REM First line will find W2K3 For Terminal Sessions
VER | find "5.2.3790" > nul
If NOT errorlevel 1 GoTo Win_NT

VER | find "NT" > nul
If NOT errorlevel 1 GoTo Win_NT

VER | find "2000" > nul
If NOT errorlevel 1 GoTo Win_NT

VER | find "XP" > nul
If NOT errorlevel 1 GoTo Win_NT

VER | find "98" > nul
If NOT errorlevel 1 GoTo Win_9X

VER | find "95" > nul
If NOT errorlevel 1 GoTo Win_9X

GoTo unknown_os

:win_NT
Call wkix32.exe login.kix /i
GoTo end

:win_9X
%0\..\wkix32.exe %0\..\login.kix /i
GoTo end

:unknown_os
:end


Now if any code fails on NT because you did not map to Z: during logon I think it is time to get rid of that coding.
This is just my opinion. Everybody has to find solutions to his own needs.