Page 2 of 2 <12
Topic Options
#16603 - 2002-01-25 05:05 AM Re: Kix vs BAT
MCA Offline
KiX Supporter
*****

Registered: 2000-04-28
Posts: 5152
Loc: Netherlands, EU
Dear Austin,

Welcome to the board.

Indeed KiXtart is a great program, but it isn't necessary or possible
to migrate all your BAT files at the same time.

Question: how to copy only ONCE necessary EXE files to your clients?

Your main BAT file:

code:

@echo off
if not exist c:\bat.ok call "\\server\netlogon\copy-extra-files.bat"
rem -
rem - your other BAT code
rem -
rem - for separate BAT file use CALL statements
rem -
exit
@echo off


we are using the file c:\bat.ok as control file.
Our copy-extra-files.bat can be something like:
code:

@echo off
rem - copy EXE and other required files to your client
rem -
rem - f.e. source: \\server\netlogon\extra\*.*
rem - destination: c:\extra\.
rem -
rem - by referencing to them use as prefix "c:\extra\".
rem -
chdir c:\
c:
if not exist c:\extra\nul mkdir c:\extra
xcopy "\\server\netlogon\extra\*.*" c:\extra\." /c /h /q /r /y
rem -
rem - create control file -
rem -
echo copy completed. >c:\bat.ok
@echo off

Only transfer a script (BAT or KIX file) from server speedup your logon process.
Mostly a great amount of auditing information can slow it down. We advice you
to do only the necessary logon steps from dial-up users, which doesn't mean you
can't log any information at all.
In our situation we collect those information on the client for WAN users and we
transfer them after realising a LAN connection. For LAN users the information
will trasnfer directly to the server.

Understanding KiXtart can give you an enormous amount of pleasure.
Tasks you can do, the speed of it and the available support for it.
Tasks: f.e. more block-structure possible and more error handling possible
Speed: f.e. it is possible to run scripts with 10.000 lines within 20 seconds
even on pentium I clients. of course speed is related to the tasks you are doing,
but pure KiXtart code is extremly fast.
Support: this board is the place to be for all kind of questions.


For ideas take a look at our site http://home.wanadoo.nl/scripting
You find all kind of scripts. Simple or complex & small or big.
greetings.

_________________________
email scripting@wanadoo.nl homepage scripting@wanadoo.nl | Links | Summary of Site Site KiXforms FAQ kixtart.org library collection mirror MCA | FAQ & UDF help file UDF kixtart.org library collection mirror MCA | mirror USA | mirror europe UDF scriptlogic library collection UDFs | mirror MCA

Top
#16604 - 2002-01-25 06:10 PM Re: Kix vs BAT
Austin Offline
Seasoned Scripter

Registered: 2002-01-24
Posts: 439
Thank you so much.. I am amazed at the support I am getting from end users.. I will look into this lang. I understand bat very well so things like copying the files if necessary will be easy for me.. however I was thinking of a control entry in the reg because that would be faster that checking dates on files right? Then when I changed the files I would mod the control check in reg.. sort of cookie!

Thanks again I will come back often with questions I am certain.

_________________________
Austin Henderson

Top
#16605 - 2002-01-25 10:12 PM Re: Kix vs BAT
Anonymous
Unregistered


I read your original post and I was exactly where you are about one month ago. I have convinced the powers that be around here that Kixtart is the way to go.

I have recently translated all of our logon scripts and I can say that it is a powerful tool. Here's the main script, there is some IP reading to determine which subnet people are on to install local virus definitions. The mappings are a little wacky, but I find this way faster than the "if ingroup" command.

*********************************************
; Script: yeg02.kix
; Contact: kdyjur@ikon.com
; Description: Draft for Harmonized Logon Script CANADA

;setconsole("hide")
MessageBox ("Logging @userid onto the Network","Network Logon",64)

;Check Norton Virus Definitions
$X=ReadProfileString("c:\Program Files\Common Files\Symantec Shared\VirusDefs\Definfo.dat","DefDates","CurDefs")
If @Error=0
$DefDate=SubStr($X,1,8)
If $DefDate="20020123" Goto end ;Virus Definitions Current
Else
$ask = Messagebox ("New Virus Definitions are available for Norton AntiVirus" + chr(10) + chr(13) + "Do you wish to update?" + chr(10) + chr(13) + chr(10) + "NOTE: Remote users with slow network connections should" + chr(10) + chr(13) + "perform a Live Update manually to avoid long logon times","Virus Risk Detected",276,0)
If $ask = 7 goto end endif
$subnet = Val(Substr(@ipaddress0, 9, 3))
$var1 = "0123i32" ;Change this number to match new virus definitions
Select
Case $subnet = 198 Shell "\\yvr01-nts-01\nas\" + $var1 + ".exe /q" ;Vancouver
Case $subnet = 199 Shell "\\yyc01-nts-01\nas\" + $var1 + ".exe /q" ;Calgary
Case $subnet = 187 Shell "\\yeg03-nts-01\nas\" + $var1 + ".exe /q" ;Edmonton
Case $subnet = 189 Shell "\\ywg01-nts-01\nas\" + $var1 + ".exe /q" ;Winnipeg
Case $subnet = 10 Shell "\\yyz01-nts-04\nas\" + $var1 + ".exe /q" ;Mississauga
Case $subnet = 1 Shell "\\ykf01-nts-02\nas\" + $var1 + ".exe /q" ;King Street
Case $subnet = 50 Shell "\\yul01-nts-01\nas\" + $var1 + ".exe /q" ;Montreal
Case $subnet = 80 Shell "\\yhz01-nts-01\nas\" + $var1 + ".exe /q" ;Halifax
Case 1 Shell "\\yeg01-nts-02\nas\" + $var1 + ".exe /q" ;CSC or Remote Branches without server
EndSelect
EndIf
Else
Goto end ;NAV not installed
EndIf
:end

WriteValue("HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Internet Settings","ProxyEnable","1","REG_BINARY")
WriteValue("HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Internet Settings","ProxyServer","ikn01-pxy-19.ikon.org:80","REG_SZ")
WriteValue("HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Internet Settings","ProxyOverride","*.ikon.org;","REG_SZ")

RedirectOutput("\\yeg01-nts-02\ikon\@userid.log") = 1
? "*******************"
? "@USERID (@FULLNAME)"
? "@TIME, @DAY, @DATE"
? "Computer Name: @WKSTA"
? "MAC Address: @ADDRESS"
If @inwin = 1 ? "Operating System: Windows NT" Else ? "Operating System: Windows 95/98, Version" + @DOS Endif
? ""
RedirectOutput("")

use F: @homeshr
If exist ("C:\windows\explore.exe") Del "C:\windows\explore.exe" Endif

; Drive Mappings CSC
If exist ("\\yeg01-nts-02\netlogon\edmonton\it_share\it_share.bat")= 1 use g: "\\yeg01-nts-06\it_share" Endif
If exist ("\\yeg01-nts-02\netlogon\edmonton\dispatch\dispatch.bat")= 1 use g: "\\yeg01-nts-06\Dispatch" Endif
If exist ("\\yeg01-nts-02\netlogon\edmonton\sales\sales.bat") = 1 use h: "\\yeg01-nts-02\Sales" Endif
If exist ("\\yeg01-nts-02\netlogon\edmonton\st\st.bat") = 1 use h: "\\yeg01-nts-02\st" Endif
If exist ("\\yeg01-nts-02\netlogon\edmonton\billing\billing.bat") = 1 use i: "\\yeg01-nts-02\billing" Endif
If exist ("\\yeg01-nts-02\netlogon\edmonton\finance\finance.bat") = 1 use i: "\\yeg01-nts-02\finance" Endif
If exist ("\\yeg01-nts-02\netlogon\edmonton\ims\ims.bat") = 1 use i: "\\yeg01-nts-02\ims" Endif
If exist ("\\yeg01-nts-02\netlogon\edmonton\finance2\finance2.bat") = 1 use j: "\\yeg01-nts-02\finance2" Endif
If exist ("\\yeg01-nts-02\netlogon\edmonton\capital2\capital2.bat") = 1 use k: "\\yeg01-nts-02\Canada" Endif
If exist ("\\yeg01-nts-02\netlogon\edmonton\can_fin\can_fin.bat") = 1 use n: "\\yeg01-nts-02\Can_Fin" Endif
If exist ("\\yeg01-nts-02\netlogon\edmonton\operator\operator.bat") = 1 use o: "\\yeg01-nts-02\operations" Endif
If exist ("\\yeg01-nts-02\netlogon\edmonton\ikonfy02\ikonfy02.bat") = 1 use o: "\\yeg01-nts-02\ikonfy02" Endif
If exist ("\\yeg01-nts-02\netlogon\edmonton\disticom\disticom.bat") = 1 use p: "\\yeg02-nts-01\disticom" Endif
If exist ("\\yeg01-nts-02\netlogon\edmonton\payroll\payroll.bat") = 1 use p: "\\yeg01-nts-02\payroll" Endif
If exist ("\\yeg01-nts-02\netlogon\edmonton\tdbank\tdbank.bat") = 1 use q: "\\yeg01-nts-02\tdbank" Endif
If exist ("\\yeg01-nts-02\netlogon\edmonton\hr\hr.bat") = 1 use r: "\\yeg01-nts-02\hr" Endif
; YEG Marketplace
If exist ("\\yeg01-nts-02\netlogon\edmonton\pricelst\pricelst.bat") = 1 use l: "\\yeg01-nts-02\pricelist" Endif
If exist ("\\yeg01-nts-02\netlogon\edmonton\telemark\telemark.bat") = 1 use l: "\\yeg01-nts-02\telemark" Endif
If exist ("\\yeg01-nts-02\netlogon\edmonton\salesdoc\salesdoc.bat") = 1 use m: "\\yeg01-nts-02\salesdoc" Endif
If exist ("\\yeg01-nts-02\netlogon\edmonton\commis\commis.bat") = 1 use n: "\\yeg01-nts-02\commis" Endif
If exist ("\\yeg01-nts-02\netlogon\edmonton\forecast\forecast.bat") = 1 use p: "\\yeg01-nts-02\forecast" Endif
If exist ("\\yeg01-nts-02\netlogon\edmonton\commissions\commissions.bat") = 1 use t: "\\yeg01-nts-02\commissions" Endif
If exist ("\\yeg01-nts-02\netlogon\edmonton\marketing\marketing.bat") = 1 use u: "\\yeg01-nts-02\marketing" Endif
If exist ("\\yeg01-nts-02\netlogon\edmonton\ts\ts.bat") = 1 use v: "\\yeg01-nts-02\ts" Endif
********************************************

All that I can say is that switching to Kixtart was tough at first, but there is no bulletin board anywhere that I can find for command that even touches this one for support.

Top
#16606 - 2002-01-25 10:35 PM Re: Kix vs BAT
Austin Offline
Seasoned Scripter

Registered: 2002-01-24
Posts: 439
This is great...

Can you tell me what this is:

;setconsole("hide")
MessageBox ("Logging @userid onto the Network","Network Logon",64)


I like the way it looks but would like some clarification.

_________________________
Austin Henderson

Top
#16607 - 2002-01-25 10:37 PM Re: Kix vs BAT
Austin Offline
Seasoned Scripter

Registered: 2002-01-24
Posts: 439
Also can you tell me how I could write a file out to the C: drive... say if I wanted to just create a txt file as a cookie or something

%windir%\Kix\ver1.0.txt how can I write that file out? I will use this to determine if I need to sync files by upping the ver number.

Thanks

_________________________
Austin Henderson

Top
#16608 - 2002-01-25 10:44 PM Re: Kix vs BAT
Austin Offline
Seasoned Scripter

Registered: 2002-01-24
Posts: 439
Here is what I have so far with some big time help from other users of this post of course...

cls
???? Can I type the below file to screen without the shell type command ???
shell "%comspec% /c TYPE %WINDIR%\Kix\Warning.txt"

$octetarray=split("@ipaddress0",".")
$location=strip($octetarray[3])

IF @wksta = "COMM1" or @wksta = "COMM2" or @wksta = "COMM3"
$TSUser="Y"
else
$TSUser="N"
endif

if $location="1"
"** Welcome Murfreesboro User **"
$=addprinterconnection("\\PSERVE01\Aphrodite")
$=addprinterconnection("\\PSERVE01\Apollo")
$=addprinterconnection("\\PSERVE01\Athena")
$=addprinterconnection("\\PSERVE01\Carpo")
$=addprinterconnection("\\PSERVE01\Jules")
$=addprinterconnection("\\PSERVE01\Venus-PCL6")
select
case ingroup("Aphrodite Default")
$=SetDefaultPrinter("\\PSERVE01\Aphrodite")
case ingroup("Apollo Default")
$=SetDefaultPrinter("\\PSERVE01\Apollo")
case ingroup("Athena Default")
$=SetDefaultPrinter("\\PSERVE01\Athena")
case ingroup("Carpo Default")
$=SetDefaultPrinter("\\PSERVE01\Carpo")
case ingroup("Jules Default")
$=SetDefaultPrinter("\\PSERVE01\Jules")
case ingroup("Local Default")
"Local printer left as default..."
case ingroup("TMT User") and $TSUser="y"
$=addprinterconnection("\\AUSTIN\BC02")
endselect
endif
if $location="3"
"** Welcome Portland User **"
$=addprinterconnection("\\PSERVE01\PORTTN-LASER")
$=addprinterconnection("\\PSERVE01\PORTSHOP")
select
case ingroup("PORTTN-LASER Default")
$=SetDefaultPrinter("\\PSERVE01\PORTTN-LASER")
case ingroup("PORTSHOP Default")
$=SetDefaultPrinter("\\PSERVE01\PORTSHOP")
case ingroup("TMT User") and $TSUser="y"
$=addprinterconnection("\\PORT-SHOP3\BC03")
endselect
endif

if ingroup("Laptop User")
"Laptop User= Yes"
else
"Laptop User= No"
endif

settime "\\XAVIER"
USE S: "\\FFLEET\SHARED"
USE P: "\\NEO\APPS"

if exist(%WINDIR%\Kix\NP-Ver1.0.txt)=0
copy "%WINDIR%\Login\NewProf.exe" "C:\Program Files\Common Files\System\MAPI\1033\NT"
copy "%WINDIR%\Login\NewProf.exe
??? Write file above to drive as cookie file ???
endif

if exist("%WINDIR%\Login\%username%.txt")=0
"FirstFleet IS Department Generating Outlook Profile..."
shell "%comspec% /c %WINDIR%\Login\newprof.exe -P %WINDIR%\Login\OutlookLap.prf > %WINDIR%\Login\%username%.txt"
endif

shell "%comspec% /c %WINDIR%\Login\regini.exe %WINDIR%\Login\OfficePathsLap.ini"

quit


Where the ??? are is where I have questions. Can anyone look at this and give me some quick advice?

Thanks

_________________________
Austin Henderson

Top
#16609 - 2002-01-25 11:06 PM Re: Kix vs BAT
Austin Offline
Seasoned Scripter

Registered: 2002-01-24
Posts: 439
Here is the most recent I left some stuff out in the previous script.

cls
???? Can I type the below file to screen without the shell type command ???
shell "%comspec% /c TYPE %WINDIR%\Kix\Warning.txt"

$octetarray=split("@ipaddress0",".")
$location=strip($octetarray[3])

IF @wksta = "COMM1" or @wksta = "COMM2" or @wksta = "COMM3"
$TSUser="Y"
else
$TSUser="N"
endif

if $location="1"
"** Welcome Murfreesboro User **"
$=addprinterconnection("\\PSERVE01\Aphrodite")
$=addprinterconnection("\\PSERVE01\Apollo")
$=addprinterconnection("\\PSERVE01\Athena")
$=addprinterconnection("\\PSERVE01\Carpo")
$=addprinterconnection("\\PSERVE01\Jules")
$=addprinterconnection("\\PSERVE01\Venus-PCL6")
select
case ingroup("Aphrodite Default")
$=SetDefaultPrinter("\\PSERVE01\Aphrodite")
case ingroup("Apollo Default")
$=SetDefaultPrinter("\\PSERVE01\Apollo")
case ingroup("Athena Default")
$=SetDefaultPrinter("\\PSERVE01\Athena")
case ingroup("Carpo Default")
$=SetDefaultPrinter("\\PSERVE01\Carpo")
case ingroup("Jules Default")
$=SetDefaultPrinter("\\PSERVE01\Jules")
case ingroup("Local Default")
"Local printer left as default..."
case ingroup("TMT User") and $TSUser="y"
$=addprinterconnection("\\AUSTIN\BC02")
endselect
endif
if $location="3"
"** Welcome Portland User **"
$=addprinterconnection("\\PSERVE01\PORTTN-LASER")
$=addprinterconnection("\\PSERVE01\PORTSHOP")
select
case ingroup("PORTTN-LASER Default")
$=SetDefaultPrinter("\\PSERVE01\PORTTN-LASER")
case ingroup("PORTSHOP Default")
$=SetDefaultPrinter("\\PSERVE01\PORTSHOP")
case ingroup("TMT User") and $TSUser="y"
$=addprinterconnection("\\PORT-SHOP3\BC03")
endselect
endif

if ingroup("Laptop User")
"Laptop User= Yes"
else
"Laptop User= No"
endif

settime "\\XAVIER"
USE S: "\\FFLEET\SHARED"
USE P: "\\NEO\APPS"

if exist(%WINDIR%\Kix\NP-Ver1.0.txt)=0
copy "%WINDIR%\Login\NewProf.exe" "C:\Program Files\Common Files\System\MAPI\1033\NT"
copy "%WINDIR%\Login\NewProf.exe
??? Write file above to drive as cookie file ???
endif
??? CAN I NEST IFS LIKE THIS ???

if exist("%WINDIR%\Login\%username%.txt")=0
if ingroup("Laptop User")
"Generating Outlook Profile for laptop user..."
shell "%comspec% /c %WINDIR%\Login\newprof.exe -P %WINDIR%\Login\OutlookLap.prf > %WINDIR%\Login\%username%.txt"
??? THE FOLLOWING IS A REG MODIFICATION I ASSUME THIS CAN BE DONE THROUGH KIX AS WELL ???
shell "%comspec% /c %WINDIR%\Login\regini.exe %WINDIR%\Login\OfficePathsLap.ini"
else
"Generating Outlook Profile..."
shell "%comspec% /c %WINDIR%\Login\newprof.exe -P %WINDIR%\Login\Outlook.prf > %WINDIR%\Login\%username%.txt"
??? THE FOLLOWING IS A REG MODIFICATION I ASSUME THIS CAN BE DONE THROUGH KIX AS WELL ???
shell "%comspec% /c %WINDIR%\Login\regini.exe %WINDIR%\Login\OfficePaths.ini"
endif
endif


quit

_________________________
Austin Henderson

Top
#16610 - 2002-01-26 01:16 AM Re: Kix vs BAT
Anonymous
Unregistered


setconsole("hide") hides the console output window. We've had problems with people cancelling the logon script in the past, so I just hide the window from the users.

The messagebox I use to display a popup window to the user letting them know that they are being logged on

For keeping the versions of Kix current on the machine, you might try:

______________________________________
IF EXIST ("C:\KIX32\KIX32.EXE")
$CurrentVersion = GETFILEVERSION ("C:\KIX32\KIX32.EXE")
$ServerVersion = GETFILEVERSION ("@LSERVER\NETLOGON\KIX32.EXE")
IF $ServerVersion > $CurrentVersion
IF @INWIN = 1 ; REM ** WIndows NT
COPY "@LSERVER\NETLOGON\KIX32.EXE" "C:\KIX32\KIX32.EXE"
AT (4,0) "Updating KIX32 Files on NT-client computer"
IF EXIST "C:\KIX32\KX16.DLL" ; REM ** Not needed in NT
DEL "C:\KIX32\KX16.DLL"
ENDIF
IF EXIST "C:\KIX32\KX32.DLL" ; REM ** Not needed in NT
DEL "C:\KIX32\KX32.DLL"
ENDIF
IF EXIST "C:\KIX32\KX95.DLL" ; REM ** Not needed in NT
DEL "C:\KIX32\KX95.DLL"
ENDIF
IF EXIST "C:\KIX32\KXRPC.EXE" ; REM ** Not needed on local client
DEL "C:\KIX32\KXRPC.EXE"
ENDIF
ELSE ; REM ** Win 95
AT (4,0) "Updating KIX32 Files on W9x-client computer"
COPY "@LSERVER\NETLOGON\KIX32.EXE" "C:\KIX32\KIX32.EXE"
COPY "@LSERVER\NETLOGON\KX16.DLL" "C:\KIX32\KX16.DLL"
COPY "@LSERVER\NETLOGON\KX32.DLL" "C:\KIX32\KX32.DLL"
COPY "@LSERVER\NETLOGON\KX95.DLL" "C:\KIX32\KX95.DLL"
IF EXIST "C:\KIX32\KXRPC.EXE" ; REM ** Not needed on local client
DEL "C:\KIX32\KXRPC.EXE"
ENDIF
ENDIF
ENDIF
___________________________________________

This is a little snippet that I took from: http://kixtart.org/cgi-bin/ultimatebb.cgi?ubb=get_topic&f=1&t=002030

It check to see if the file is there, then compares versions and copies the newer one if it has too. I guess it assumes that the kixtart executable is in a Kix32 folder on the C: drive, although I copy mine into the system folder for win9x and the system 32 folder for NT.

Top
#16611 - 2002-01-26 01:18 AM Re: Kix vs BAT
Anonymous
Unregistered


setconsole("hide") hides the console output window. We've had problems with people cancelling the logon script in the past, so I just hide the window from the users.

The messagebox I use to display a popup window to the user letting them know that they are being logged on

For keeping the versions of Kix current on the machine, you might try:

______________________________________
IF EXIST ("C:\KIX32\KIX32.EXE")
$CurrentVersion = GETFILEVERSION ("C:\KIX32\KIX32.EXE")
$ServerVersion = GETFILEVERSION ("@LSERVER\NETLOGON\KIX32.EXE")
IF $ServerVersion > $CurrentVersion
IF @INWIN = 1 ; REM ** WIndows NT
COPY "@LSERVER\NETLOGON\KIX32.EXE" "C:\KIX32\KIX32.EXE"
AT (4,0) "Updating KIX32 Files on NT-client computer"
IF EXIST "C:\KIX32\KX16.DLL" ; REM ** Not needed in NT
DEL "C:\KIX32\KX16.DLL"
ENDIF
IF EXIST "C:\KIX32\KX32.DLL" ; REM ** Not needed in NT
DEL "C:\KIX32\KX32.DLL"
ENDIF
IF EXIST "C:\KIX32\KX95.DLL" ; REM ** Not needed in NT
DEL "C:\KIX32\KX95.DLL"
ENDIF
IF EXIST "C:\KIX32\KXRPC.EXE" ; REM ** Not needed on local client
DEL "C:\KIX32\KXRPC.EXE"
ENDIF
ELSE ; REM ** Win 95
AT (4,0) "Updating KIX32 Files on W9x-client computer"
COPY "@LSERVER\NETLOGON\KIX32.EXE" "C:\KIX32\KIX32.EXE"
COPY "@LSERVER\NETLOGON\KX16.DLL" "C:\KIX32\KX16.DLL"
COPY "@LSERVER\NETLOGON\KX32.DLL" "C:\KIX32\KX32.DLL"
COPY "@LSERVER\NETLOGON\KX95.DLL" "C:\KIX32\KX95.DLL"
IF EXIST "C:\KIX32\KXRPC.EXE" ; REM ** Not needed on local client
DEL "C:\KIX32\KXRPC.EXE"
ENDIF
ENDIF
ENDIF
___________________________________________

This is a little snippet that I took from: http://kixtart.org/cgi-bin/ultimatebb.cgi?ubb=get_topic&f=1&t=002030

It check to see if the file is there, then compares versions and copies the newer one if it has too. I guess it assumes that the kixtart executable is in a Kix32 folder on the C: drive, although I copy mine into the system folder for win9x and the system 32 folder for NT.

Top
#16612 - 2002-01-26 01:19 AM Re: Kix vs BAT
NTDOC Administrator Offline
Administrator
*****

Registered: 2000-07-28
Posts: 11631
Loc: CA
Kellar,

Just as an FYI... Unless your using an older version of KiXtart, or you use the BREAK ON command... by default if the user cancels or terminates the logon window KiXtart will log them off the system.

[ 26 January 2002: Message edited by: NTDOC ]

Top
#16613 - 2002-01-26 05:23 PM Re: Kix vs BAT
New Mexico Mark Offline
Hey THIS is FUN
****

Registered: 2002-01-03
Posts: 223
Loc: Columbia, SC
Going back to the original topic, here are a few advantages I have found by using KiXtart. (We compared batch, KiXtart, and VBS for possible languages for a logon script.)

1. Speed -- our logon script has varied between about 500 and 1500 lines, depending upon whether we were using SMS or not. We use this even for dial up where our users only get about 24000 bps real throughput. (It's a government operation.) If speed is *really* critical, you might even be able to copy not just kix32.exe, but the actual logon script to the local machines. You could compare file sizes in the calling batch file between the user and network versions of the script and only update if they don't match. However, the ability to hide the console really makes this less important. The script can continue running in the background until complete.

2. CONSISTENCY. If you work with various flavors of DOS/Command/CMD, you are familiar with the hair-pulling experience of trying to code for the slight differences in these command processors. KiXtart gives you one consistent interface. One caveat, even KiXtart cannot overcome limitations of, say, Win 95 OSR1 in all areas. It just doesn't interact with the network in the same way. However, you will find these issues trivial compared to the weirdness of some of the arcane and/or inconsistent batch commands.

3. Ease of training. Unless you are trying to make yourself indispensible, KiXtart is easier to just 'read' and understand than complex batch commands and even (IMO) vbScript. Because it is well-documented in either a printable manual or an online help file, it is easy to get someone up to speed in this language so you don't get those mignight calls as often.

4. Security. Once you launch KiXtart, you are in 'Outer Limits' mode. I.e. you control the vertical. You control the horizontal. Etc. If a user tries to close the script, even with the task manager, they get logged off. This was critical for us, in that we wanted to automatically deny access to the network for users who did not meet all our network security requirements. If they could 'break out' of a script, that function would be useless.

Also, vbScript has a reputation as a virus engine, and many networks disable or inhibit vbScript from running for that reason alone. It is powerful and ubiquitous, but that alone makes it a target for script kiddies. KiXtart has a much smaller audience, and therefore attracts much less attention in the hacker world.

Hope this helps,

New Mexico Mark

Top
Page 2 of 2 <12


Moderator:  Jochen, Allen, Radimus, Glenn Barnas, ShaneEP, Ruud van Velsen, Arend_, Mart 
Hop to:
Shout Box

Who's Online
0 registered and 1821 anonymous users online.
Newest Members
ManuvdWielNL, Sir_Barrington, batdk82, StuTheCoder, M_Moore
17887 Registered Users

Generated in 0.168 seconds in which 0.097 seconds were spent on a total of 13 queries. Zlib compression enabled.

Search the board with:
superb Board Search
or try with google:
Google
Web kixtart.org