home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Shareware BBS: 11 Util / 11-Util.zip / nolist2a.zip / noList.txt < prev   
Text File  |  1993-11-15  |  14KB  |  357 lines

  1. noList v2.0a
  2. Copyright 1993 Jack Tan
  3.  
  4.    noList removes programs from the window list and Alt-Esc round-robin
  5.    Type "noList /?" for help
  6.    By using noList, the user agrees to the requirements stated below (in
  7.       the Shareware and Disclaimer sections)
  8.  
  9.  
  10.  
  11.  
  12. Purpose
  13. -------
  14. noList is a 32-bit OS/2 2.x application which removes programs from both 
  15. the OS/2 window list and the OS/2 Alt-Esc round-robin.  It is designed to 
  16. be run from the command line, either windowed or full-screen.  Version 
  17. 2.0 of noList supports the following program types:  
  18.  
  19.    - Presentation Manager applications
  20.    - OS/2 full-screen sessions
  21.    - OS/2 windowed sessions
  22.    - DOS full-screen sessions
  23.    - DOS windowed sessions
  24.    - WIN-OS/2 full-screen sessions
  25.    - WIN-OS/2 seamless applications
  26.    - Folders in the Workplace Shell
  27.  
  28. noList cannot not distinguish among varying views of the same folder (e.g.,
  29. Icon View and Details View) by the information returned by the operating
  30. system.
  31.  
  32. A "visible" process is one that is on the window list, and a "jumpable"
  33. process is in the Alt-Esc round-robin.  By analogy, a process not on the
  34. window list is said to be "invisible," and one not in the Alt-Esc round-
  35. robin is said to be "nonjumpable."
  36.  
  37.  
  38.  
  39. Syntax
  40. ------
  41. noList has three basic modes for switches:  show the help page, list the
  42. processes, and change the processes.  Switches may be prefixed with either
  43. a forward slash ("/") or a hyphen ("-"), and can be inserted in any order.  
  44. At least one space must appear between any switches (e.g., "/A:J /A:V" is 
  45. correct, but "/A:J/A:V" is not).  
  46.  
  47. Syntax:  noList
  48.          noList /?
  49.  
  50. To show the help page, either run noList without any arguments, or run it
  51. with the parameter /?.  Example:
  52.  
  53. [C:\]noList
  54.  
  55.    noList utility, version 2.0
  56.    Copyright 1993 Jack Tan
  57.    Syntax:  noList [switches] [<id1> [<id2> ...]]
  58.  
  59.    noList removes and restores programs in the OS/2 window list and the
  60.    Alt-Esc round-robin.  OS/2 text (VIO), Presentation Manager, DOS, and
  61.    WIN-OS/2 programs are supported.  Each program is specified by a unique
  62.    identifier (ID).  Each ID can be either the first letters of the process
  63.    name or the system process ID.  Process IDs are assumed to be decimal,
  64.    unless prefixed by '0x' to denote a hexadecimal values.  Either '-' or
  65.    '/' can be used as the switch prefix; supported switches are:
  66.  
  67.          /A         Use both /A:J and /A:V switches
  68.             /A:J    Add processes to the Alt-Esc round-robin (jumpable)
  69.             /A:V    Add processes to the window list (visible)
  70.          /L         List process IDs
  71.          /M         Apply to each entry if there are multiple matches
  72.          /R         Use both /R:J and /R:V switches (default action)
  73.             /R:J    Remove processes from the Alt-Esc round-robin (nonjumpable)
  74.             /R:V    Remove processes from the window list (invisible)
  75.          /?         Show this program help
  76.  
  77. [C:\]_
  78.  
  79. --
  80.  
  81. Programs can be specified by name or process ID.  Valid program names
  82. and IDs can be listed with the /L switch.  The match is not case-
  83. sensitive, and noList only needs enough characters to uniquely identify
  84. the process.  Strings can be embedded in double quotes, allowing spaces
  85. to be used in identifiers.
  86.  
  87. Processes can also be sent to noList via their process IDs.  Any integer
  88. is considered to be a process ID.  Integers prefixed with "0x" are
  89. considered hexadecimal.  Note that octal support has been removed from
  90. this release:  integers prefixed with "0" are also considered decimal
  91. values.  This feature was not used often, and conflicted with programs
  92. which pad their process IDs with zeros (such as the OS/2 PSTAT).  Note
  93. that the output from noList /L (see below) should be used in favor of
  94. output from other programs, due to the method used in determining the
  95. proper process.
  96.  
  97. Multiple specifiers may be placed on the command line, with mixing of 
  98. names, decimal, and hexadecimal strings allowed.  
  99.  
  100. Syntax:  noList.exe /L
  101.          noList.exe /L <id1> [<id2> ...]
  102.  
  103. Using the /L switch without any further arguments will list all the 
  104. available processes in the system.  The information returned by /L 
  105. includes the process ID, in base 10 and delimited by square brackets; the
  106. visibility of the program in the window list ("Vis") or invisibility 
  107. ("---"), listed after the process ID; the jumpability of the program
  108. ("Jmp") or nonjumpability ("---"), listed after the visibility; and the
  109. process name, as recorded by the system.  If processes are specified with
  110. the /L switch, only the listed processes are examined.  Examples:
  111.  
  112. [C:\]noList /L
  113.             [4]  ---  ---  Workplace Shell
  114.             [4]  Vis  Jmp  Desktop
  115.             [5]  Vis  Jmp  Icon Editor
  116.             [8]  ---  ---  Process Monitor
  117.            [20]  Vis  Jmp  EPM-E:\Jack\C\noList documentation
  118.            [23]  Vis  Jmp  OS/2 Window
  119.            [24]  Vis  Jmp  OS/2 System Editor
  120.            [25]  Vis  Jmp  noList.exe
  121.  
  122. [C:\]noList 4 Icon 0x18 /L
  123.             [4]  ---  ---  Workplace Shell
  124.             [4]  Vis  Jmp  Desktop
  125.             [5]  Vis  Jmp  Icon Editor
  126.            [24]  Vis  Jmp  OS/2 System Editor
  127.  
  128. [C:\]_
  129.  
  130. --
  131.  
  132. Syntax:  noList /A <id1> [<id2> ...]
  133.          noList [/A:J] [/A:V] [/R:J] [/R:V] <id1> [<id2> ...]
  134.          noList [/R] <id1> [<id2> ...]
  135.  
  136. noList v2.0 has a fine degree of control which allows the user to
  137. separately modify the visibility and the jumpability of the specified
  138. processes.  Users of the previous release of noList recall that these
  139. controls were locked together; they have now been split to allow the user
  140. more freedom.
  141.  
  142.    - To add a program to the window list, use the /A:V switch.
  143.    - To add a program to the Alt-Esc round-robin, use the /A:J switch.
  144.    - To add a program to both the window list and Alt-Esc round-robin,
  145.      use /A.
  146.  
  147.    - To remove a program from the window list, use the /R:V switch.
  148.    - To remove a program from the Alt-Esc round-robin, use the /R:J
  149.      switch.
  150.    - To remove a program from both the window list and Alt-Esc
  151.      round-robin, use /R.  This switch is the default action when no
  152.      other switches are specified, and identifiers are specified on the
  153.      command line.
  154.  
  155. Any non-conflicting combination of the above switches can be used.
  156. Examples:
  157.  
  158. [C:\]noList /r 0x18 "OS/2 Window" 8
  159.        Change successful:  OS/2 System Editor (pid 24)
  160.        Change successful:  OS/2 Window (pid 23)
  161.         No change needed:  Process Monitor (pid 8)
  162.  
  163. [C:\]noList /L 0x18 "OS/2 Window" 8
  164.            [24]  ---  ---  OS/2 System Editor
  165.            [23]  ---  ---  OS/2 Window
  166.             [8]  ---  ---  Process Monitor
  167.  
  168. [C:\]noList /A:V 0x18 "OS/2 Window"
  169.        Change successful:  OS/2 System Editor (pid 24)
  170.  
  171. [C:\]noList /L 0x18 "OS/2 Window" 8
  172.            [24]  Vis  ---  OS/2 System Editor
  173.            [23]  Vis  ---  OS/2 Window
  174.             [8]  ---  ---  Process Monitor
  175.  
  176. [C:\]noList /A:J "OS/2 Window" 8
  177.        Change successful:  OS/2 Window (pid 23)
  178.        Change successful:  Process Monitor (pid 8)
  179.  
  180. [C:\]noList /L 0x18 "OS/2 Window" 8
  181.            [24]  Vis  ---  OS/2 System Editor
  182.            [23]  Vis  Jmp  OS/2 Window
  183.             [8]  ---  Jmp  Process Monitor
  184.  
  185. [C:\]noList /A 0x18 "OS/2 Window" 8
  186.        Change successful:  OS/2 System Editor (pid 24)
  187.         No change needed:  OS/2 Window (pid 23)
  188.        Change successful:  Process Monitor (pid 8)
  189.  
  190. [C:\]noList /L 0x18 "OS/2 Window" 8
  191.            [24]  Vis  Jmp  OS/2 System Editor
  192.            [23]  Vis  Jmp  OS/2 Window
  193.             [8]  Vis  Jmp  Process Monitor
  194.  
  195. [C:\]_
  196.  
  197. --
  198.  
  199. Syntax:   noList /M [other switches] <id1> [<id2> ...]
  200.  
  201. By default, noList requires a nonambiguous identifier, and will not 
  202. affect identifiers which match more than one process.  For example, if 
  203. there is a window called "OS/2 Window" and another program called "OS/2
  204. System Editor," then attempting to apply noList to "OS/2" will fail:
  205.  
  206. [C:\]noList OS/2 /L
  207.            [23]  Vis  Jmp  OS/2 Window
  208.            [24]  Vis  Jmp  OS/2 System Editor
  209.  
  210. [C:\]noList OS/2
  211. Ambiguous ID (no change):  OS/2 Window (pid 23) and OS/2 System Editor (pid 24)
  212.  
  213. [C:\]_
  214.  
  215. The user can use a more specific term, such as "OS/2 Win" or "OS/2 Sys" 
  216. to select the program desired.  To affect all programs which have the 
  217. same identifier, use the /M switch to match multiple names.  Example:
  218.  
  219. [C:\]noList OS/2 /L
  220.            [23]  Vis  Jmp  OS/2 Window
  221.            [24]  Vis  Jmp  OS/2 System Editor
  222.  
  223. [C:\]noList OS/2 /M
  224.        Change successful:  OS/2 Window (pid 23)
  225.        Change successful:  OS/2 System Editor (pid 24)
  226.  
  227. [C:\]noList OS/2 /L
  228.            [23]  ---  ---  OS/2 Window
  229.            [24]  ---  ---  OS/2 System Editor
  230.  
  231. [C:\]_
  232.  
  233.  
  234.  
  235.  
  236. Return Codes
  237. ------------
  238. noList v2.0 supports the following return codes:
  239.  
  240.    0   Successful run, each requested change or listing (via the
  241.           /L switch) was satisfied.
  242. 1-98   The return code corresponds to the number of unsuccessful
  243.           changes.  Each ID which failed to change adds 1 to the
  244.           return code.  Possible causes for failure include not
  245.           finding the specified process, finding more than one
  246.           match for the ID (when the /M switch is not used), or
  247.           failing to change the status (failure indicated by the
  248.           API call).
  249.   99   99 or more failures
  250.  100   Help has been requested (either no arguments or /? argument)
  251.  101   No process IDs specified, but a valid switch other than /L
  252.           or /? was specified.  Error message:
  253.           "noList:  no process name nor ID specified"
  254.  102   Switches were specified, but none were valid.  Error message:
  255.           "noList:  switches explicitly given, none recognized"
  256.  103   Switches were specified to both add to and remove from the
  257.           OS/2 window list.  This can be accomplished with one switch
  258.           from each set:  { /A, A:V } and { /R, /R:V }.  Error message:
  259.           "noList:  switch conflict -- request to both add & remove
  260.           processes from the window list"
  261.  104   Switches were specified to both add to and remove from the
  262.           Alt-Esc round-robin.  This can be accomplished with one of
  263.           "/A /R:J," "/A:J /R:J," or "/A:J /R."  Error message:
  264.           "noList:  switch conflict -- request to both add & remove
  265.           processes from the Alt-Esc round-robin"
  266.  105   No entries in the switchlist were found when the list was
  267.           queried.  Error message:
  268.           "noList:  cannot find entries in the window list"
  269.  106   Insufficient memory in the operating system to satisfy
  270.           allocation request.  Error message:
  271.           "noList:  insufficient memory to continue"
  272.  107   Invalid parameter passed to memory allocation system.  This
  273.           error should never occur, but is included for completeness.
  274.           Error message:  "noList:  unable to allocate memory"
  275.  108   A system call made by noList was interrupted.  Error message:
  276.           "noList:  an error interrupt has occurred; execution cannot"
  277.           "continue"
  278.  109   noList was unable to deallocate dynamically-allocated memory.
  279.           Error message:  "noList:  unable to deallocate memory"
  280.  110   An unknown error has occurred.  This message should never occur.
  281.           Error message:  "noList:  an error of unknown type n has occurred,"
  282.           where "n" is an integer.
  283.  
  284. The vast majority of the error codes returned by noList should be under 105.
  285. Error codes 107 (invalid parameter in memory allocation system) and 110
  286. (unknown error) should never occur.
  287.  
  288.  
  289.  
  290.  
  291. Shareware
  292. ---------
  293. Starting with version 2.0, noList is released as shareware.  You may use
  294. noList v2.0 for a trial period of 15 days.  If, after this period, you
  295. feel that noList is not worth registering, you must stop using it.  The
  296. registration cost for an individual user is US$15.  For information on
  297. business use and site licensing, please contact the author for further
  298. details.
  299.  
  300.  
  301.  
  302.  
  303. Disclaimer
  304. ----------
  305. By using noList, the user assumes all responsibility for any consequences
  306. or damages resulting from such use, and frees the author from any
  307. obligations.  Furthermore, the user agrees to not modify, disassemble, or
  308. reverse-engineer the software in any fashion.
  309.  
  310. Any comments, suggestions, and bug reports are welcome by the author. 
  311. His contact address is:
  312.  
  313.          Jack Tan
  314.          P.O. Box 3894
  315.          Oak Brook, IL 60522-3984
  316.          United States of America
  317.          Internet:  jahk@uiuc.edu
  318.  
  319.  
  320.  
  321. Revision History
  322. ----------------
  323. Version 1.0 -- 3 October 1993
  324.    Requires EMX.DLL, EMXLIBC.DLL
  325.    First release.  Thanks to Don Meyer for the idea (1 October 1993).
  326.     - Affects PM programs
  327.     - Use process IDs (multiple).  Prefixes of '0x' are hexadecimal,
  328.       '0' are octal, and other values are decimal.
  329.     - /? for help
  330.  
  331. Version 2.0 -- 12 November 1993
  332.    Shareware release, US$15 to register for individuals.
  333.    No longer requires EMX.DLL and EMXLIBC.DLL
  334.    Nearly complete rewrite, only keeping some of the old help file.
  335.    A *huge* thank you to Melissa Woo for beta testing both the software
  336.       and the documentation (yup, even the docs too).  noList would never
  337.       have made it this far without your support and help.
  338.    noList now affects PM, OS/2 text (both windowed and full-screen), DOS
  339.       text (both windowed and full-screen), WIN-OS/2 (both seamless
  340.       applications and full-screen sessions), and WPS folders (though not
  341.       different views of the same folder).
  342.     - Separated window list and Alt-Esc controls while maintaining
  343.       backwards compatibility.
  344.     - Switches:  /A (add to window list and Alt-Esc round-robin), /A:J
  345.       (add jumpability), /A:V (add visibility), /L (list processes), /M
  346.       (allow multiple matches), /R (remove from window list and Alt-Esc
  347.       round-robin), /R:J (remove jumpability), /R:V (remove visibility),
  348.       /? (help).
  349.     - Octal process IDs removed (not used, conflicts with other programs
  350.       which pad decimal numbers with zeros).
  351.     - Allows names instead of just process IDs
  352.     - Improved return code handling
  353. Version 2.0a -- 15 November 1993
  354.    Corrected minor bug:  when no change is needed, "change successful"
  355.       was displayed.
  356.  
  357.