Dear Ruud,We have receive a copy of your new KiXtart 2001 RC 1 release from another
member of the http://kixtart.org board. We have review the complete docu-
ment and we have some suggestions, remarks and questions.
By referencing to pages we are using above document. Mostly it are correc-
tions, extensions or suggestions to your document. In some cases we ask to
look for corrections of your code.
The contest on this document will also be published on the http://kixtart.org
board (beta forum).
Our list:
- Pag.4
@build Build number of the operating system.
@producttype Support also XP.
ExistKey and SetAscii are available functions for supporting backward
compatibility.
- Pag.6
Copied to windows or the windows/system directory (it is related to the
value of registry key HKLM\Software\Microsoft\Windows\CurrentVersion\SystemRoot).
- Pag.8 (corrections to code)
Is it possible to change to output from the kix32.exe /?
from
code:
KiXtart 2001 4.00 RC 1
Windows 2000 / NT 4.x / Windows 9x (logon) script processor.
Usage : KIX32 {script1} {...} {$var=123}
to
code:
KiXtart 2001 4.00 RC 1
Windows 2000 / NT 4.x / Windows 9x (logon) script processor.
Usage : KIX32 {script1} {script2} {...} {$var=123} {/d} {/i}
/d enables debug mode
/i invisible mode. Prevents KiXtart from displaying a console window.
Without specification of a script name it will search first
for username.kix and at last for kixtart.kix.
- Pag.9
Locating files
The functions ReadProfileString and WriteProfileString will search for
the files in the Windows directory when you doesn't include full path.
- Pag.10 (appendix suggestion)
Is it possible to add a list of possible errors as appendix. A recent
topic on the http://kixtart.org contains such a list for KiXtart 3.63:
code:
possible error messages created by KiXtart 3.63 (list not complete)
? Error occured during retrieval of local network information KX32.DLL
? Error occured during retrieval of remote network information
? Error occurred during retrieval of remote network information
? Failed to create cookie <unknown>
? Failed to determine KXRPC server
? Failed to determine logonserver
? Failed to enumerate network redirections
? Failed to find module KXGetLocalGroups95 in KX95.DLL
? Failed to find module KXGetLocalInfo32 in KX32.DLL (DLL probably outdated)
? Failed to find module KXGetRemoteInfo32 in KX32.DLL (DLL is probably outdated)
? Failed to find module KXGetTime32 in KX32.DLL
? Failed to find module KXPingin KX95.DLL
? Failed to find module KXSendMessage32 in KX32.DLL
? Failed to find module RasEnumConnections in RASAPI32.DLL
? Failed to find module in KX95.DLL
? Failed to find modules in WSOCK32.DLL
? Failed to get API pointers
? Failed to get API pointers
? Failed to get locale information
? Failed to load KX32.DLL
? Failed to load KX95.DLL
? Failed to load NETAPI32.DLL
? Failed to load WSOCK32.DLL
? Failed to locate/connect to a KXRPC server
? Failed to open sockets
? Failed to retrieve NIC address
? Failed to retrieve Windows username NETAPI32.DLL
? Failed to retrieve hostname1
? Failed to retrieve hostname2
? Failed to set locale information
? UserGetGroups failed
? UserGetInfo failed
? UserGetLocalGroups failed
? UserModalsGet failed
? failed to find a domain controller for *
Possible programming errors:
? CASE without SELECT
? ELSE without IF
? ENDIF without IF
? ENDSELECT without SELECT
? Error:
? LABEL not found
? LOOP without WHILE
? Script error:
? UNTIL without DO
? array reference out of bounds
? error in IF expression
? error in USE statement
? error in parameter(s)
? expected '['
? expected ']'
? expected expression
? expression too long
? failed to find/open script
? invalid color argument
? invalid registry type
? out of memory
? unknown command
? unknown macro
Other errors:
? Failed to locate KX16.DLL! Please make sure KX16.DLL is present
in %PATH% or %windir%.
? Runtime Error! Program: ... <program name unknown>
? This program cannot be run in DOS mode.
- Pag.11
Debug mode
It can also be started for a selected group of lines with the KiXtart
commands:
DEBUG ON
DEBUG OFF
- Pag.22 (missing item)
DEBUG description
- Pag.23
DIM
(see also REDIM command)
- Pag.33
RUN
Remarks:
- As alternative you can use SHELL command. This command will wait for
the program to complete.
- /e:1024 doesn't work for all command interpreters. You may reduce
it to:
RUN "%comspec% /C dir c:"
- Pag.33
SELECT
change
code:
SELECT
CASE expression
statement1
....
CASE expression
statement2
....
ENDSELECT
in
code:
SELECT
CASE expression
statement1
....
CASE expression
statement2
....
CASE 1
statement3
...
ENDSELECT
Remarks: if all other CASEs fail, the CASE 1 selection will always be run.
- Pag.36
SHELL
Remarks:
- As alternative you can use RUN command. This command will not wait for
the program to complete.
- /e:1024 doesn't work for all command interpreters. You may reduce it
to:
SHELL "%comspec% /C dir c:"
- Pag.37
USE
(example use a mix of parameters /delete and /del)
- Pag.44
BOX
Remarks:
The BOX command is ignored if all output is redirected to a file using the
REDIRECTOUTPUT function or all output is redirected to your CONSOLE screen
(by using RedirectOutput("CON")).
- Pag.50 (correction to example)
DIR
Your example in the documentation doesn't work correct
code:
$FileName = Dir("C:\TEMP\*.*")
While $FileName <> "" and @ERROR = 0
? $FileName
Dir() ; retrieve next file
Loop
Change it in:
code:
$FileName = Dir("C:\TEMP\*.*")
While $FileName <> "" and @ERROR = 0
? $FileName
$FileName = Dir() ; retrieve next file
Loop
- Pag.63
LOGEVENT
Remarks:
the length of message text of the event has be limited to X characters. Too
long messages may abort your scripts.
- Pag.63 (corrections to code)
LOGEVENT
Is it possible to truncated the length of message text to an allowed value
before it will be written to the event log?
- Pag.70
REDIRECTOUTPUT
Remarks:
special values are the files CON and NUL. CON will redirect all your screen
output to the CONSOLE output screen. It isn't the same as your OUTPUT screen.
NUL will not be written any output screen to any file.
- Pag.76
SETFILEATTR
Remarks:
by another way of flushing your diskcache on Windows 9x environment it can
be possible that this command doesn't work as expected.
(
Item was published at http://kixtart.org board as beta topic
http://kixtart.org/board/Forum3/HTML/000014.html
The reaction of member Fuse was:
This kind of problem is very common, but not well documented, and occurs
when using write-behind disk cacheing with Windows 95 (not sure about 98).
There is a bug in the cache logic which fails to flush the buffers prior to
performing other operations on the file. What happens is that the changes you
make are stored in the disk cache, waiting for idle time, and the attribute
change is performed before the new data is written. It is even possible to
delete a file before the data is written, which will give the same error message.
Alternatively, the file will fail to be deleted because the cache logic has a
handle to that file open at that instance.
)
- Pag.87
WRITEPROFILESTRING
File name
A string that names the initialization file. If this parameter does not
include a full path, Windows searches for the file in the Windows directory.
We hope that above information is usefull for you.
Greetings and success with finishing the job.
------------------
Site map: