Technical Specifications of log©.dat file Log©.dat is can be broken down into three parts: default logging flag, pointer list, and record list. DEFAULT LOGGING FLAG The default logging flag is a byte flag that is either zero or 255 ( hex FF). The flag when zero turns on the default logging of all EXE and COM files being executed. When the flag is 255 the default logging is turned off. The default is overridden by any entry in the records part of the data file. POINTERS The pointers part of the data file consists of a list of Words ( 2 byte low-high) terminated by a zero word. Each entry points to the index in the file where its correspoiding entries is located. RECORDS Each record consists of: Position Type Description -------- ----- ----------------------------------------- 0 byte logging flag 1 byte # of copies allowed (0 = ALL) 2 byte length of Program path/filename (plength) 3 chars string containing program path/filename 3+plength+1 byte length of Server name (slength) 3+plength+2 chars string containing servername 3+plength+slength+2 byte Always zero (00) ------------------------------------------------------------------------- The logging flag is the same as the default logging flag in its function The # of copies allowed field contains the number of allowed copies at any given time. This has a range from 1 to 255. Technical Notes: When a program is attempted to be executed, log© compares the target program string against all the record entries that the pointers point to, until a zero pointer is encountered. If no match is found the default logging action is taken. The target is compared to an entry from right to left. The two match when the target matches up to the length of an record entry. Currently I do not know of a way to return an errorlevel if the program does not get run because of not enough copies available. The only known program it does not work with is Wordperfect executive Shell program. The shell program hangs when exited.