home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
OS/2 Shareware BBS: 11 Util
/
11-Util.zip
/
nolist2a.zip
/
noList.txt
< prev
Wrap
Text File
|
1993-11-15
|
14KB
|
357 lines
noList v2.0a
Copyright 1993 Jack Tan
noList removes programs from the window list and Alt-Esc round-robin
Type "noList /?" for help
By using noList, the user agrees to the requirements stated below (in
the Shareware and Disclaimer sections)
Purpose
-------
noList is a 32-bit OS/2 2.x application which removes programs from both
the OS/2 window list and the OS/2 Alt-Esc round-robin. It is designed to
be run from the command line, either windowed or full-screen. Version
2.0 of noList supports the following program types:
- Presentation Manager applications
- OS/2 full-screen sessions
- OS/2 windowed sessions
- DOS full-screen sessions
- DOS windowed sessions
- WIN-OS/2 full-screen sessions
- WIN-OS/2 seamless applications
- Folders in the Workplace Shell
noList cannot not distinguish among varying views of the same folder (e.g.,
Icon View and Details View) by the information returned by the operating
system.
A "visible" process is one that is on the window list, and a "jumpable"
process is in the Alt-Esc round-robin. By analogy, a process not on the
window list is said to be "invisible," and one not in the Alt-Esc round-
robin is said to be "nonjumpable."
Syntax
------
noList has three basic modes for switches: show the help page, list the
processes, and change the processes. Switches may be prefixed with either
a forward slash ("/") or a hyphen ("-"), and can be inserted in any order.
At least one space must appear between any switches (e.g., "/A:J /A:V" is
correct, but "/A:J/A:V" is not).
Syntax: noList
noList /?
To show the help page, either run noList without any arguments, or run it
with the parameter /?. Example:
[C:\]noList
noList utility, version 2.0
Copyright 1993 Jack Tan
Syntax: noList [switches] [<id1> [<id2> ...]]
noList removes and restores programs in the OS/2 window list and the
Alt-Esc round-robin. OS/2 text (VIO), Presentation Manager, DOS, and
WIN-OS/2 programs are supported. Each program is specified by a unique
identifier (ID). Each ID can be either the first letters of the process
name or the system process ID. Process IDs are assumed to be decimal,
unless prefixed by '0x' to denote a hexadecimal values. Either '-' or
'/' can be used as the switch prefix; supported switches are:
/A Use both /A:J and /A:V switches
/A:J Add processes to the Alt-Esc round-robin (jumpable)
/A:V Add processes to the window list (visible)
/L List process IDs
/M Apply to each entry if there are multiple matches
/R Use both /R:J and /R:V switches (default action)
/R:J Remove processes from the Alt-Esc round-robin (nonjumpable)
/R:V Remove processes from the window list (invisible)
/? Show this program help
[C:\]_
--
Programs can be specified by name or process ID. Valid program names
and IDs can be listed with the /L switch. The match is not case-
sensitive, and noList only needs enough characters to uniquely identify
the process. Strings can be embedded in double quotes, allowing spaces
to be used in identifiers.
Processes can also be sent to noList via their process IDs. Any integer
is considered to be a process ID. Integers prefixed with "0x" are
considered hexadecimal. Note that octal support has been removed from
this release: integers prefixed with "0" are also considered decimal
values. This feature was not used often, and conflicted with programs
which pad their process IDs with zeros (such as the OS/2 PSTAT). Note
that the output from noList /L (see below) should be used in favor of
output from other programs, due to the method used in determining the
proper process.
Multiple specifiers may be placed on the command line, with mixing of
names, decimal, and hexadecimal strings allowed.
Syntax: noList.exe /L
noList.exe /L <id1> [<id2> ...]
Using the /L switch without any further arguments will list all the
available processes in the system. The information returned by /L
includes the process ID, in base 10 and delimited by square brackets; the
visibility of the program in the window list ("Vis") or invisibility
("---"), listed after the process ID; the jumpability of the program
("Jmp") or nonjumpability ("---"), listed after the visibility; and the
process name, as recorded by the system. If processes are specified with
the /L switch, only the listed processes are examined. Examples:
[C:\]noList /L
[4] --- --- Workplace Shell
[4] Vis Jmp Desktop
[5] Vis Jmp Icon Editor
[8] --- --- Process Monitor
[20] Vis Jmp EPM-E:\Jack\C\noList documentation
[23] Vis Jmp OS/2 Window
[24] Vis Jmp OS/2 System Editor
[25] Vis Jmp noList.exe
[C:\]noList 4 Icon 0x18 /L
[4] --- --- Workplace Shell
[4] Vis Jmp Desktop
[5] Vis Jmp Icon Editor
[24] Vis Jmp OS/2 System Editor
[C:\]_
--
Syntax: noList /A <id1> [<id2> ...]
noList [/A:J] [/A:V] [/R:J] [/R:V] <id1> [<id2> ...]
noList [/R] <id1> [<id2> ...]
noList v2.0 has a fine degree of control which allows the user to
separately modify the visibility and the jumpability of the specified
processes. Users of the previous release of noList recall that these
controls were locked together; they have now been split to allow the user
more freedom.
- To add a program to the window list, use the /A:V switch.
- To add a program to the Alt-Esc round-robin, use the /A:J switch.
- To add a program to both the window list and Alt-Esc round-robin,
use /A.
- To remove a program from the window list, use the /R:V switch.
- To remove a program from the Alt-Esc round-robin, use the /R:J
switch.
- To remove a program from both the window list and Alt-Esc
round-robin, use /R. This switch is the default action when no
other switches are specified, and identifiers are specified on the
command line.
Any non-conflicting combination of the above switches can be used.
Examples:
[C:\]noList /r 0x18 "OS/2 Window" 8
Change successful: OS/2 System Editor (pid 24)
Change successful: OS/2 Window (pid 23)
No change needed: Process Monitor (pid 8)
[C:\]noList /L 0x18 "OS/2 Window" 8
[24] --- --- OS/2 System Editor
[23] --- --- OS/2 Window
[8] --- --- Process Monitor
[C:\]noList /A:V 0x18 "OS/2 Window"
Change successful: OS/2 System Editor (pid 24)
[C:\]noList /L 0x18 "OS/2 Window" 8
[24] Vis --- OS/2 System Editor
[23] Vis --- OS/2 Window
[8] --- --- Process Monitor
[C:\]noList /A:J "OS/2 Window" 8
Change successful: OS/2 Window (pid 23)
Change successful: Process Monitor (pid 8)
[C:\]noList /L 0x18 "OS/2 Window" 8
[24] Vis --- OS/2 System Editor
[23] Vis Jmp OS/2 Window
[8] --- Jmp Process Monitor
[C:\]noList /A 0x18 "OS/2 Window" 8
Change successful: OS/2 System Editor (pid 24)
No change needed: OS/2 Window (pid 23)
Change successful: Process Monitor (pid 8)
[C:\]noList /L 0x18 "OS/2 Window" 8
[24] Vis Jmp OS/2 System Editor
[23] Vis Jmp OS/2 Window
[8] Vis Jmp Process Monitor
[C:\]_
--
Syntax: noList /M [other switches] <id1> [<id2> ...]
By default, noList requires a nonambiguous identifier, and will not
affect identifiers which match more than one process. For example, if
there is a window called "OS/2 Window" and another program called "OS/2
System Editor," then attempting to apply noList to "OS/2" will fail:
[C:\]noList OS/2 /L
[23] Vis Jmp OS/2 Window
[24] Vis Jmp OS/2 System Editor
[C:\]noList OS/2
Ambiguous ID (no change): OS/2 Window (pid 23) and OS/2 System Editor (pid 24)
[C:\]_
The user can use a more specific term, such as "OS/2 Win" or "OS/2 Sys"
to select the program desired. To affect all programs which have the
same identifier, use the /M switch to match multiple names. Example:
[C:\]noList OS/2 /L
[23] Vis Jmp OS/2 Window
[24] Vis Jmp OS/2 System Editor
[C:\]noList OS/2 /M
Change successful: OS/2 Window (pid 23)
Change successful: OS/2 System Editor (pid 24)
[C:\]noList OS/2 /L
[23] --- --- OS/2 Window
[24] --- --- OS/2 System Editor
[C:\]_
Return Codes
------------
noList v2.0 supports the following return codes:
0 Successful run, each requested change or listing (via the
/L switch) was satisfied.
1-98 The return code corresponds to the number of unsuccessful
changes. Each ID which failed to change adds 1 to the
return code. Possible causes for failure include not
finding the specified process, finding more than one
match for the ID (when the /M switch is not used), or
failing to change the status (failure indicated by the
API call).
99 99 or more failures
100 Help has been requested (either no arguments or /? argument)
101 No process IDs specified, but a valid switch other than /L
or /? was specified. Error message:
"noList: no process name nor ID specified"
102 Switches were specified, but none were valid. Error message:
"noList: switches explicitly given, none recognized"
103 Switches were specified to both add to and remove from the
OS/2 window list. This can be accomplished with one switch
from each set: { /A, A:V } and { /R, /R:V }. Error message:
"noList: switch conflict -- request to both add & remove
processes from the window list"
104 Switches were specified to both add to and remove from the
Alt-Esc round-robin. This can be accomplished with one of
"/A /R:J," "/A:J /R:J," or "/A:J /R." Error message:
"noList: switch conflict -- request to both add & remove
processes from the Alt-Esc round-robin"
105 No entries in the switchlist were found when the list was
queried. Error message:
"noList: cannot find entries in the window list"
106 Insufficient memory in the operating system to satisfy
allocation request. Error message:
"noList: insufficient memory to continue"
107 Invalid parameter passed to memory allocation system. This
error should never occur, but is included for completeness.
Error message: "noList: unable to allocate memory"
108 A system call made by noList was interrupted. Error message:
"noList: an error interrupt has occurred; execution cannot"
"continue"
109 noList was unable to deallocate dynamically-allocated memory.
Error message: "noList: unable to deallocate memory"
110 An unknown error has occurred. This message should never occur.
Error message: "noList: an error of unknown type n has occurred,"
where "n" is an integer.
The vast majority of the error codes returned by noList should be under 105.
Error codes 107 (invalid parameter in memory allocation system) and 110
(unknown error) should never occur.
Shareware
---------
Starting with version 2.0, noList is released as shareware. You may use
noList v2.0 for a trial period of 15 days. If, after this period, you
feel that noList is not worth registering, you must stop using it. The
registration cost for an individual user is US$15. For information on
business use and site licensing, please contact the author for further
details.
Disclaimer
----------
By using noList, the user assumes all responsibility for any consequences
or damages resulting from such use, and frees the author from any
obligations. Furthermore, the user agrees to not modify, disassemble, or
reverse-engineer the software in any fashion.
Any comments, suggestions, and bug reports are welcome by the author.
His contact address is:
Jack Tan
P.O. Box 3894
Oak Brook, IL 60522-3984
United States of America
Internet: jahk@uiuc.edu
Revision History
----------------
Version 1.0 -- 3 October 1993
Requires EMX.DLL, EMXLIBC.DLL
First release. Thanks to Don Meyer for the idea (1 October 1993).
- Affects PM programs
- Use process IDs (multiple). Prefixes of '0x' are hexadecimal,
'0' are octal, and other values are decimal.
- /? for help
Version 2.0 -- 12 November 1993
Shareware release, US$15 to register for individuals.
No longer requires EMX.DLL and EMXLIBC.DLL
Nearly complete rewrite, only keeping some of the old help file.
A *huge* thank you to Melissa Woo for beta testing both the software
and the documentation (yup, even the docs too). noList would never
have made it this far without your support and help.
noList now affects PM, OS/2 text (both windowed and full-screen), DOS
text (both windowed and full-screen), WIN-OS/2 (both seamless
applications and full-screen sessions), and WPS folders (though not
different views of the same folder).
- Separated window list and Alt-Esc controls while maintaining
backwards compatibility.
- Switches: /A (add to window list and Alt-Esc round-robin), /A:J
(add jumpability), /A:V (add visibility), /L (list processes), /M
(allow multiple matches), /R (remove from window list and Alt-Esc
round-robin), /R:J (remove jumpability), /R:V (remove visibility),
/? (help).
- Octal process IDs removed (not used, conflicts with other programs
which pad decimal numbers with zeros).
- Allows names instead of just process IDs
- Improved return code handling
Version 2.0a -- 15 November 1993
Corrected minor bug: when no change is needed, "change successful"
was displayed.