home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Shareware BBS: 15 Message / 15-Message.zip / UU991113.zip / Uh991112.txt < prev    next >
Text File  |  1999-11-15  |  153KB  |  4,232 lines

  1.  
  2.                    comp.os.os2.programmer.misc      (Usenet)
  3.  
  4.                  Saturday, 06-Nov-1999 to Friday, 12-Nov-1999
  5.  
  6. +----------------------------------------------------------------------------+
  7.  
  8. From: none@none.net                                     06-Nov-99 08:44:26
  9.   To: All                                               06-Nov-99 05:25:28
  10. Subj: EARN $1000 TO $5000 WEEKLY!!!  4932
  11.  
  12. From: none@none.net
  13.  
  14. FINALLY!!!
  15.  
  16. A SIMPLE ONLINE SYSTEM FOR MAKING FAST, EASY, MONEY THAT LASTS !!!
  17.  
  18. A TOTAL NO-BRAINER THAT ANYONE IN THE WORLD CAN DO !!!
  19.  
  20. Go to: http://opportunity.valuenetusa.com/JL2836/
  21.  
  22. AND GET STARTED TODAY !!!
  23.  
  24.  
  25.  
  26.   
  27.  
  28.  
  29.  
  30. zpgcvnmuscpeoxdwbshcsjszolyetygsrixbhjmikbocsynzpmvxnrhlodtbzhblp
  31.  
  32. --- WtrGate+ v0.93.p7 sn 165
  33.  * Origin: Usenet: AT&T WorldNet Services (1:109/42)
  34.  
  35. +----------------------------------------------------------------------------+
  36.  
  37. From: mc6530@mclink.it                                  06-Nov-99 13:50:12
  38.   To: All                                               06-Nov-99 14:36:00
  39. Subj: Re: Max file handles for processes
  40.  
  41. From: mc6530@mclink.it (Yuri Dario)
  42.  
  43. On Fri, 5 Nov 1999 08:32:50, Carsten Thorenz 
  44. <thorenz@hydromech.uni-hannover.de> wrote:
  45.  
  46. > Look at the value of "files=xxx" in your config.sys.
  47.  
  48.  
  49. it should affect only DOS sessions, not OS/2 handles.
  50.  
  51. Bye,
  52.  
  53.     Yuri Dario
  54.  
  55. /*
  56.  * member of TeamOS/2 - Italy
  57.  * http://www.quasarbbs.com/yuri
  58.  */
  59.  
  60. --- WtrGate+ v0.93.p7 sn 165
  61.  * Origin: Usenet: MC-link The World On Line (1:109/42)
  62.  
  63. +----------------------------------------------------------------------------+
  64.  
  65. From: eric.olson@sympatico.ca                           06-Nov-99 21:24:04
  66.   To: All                                               06-Nov-99 20:02:25
  67. Subj: Re: !How get `font size` list inside WPS extension code ?
  68.  
  69. From: eric.olson@sympatico.ca (Eric Olson)
  70.  
  71. On Fri, 5 Nov 1999 21:53:53, Peter Fitzsimons <pfitz@ican.net> wrote:
  72.  
  73. > GpiQueryFonts(). This will show the screen fonts.  Run it like this "sf
  74. > >log", then look at the file "log".
  75. >  
  76. > [--- snip: sf.c ----]
  77. >  
  78. > // compile: icc /Q /Smes /W3 /Kb+ /O sf.c /B"/pm:pm"
  79.  
  80. Hi,
  81.  here is a hack if you would like the sample to work with gcc
  82.  
  83. add the following line:
  84. #define INCL_DOS
  85. before the line  #include <os2.h>
  86.  
  87. and in main after ----    long i, p --- add
  88.     PTIB  thread_block;
  89.     PPIB  process_block;
  90.  
  91.     DosGetInfoBlocks( &thread_block, &process_block );
  92.     process_block->pib_ultype = 3;
  93.  
  94. You can then compile with 
  95. gcc -o sf.exe sf.c
  96. and run in the same way
  97. sf >log
  98.  
  99. Cheers,
  100.  
  101. Eric
  102.  
  103. --- WtrGate+ v0.93.p7 sn 165
  104.  * Origin: Usenet: Sympatico (1:109/42)
  105.  
  106. +----------------------------------------------------------------------------+
  107.  
  108. From: pfitz@ican.net                                    07-Nov-99 03:58:06
  109.   To: All                                               07-Nov-99 03:28:17
  110. Subj: Re: Patch help
  111.  
  112. From: Peter Fitzsimons <pfitz@ican.net>
  113.  
  114. John Poltorak wrote:
  115. > I'm trying to build wget.exe by applying the patch from the OS/2 version
  116. > to the original source, but I can't get patch (GNU Patch 2.5.4) to work.
  117. > Can some help out with the syntax?
  118. > I'm trying apply the patch using wget-1.5.3-os2.diff from c:\test\wget\os2
  119. > to the source which is in c:\test\wget\wget-1.5.3\src.
  120.  
  121. Can't help you there, but I do have an os/2 wget.exe (1.4.5) if you want
  122. it.
  123.  
  124. --- WtrGate+ v0.93.p7 sn 165
  125.  * Origin: Usenet: @Home Network Canada (1:109/42)
  126.  
  127. +----------------------------------------------------------------------------+
  128.  
  129. From: Juergen.Dankoweit@T-Online.de                     07-Nov-99 10:50:22
  130.   To: All                                               07-Nov-99 05:18:09
  131. Subj: Killing the WPS
  132.  
  133. From: Juergen Dankoweit <Juergen.Dankoweit@T-Online.de>
  134.  
  135. Hello.
  136.  
  137. I have a great problem in killing the WPS:
  138. I use a daemon-program to start the WPS. In this daemon I have thread
  139. that starts 
  140. the WPS via DosStartSession() - which works great - and then waits 
  141. on DosReadQueue() until the WPS ends. I also use an exception-handler
  142. that 
  143. reacts on DosKillProcess().
  144. In this handler the program waits until the thread with DosReadQueue()
  145. ends.
  146.  
  147. My problem is that DosKillProcess() cannot always kill the WPS.
  148. Especially then
  149. when I use the WPS (opening folders and so on).
  150.  
  151. Does anyone have an idea what to do that the WPS can be killed always?
  152.  
  153. I have an other question: How do I register fonts globally in the
  154. system? Are there any API-calls?
  155.  
  156. Many thanks
  157.  
  158. Jürgen Dankoweit
  159.  
  160. =============================================
  161. Juergen Dankoweit       TeamOS/2-Member #1086
  162. URL: home.t-online.de/home/Juergen.Dankoweit
  163. >> OS/2... it's cool men! <<
  164.  
  165. --- WtrGate+ v0.93.p7 sn 165
  166.  * Origin: Usenet: T-Online (1:109/42)
  167.  
  168. +----------------------------------------------------------------------------+
  169.  
  170. From: jpolt@bradnet.legend.co.uk                        07-Nov-99 10:47:23
  171.   To: All                                               07-Nov-99 10:20:14
  172. Subj: Re: Patch help
  173.  
  174. From: jpolt@bradnet.legend.co.uk (John Poltorak)
  175.  
  176. In <3824F8D7.4E64@ican.net>, Peter Fitzsimons <pfitz@ican.net> writes:
  177. >John Poltorak wrote:
  178. >> 
  179. >> I'm trying to build wget.exe by applying the patch from the OS/2 version
  180. >> to the original source, but I can't get patch (GNU Patch 2.5.4) to work.
  181. >> 
  182. >> Can some help out with the syntax?
  183. >> 
  184. >> I'm trying apply the patch using wget-1.5.3-os2.diff from c:\test\wget\os2
  185. >> to the source which is in c:\test\wget\wget-1.5.3\src.
  186. >> 
  187. >
  188. >Can't help you there, but I do have an os/2 wget.exe (1.4.5) if you want
  189. >it.
  190.  
  191. It's OK Peter, I already have 1.5.3. It's just that one of the default
  192. locations
  193. for .wgetrc is C:\TCPIP\ETC, whereas I'd prefer to use %ETC%.
  194.  
  195. --
  196. John
  197.  
  198. --- WtrGate+ v0.93.p7 sn 165
  199.  * Origin: Usenet: Legend Internet Ltd (1:109/42)
  200.  
  201. +----------------------------------------------------------------------------+
  202.  
  203. From: Cpt.Viper@gmx.net                                 07-Nov-99 14:11:16
  204.   To: All                                               07-Nov-99 15:15:21
  205. Subj: Re: Detecting MMX processor
  206.  
  207. From: Cpt.Viper@gmx.net (Martin Schuette)
  208.  
  209. NOSPAM_R.Ihle@S-t.De (Ruediger Ihle) wrote  :
  210.  
  211. > How does an OS/2 app check, that it runs on an MMX-like 
  212. > processor in order to take advantage of some new instructions ?
  213.  
  214. By using CPUID and testing the appropriate bit in EAX.
  215.  
  216. -- 
  217. Martin
  218. "It is better to die on your feet than to live on your knees."
  219.  
  220. --- WtrGate+ v0.93.p7 sn 165
  221.  * Origin: Origin Line 1 Goes Here (1:109/42)
  222.  
  223. +----------------------------------------------------------------------------+
  224.  
  225. From: mc6530@mclink.it                                  07-Nov-99 15:53:15
  226.   To: All                                               07-Nov-99 15:15:21
  227. Subj: Re: Max file handles for processes
  228.  
  229. From: mc6530@mclink.it (Yuri Dario)
  230.  
  231. Hi,
  232.  
  233. > From UNDOC.INF somewhere out on the net (Hobbes ?):
  234. > > SHELLHANDLESINC= - This environment variable increments the number of file 
  235.  
  236.  
  237. that's worked. Thanks for help.
  238.  
  239. Bye,
  240.  
  241.     Yuri Dario
  242.  
  243. /*
  244.  * member of TeamOS/2 - Italy
  245.  * http://www.quasarbbs.com/yuri
  246.  */
  247.  
  248. --- WtrGate+ v0.93.p7 sn 165
  249.  * Origin: Usenet: MC-link The World On Line (1:109/42)
  250.  
  251. +----------------------------------------------------------------------------+
  252.  
  253. From: Johannes.Hromadka@gmx.net                         04-Nov-99 22:00:18
  254.   To: All                                               07-Nov-99 15:15:21
  255. Subj: Re: Max file handles for processes
  256.  
  257. From: Hannes Hromadka <Johannes.Hromadka@gmx.net>
  258.  
  259.  
  260.  Hi,
  261.  
  262. > E.g. simply running the following loop
  263. >    i = 0;
  264. >    do {
  265. >       printf( "try %d\n", i);
  266. >       fp = fopen( "dummy.txt", "r");
  267. >       i++;
  268. >    } while( fp);
  269. > will open only 10 files when using gcc (without EMXOPT=-hxxx). With
  270. > VAC++ the runtime allocates free handles when needed (probably calling
  271. > DosSetMaxFH).
  272. > There is a way to raise this limit with a system-wide change? I need
  273. > it because I have a couple of programs running out of handles and I
  274. > can't recompile them.
  275.  
  276. Try 
  277.  
  278. SET EMXOPT=-c -n -h1024
  279.  
  280. this opens 1028 files before it stops on WSeB
  281.  
  282. Compiling this code with VaCPP seems to produce a program with no limit
  283. on file handles.
  284.  
  285. I stopped the test at more than 9000 open files 
  286.  
  287.  
  288. It used a lot of memory:
  289.  
  290. Here is the output of Theseus/2
  291.  
  292.  
  293. Memory Utilization for Process with PID = 0197, name = 'TEST':
  294.     bytes      bytes    number  bytes      bytes    bytes
  295. allocated  committed   present   each    present  swapped  description
  296.  0000075C   0000075C         1   075C   0000075C 00000000  PTDA
  297.  000002F4   000002F4         1   02F4   000002F4 00000000  TCB
  298.  00001000   00001000         1   1000   00001000 00000000  TSD
  299.  00010000   00009000         7   1000   00007000 00002000  LDT
  300.  000001E0   000001E0       480   01E0   000001E0 00000000  Process Page
  301. Directory
  302.  00078000   00027000        39   1000   00027000 00000000  Page Tables
  303.  05330000   018ED000       987   1000   003DB000 01130000  Accessible
  304. Shared memory
  305.  01360000   00021000        11   1000   0000B000 00000000  Originated
  306. Shared memory
  307.  02870000   0278A000      7311   1000   01C8F000 00977000  Private
  308. memory
  309.  
  310.  00089C30   00031C30                    0002FC30 00002000  Total System
  311.  01360000   00021000                    0000B000 00000000  Total Shared
  312. originated
  313.  02870000   0278A000                    01C8F000 00977000  Total Private
  314.  --------   --------                    -------- --------
  315.  03C59C30   027DCC30                    01CC9C30 00979000  Total
  316. RAM/SWAPPER for this Process
  317.     61799      40819                       29479     9700  (in Kbytes)
  318.    60.351     39.863                      28.789    9.473  (in Mbytes)
  319. < End of THESEUS3 (v 3.000.00) output @ 21:57:05 on 4.11.1999 >
  320.  
  321.  
  322.  
  323. ----
  324.  
  325. General Information about the Process with PID = 0197, name = 'TEST':
  326. PTDA address = FF1C52FC
  327.  
  328. Threads for this Process:
  329.                                     ---- priority ----
  330.  TID   Th_#        TCB        TSD  class  level actual  state
  331. 0001   007B   FA590574   F9C7A000     02     00   0001   0002  Blocked
  332.  
  333. Exit List:
  334.   Class   RtnAddress  Description
  335.    0010   FDFF:57B6   PMVIOP   #0001 (shared code)
  336.    0010   1F5C1BE0    GRE2VMAN #0001 (shared code)
  337.    0010   1E9845C8    PMMERGE  #0004 (shared code)
  338.    0010   F40F:85E4   PMMERGE  #0002 (shared code)
  339.    00B0   E027:3118   DOSCALL1 #0004 (shared code)
  340.    00C0   E027:50F8   DOSCALL1 #0004 (shared code)
  341.    0100   1E8E58D0    PMMERGE  #0004 (shared code)
  342.    01A2   FDFF:56C6   PMVIOP   #0001 (shared code)
  343.    01A5   1E984CCC    PMMERGE  #0004 (shared code)
  344.    01AB   1E86D968    PMMERGE  #0004 (shared code)
  345.    01AB   F407:16CA   PMMERGE  #0001 (shared code)
  346.    01AB   1E887530    PMMERGE  #0004 (shared code)
  347.    01AD   1F5C1BD0    GRE2VMAN #0001 (shared code)
  348.    01B0   E027:3118   DOSCALL1 #0004 (shared code)
  349.    01C0   E027:B674   DOSCALL1 #0004 (shared code)
  350.    01C0   E027:5105   DOSCALL1 #0004 (shared code)
  351.    01F0   1F784D88    VIDEOPMI #0002 (shared code)
  352.    01FF   000140AC    TEST     #0001 (shared code)
  353.  
  354. Open Files (MaxFH=9128):
  355.   ---- handles ---
  356.   Process   System   Flags  File name // Flags...
  357.      0000     004F    08    \DEV\CON // console
  358.      0001     004F    08    \DEV\CON // console
  359.      0002     004F    08    \DEV\CON // console
  360.      0003     0147    41    E:\HANNES\PROGR\C\TEST-FILEH\DUMMY.TXT //
  361. no_inherit fail_if_error
  362.      0004     006E    08    \DEV\KBD$ // console
  363.      0005     0138    41    E:\HANNES\PROGR\C\TEST-FILEH\DUMMY.TXT //
  364. no_inherit fail_if_error
  365.      0006     0132    41    E:\HANNES\PROGR\C\TEST-FILEH\DUMMY.TXT //
  366. no_inherit fail_if_error
  367.      0007     0145    41    E:\HANNES\PROGR\C\TEST-FILEH\DUMMY.TXT //
  368. no_inherit fail_if_error
  369.      0008     0043    00    \DEV\OEMHLP$ //
  370.      0009     0146    41    E:\HANNES\PROGR\C\TEST-FILEH\DUMMY.TXT //
  371. no_inherit fail_if_error
  372.      000A     017D    41    E:\HANNES\PROGR\C\TEST-FILEH\DUMMY.TXT //
  373. no_inherit fail_if_error
  374.      000B     0041    00    \DEV\LANMSG$$ //
  375.      000C     0143    41    E:\HANNES\PROGR\C\TEST-FILEH\DUMMY.TXT //
  376. no_inherit fail_if_error
  377.      000D     0163    41    E:\HANNES\PROGR\C\TEST-FILEH\DUMMY.TXT //
  378. no_inherit fail_if_error
  379.      000E     0172    41    E:\HANNES\PROGR\C\TEST-FILEH\DUMMY.TXT //
  380. no_inherit fail_if_error
  381.      000F     014F    41    E:\HANNES\PROGR\C\TEST-FILEH\DUMMY.TXT //
  382. no_inherit fail_if_error
  383.      0010     0186    41    E:\HANNES\PROGR\C\TEST-FILEH\DUMMY.TXT //
  384. no_inherit fail_if_error
  385.  
  386.  
  387.  
  388.         Hannes
  389.  
  390.  
  391. --- WtrGate+ v0.93.p7 sn 165
  392.  * Origin: Usenet: Global Network Services - Remote Access Mail & Ne
  393. (1:109/42)
  394.  
  395. +----------------------------------------------------------------------------+
  396.  
  397. From: Johannes.Hromadka@gmx.net                         07-Nov-99 18:09:18
  398.   To: All                                               07-Nov-99 15:15:21
  399. Subj: Re: Max file handles for processes
  400.  
  401. From: Hannes Hromadka <Johannes.Hromadka@gmx.net>
  402.  
  403.  
  404.  Hi,
  405.  
  406. > E.g. simply running the following loop
  407. >    i = 0;
  408. >    do {
  409. >       printf( "try %d\n", i);
  410. >       fp = fopen( "dummy.txt", "r");
  411. >       i++;
  412. >    } while( fp);
  413. > will open only 10 files when using gcc (without EMXOPT=-hxxx). With
  414. > VAC++ the runtime allocates free handles when needed (probably calling
  415. > DosSetMaxFH).
  416. > There is a way to raise this limit with a system-wide change? I need
  417. > it because I have a couple of programs running out of handles and I
  418. > can't recompile them.
  419.  
  420. Try 
  421.  
  422. SET EMXOPT=-c -n -h1024
  423.  
  424. this opens 1028 files before it stops on WSeB
  425.  
  426. Compiling this code with VaCPP seems to produce a program with no limit
  427. on file handles.
  428.  
  429. I stopped the test at more than 9000 open files 
  430.  
  431.  
  432. It used a lot of memory:
  433.  
  434. Here is the output of Theseus/2
  435.  
  436.  
  437. Memory Utilization for Process with PID = 0197, name = 'TEST':
  438.     bytes      bytes    number  bytes      bytes    bytes
  439. allocated  committed   present   each    present  swapped  description
  440.  0000075C   0000075C         1   075C   0000075C 00000000  PTDA
  441.  000002F4   000002F4         1   02F4   000002F4 00000000  TCB
  442.  00001000   00001000         1   1000   00001000 00000000  TSD
  443.  00010000   00009000         7   1000   00007000 00002000  LDT
  444.  000001E0   000001E0       480   01E0   000001E0 00000000  Process Page
  445. Directory
  446.  00078000   00027000        39   1000   00027000 00000000  Page Tables
  447.  05330000   018ED000       987   1000   003DB000 01130000  Accessible
  448. Shared memory
  449.  01360000   00021000        11   1000   0000B000 00000000  Originated
  450. Shared memory
  451.  02870000   0278A000      7311   1000   01C8F000 00977000  Private
  452. memory
  453.  
  454.  00089C30   00031C30                    0002FC30 00002000  Total System
  455.  01360000   00021000                    0000B000 00000000  Total Shared
  456. originated
  457.  02870000   0278A000                    01C8F000 00977000  Total Private
  458.  --------   --------                    -------- --------
  459.  03C59C30   027DCC30                    01CC9C30 00979000  Total
  460. RAM/SWAPPER for this Process
  461.     61799      40819                       29479     9700  (in Kbytes)
  462.    60.351     39.863                      28.789    9.473  (in Mbytes)
  463. < End of THESEUS3 (v 3.000.00) output @ 21:57:05 on 4.11.1999 >
  464.  
  465.  
  466.  
  467. ----
  468.  
  469. General Information about the Process with PID = 0197, name = 'TEST':
  470. PTDA address = FF1C52FC
  471.  
  472. Threads for this Process:
  473.                                     ---- priority ----
  474.  TID   Th_#        TCB        TSD  class  level actual  state
  475. 0001   007B   FA590574   F9C7A000     02     00   0001   0002  Blocked
  476.  
  477. Exit List:
  478.   Class   RtnAddress  Description
  479.    0010   FDFF:57B6   PMVIOP   #0001 (shared code)
  480.    0010   1F5C1BE0    GRE2VMAN #0001 (shared code)
  481.    0010   1E9845C8    PMMERGE  #0004 (shared code)
  482.    0010   F40F:85E4   PMMERGE  #0002 (shared code)
  483.    00B0   E027:3118   DOSCALL1 #0004 (shared code)
  484.    00C0   E027:50F8   DOSCALL1 #0004 (shared code)
  485.    0100   1E8E58D0    PMMERGE  #0004 (shared code)
  486.    01A2   FDFF:56C6   PMVIOP   #0001 (shared code)
  487.    01A5   1E984CCC    PMMERGE  #0004 (shared code)
  488.    01AB   1E86D968    PMMERGE  #0004 (shared code)
  489.    01AB   F407:16CA   PMMERGE  #0001 (shared code)
  490.    01AB   1E887530    PMMERGE  #0004 (shared code)
  491.    01AD   1F5C1BD0    GRE2VMAN #0001 (shared code)
  492.    01B0   E027:3118   DOSCALL1 #0004 (shared code)
  493.    01C0   E027:B674   DOSCALL1 #0004 (shared code)
  494.    01C0   E027:5105   DOSCALL1 #0004 (shared code)
  495.    01F0   1F784D88    VIDEOPMI #0002 (shared code)
  496.    01FF   000140AC    TEST     #0001 (shared code)
  497.  
  498. Open Files (MaxFH=9128):
  499.   ---- handles ---
  500.   Process   System   Flags  File name // Flags...
  501.      0000     004F    08    \DEV\CON // console
  502.      0001     004F    08    \DEV\CON // console
  503.      0002     004F    08    \DEV\CON // console
  504.      0003     0147    41    E:\HANNES\PROGR\C\TEST-FILEH\DUMMY.TXT //
  505. no_inherit fail_if_error
  506.      0004     006E    08    \DEV\KBD$ // console
  507.      0005     0138    41    E:\HANNES\PROGR\C\TEST-FILEH\DUMMY.TXT //
  508. no_inherit fail_if_error
  509.      0006     0132    41    E:\HANNES\PROGR\C\TEST-FILEH\DUMMY.TXT //
  510. no_inherit fail_if_error
  511.      0007     0145    41    E:\HANNES\PROGR\C\TEST-FILEH\DUMMY.TXT //
  512. no_inherit fail_if_error
  513.      0008     0043    00    \DEV\OEMHLP$ //
  514.      0009     0146    41    E:\HANNES\PROGR\C\TEST-FILEH\DUMMY.TXT //
  515. no_inherit fail_if_error
  516.      000A     017D    41    E:\HANNES\PROGR\C\TEST-FILEH\DUMMY.TXT //
  517. no_inherit fail_if_error
  518.      000B     0041    00    \DEV\LANMSG$$ //
  519.      000C     0143    41    E:\HANNES\PROGR\C\TEST-FILEH\DUMMY.TXT //
  520. no_inherit fail_if_error
  521.      000D     0163    41    E:\HANNES\PROGR\C\TEST-FILEH\DUMMY.TXT //
  522. no_inherit fail_if_error
  523.      000E     0172    41    E:\HANNES\PROGR\C\TEST-FILEH\DUMMY.TXT //
  524. no_inherit fail_if_error
  525.      000F     014F    41    E:\HANNES\PROGR\C\TEST-FILEH\DUMMY.TXT //
  526. no_inheritX-Mozilla-Status: 0009010     0186    41   
  527. E:\HANNES\PROGR\C\TEST-FILEH\DUMMY.TXT //
  528. no_inherit fail_if_error
  529.  
  530.  
  531.  
  532.         Hannes
  533.  
  534. --- WtrGate+ v0.93.p7 sn 165
  535.  * Origin: Usenet: Global Network Services - Remote Access Mail & Ne
  536. (1:109/42)
  537.  
  538. +----------------------------------------------------------------------------+
  539.  
  540. From: mamodeo@stny.rr.com                               07-Nov-99 14:08:27
  541.   To: All                                               07-Nov-99 15:15:22
  542. Subj: Re: Detecting MMX processor
  543.  
  544. From: Marty <mamodeo@stny.rr.com>
  545.  
  546. Martin Schuette wrote:
  547. > NOSPAM_R.Ihle@S-t.De (Ruediger Ihle) wrote  :
  548. > > How does an OS/2 app check, that it runs on an MMX-like
  549. > > processor in order to take advantage of some new instructions ?
  550. > By using CPUID and testing the appropriate bit in EAX.
  551.  
  552. That only works on Pentium class machines or higher.  It may be an illegal
  553. instruction on a 486 or less.
  554.  
  555. - Marty
  556.  
  557. --- WtrGate+ v0.93.p7 sn 165
  558.  * Origin: Usenet: Time Warner Road Runner - Binghamton NY (1:109/42)
  559.  
  560. +----------------------------------------------------------------------------+
  561.  
  562. From: tsipple@us.iNoSPAMbm.com                          07-Nov-99 18:43:18
  563.   To: All                                               07-Nov-99 21:28:08
  564. Subj: Info: Java Media Framework 2.0 Beta 2
  565.  
  566. From: Timothy Sipples <tsipple@us.iNoSPAMbm.com>
  567.  
  568. Sun and IBM have released the Java Media Framework Version 2.0 Beta 2.  It
  569. is available in a pure Java(TM) cross-platform version (compatible with OS/2
  570. Warp).
  571.  
  572. Visit:
  573.  
  574. http://java.sun.com/products/java-media/jmf
  575.  
  576. for more information and/or to download.
  577.  
  578. What's most interesting about this release is the file formats supported for
  579. playback, including:
  580.  
  581. - Macromedia Flash 2
  582. - Apple Quicktime (with certain CODECs, such as Cinepak)
  583. - MP2 and MP3 Audio
  584. - many more
  585.  
  586. In other words, using the Java Media Framework it should be relatively easy
  587. to create a "native" Flash plug-in for OS/2 Warp's Netscape Communicator.
  588.  
  589. Has anybody tried this out yet?
  590.  
  591. -- 
  592. Timothy Sipples
  593. IBM Network Computing Software
  594. Chicago, Illinois
  595. Web: http://www.satdirect.com/aviation
  596.  
  597. --- WtrGate+ v0.93.p7 sn 165
  598.  * Origin: Usenet: IBM Network Computing Software (Chicago) (1:109/42)
  599.  
  600. +----------------------------------------------------------------------------+
  601.  
  602. From: thorenz@hydromech.uni-hannover.de                 08-Nov-99 09:54:23
  603.   To: All                                               08-Nov-99 05:18:18
  604. Subj: Re: Max file handles for processes
  605.  
  606. From: Carsten Thorenz <thorenz@hydromech.uni-hannover.de>
  607.  
  608. Peter Fitzsimons wrote:
  609. > Carsten Thorenz wrote:
  610. > That's for DOS programs only.
  611.  
  612. Yuck, really.
  613.  
  614. Anyhow I don't know why I can open about 95 files right now.
  615. I suggested it was because of the "files" entry ...
  616.  
  617. Bye, Carsten
  618.  
  619.  
  620. --
  621. Carsten Thorenz           Institut fuer Stroemungsmechanik und
  622.                           elektronisches Rechnen im Bauwesen
  623. thorenz@hydromech.uni-hannover.de
  624. http://www.hydromech.uni-hannover.de/w3-pages-thorenz/thorenz.html
  625.  
  626. --- WtrGate+ v0.93.p7 sn 165
  627.  * Origin: Usenet: RRZN - Newsserver Test (1:109/42)
  628.  
  629. +----------------------------------------------------------------------------+
  630.  
  631. From: NOSPAM_R.Ihle@S-t.De                              08-Nov-99 10:56:21
  632.   To: All                                               08-Nov-99 10:31:26
  633. Subj: Re: Detecting MMX processor
  634.  
  635. From: NOSPAM_R.Ihle@S-t.De (Ruediger Ihle)
  636.  
  637. On Sun, 7 Nov 1999 19:08:55, Marty <mamodeo@stny.rr.com> wrote:
  638.  
  639. > Martin Schuette wrote:
  640. > > 
  641. > > NOSPAM_R.Ihle@S-t.De (Ruediger Ihle) wrote  :
  642. > > 
  643. > > > How does an OS/2 app check, that it runs on an MMX-like
  644. > > > processor in order to take advantage of some new instructions ?
  645. > > 
  646. > > By using CPUID and testing the appropriate bit in EAX.
  647. > That only works on Pentium class machines or higher.  It may be an illegal
  648. > instruction on a 486 or less.
  649.  
  650. That's what I was suspecting. To avoid additional CPU detection (and the
  651. risk of failing to correctly accomplish this) the exception handler 
  652. method
  653. seems to me most reasonable.
  654.  
  655.  
  656. Thanks guys
  657.  
  658. -- 
  659. Ruediger "Rudi" Ihle [S&T Systemtechnik GmbH, Germany]
  660. http://www.s-t.de
  661. Please remove all characters left of the "R" in my email address
  662.  
  663. --- WtrGate+ v0.93.p7 sn 165
  664.  * Origin: Usenet: S&T (1:109/42)
  665.  
  666. +----------------------------------------------------------------------------+
  667.  
  668. From: bborisov@NOOOSPAMM.teklogix.com                   08-Nov-99 14:45:18
  669.   To: All                                               08-Nov-99 20:06:28
  670. Subj: TCP/IP 4.2 Routing table mbufs leak?
  671.  
  672. From: Boris Borissov <bborisov@NOOOSPAMM.teklogix.com>
  673.  
  674. Hi everybody,
  675. Is it a known problem: when a task is trying to reach a destination, but
  676.  
  677. can't do it, then frees and re-allocates a socket and tries again, each
  678. attempt cause 2 additional mbufs (see netstat -m) allocated and never
  679. freed?
  680. Similar problem was fixed in IC18283, but I wonder if it was included
  681. in any 86XXX.
  682.  
  683. Boris.
  684.  
  685.  
  686.  
  687. --- WtrGate+ v0.93.p7 sn 165
  688.  * Origin: Usenet: Teklogix Inc. (1:109/42)
  689.  
  690. +----------------------------------------------------------------------------+
  691.  
  692. From: lpino@dcc.uchile.cl                               08-Nov-99 20:43:29
  693.   To: All                                               08-Nov-99 21:19:01
  694. Subj: Re: WSeb and LDGW and NDS
  695.  
  696. From: Leonardo Pino Werlinger <lpino@dcc.uchile.cl>
  697.  
  698. There is a way to attach securyty using realms under WebSphere, at least for
  699. Windows. The way you do it is you set Users, Groups and ACLs, after that you
  700. use a resource to be protected that means a file or a CGI, servlet ...etc.
  701.  
  702. I don't know if you will be able to see the way Netware uses the security
  703. but maybe you could simulate something like a realm under Netware and maybe
  704. Websphere will list it, all of this under OS/2 of course.
  705.  
  706. Give it a try.
  707.  
  708.  
  709. Leonardo Pino
  710.  
  711. Charles Christacopoulos escribió:
  712.  
  713. > Hi,
  714. >
  715. > I would appreciate any pointers, tips, ideas (whatever) to the
  716. > following.
  717. >
  718. > We are primarily a Netware/Solaris house, apart from me being odd with
  719. > OS/2.
  720. > I run WSeB and Lotus Domino Go web server(s) to provide the www intranet
  721. > at our institution.
  722. >
  723. > Without gettting into any detail, LDGW can call an external program to
  724. > validate users when they try to get  www "protected" files.  I would
  725. > like to "one day" have such an external program that would actually
  726. > validate users against Netware's NDS tree (thus users would in effect
  727. > use the same ID and password for Netware and for viewing files on the
  728. > www).
  729. >
  730. > Where do I start looking for a solution?
  731. > Will the LDAP kit that comes with WSeB allow me to do anything like it?
  732. > Can it be done?
  733. > Has anyone got it (we would be willing to pay :-) ?
  734. >
  735. > TIA.
  736. > Regards
  737. > Charles
  738. >
  739. > Remove REMOVE_ME to reply.
  740. > -------------------------------------------------------------------
  741. > Charles Christacopoulos, Secretary's Office, University of Dundee,
  742. > Dundee DD1 4HN, (Scotland) United Kingdom.
  743. > Tel: +44+(0)1382-344891. Fax: +44+(0)1382-201604.
  744. > http://somis.ais.dundee.ac.uk/    (runs on OS/2)
  745. > Scottish Search Maestro http://somis2.ais.dundee.ac.uk/ (runs on OS/2
  746. > too)
  747.  
  748. --- WtrGate+ v0.93.p7 sn 165
  749.  * Origin: Usenet: DCC - Universidad de Chile (1:109/42)
  750.  
  751. +----------------------------------------------------------------------------+
  752.  
  753. From: mads@troest.NEVERMORE.dk                          09-Nov-99 00:36:16
  754.   To: All                                               08-Nov-99 21:19:01
  755. Subj: Re: Detecting MMX processor
  756.  
  757. From: mads@troest.NEVERMORE.dk (Mads Orbesen Troest)
  758.  
  759. On Mon, 8 Nov 1999 10:56:42, NOSPAM_R.Ihle@S-t.De (Ruediger Ihle) 
  760. wrote:
  761.  
  762. > That's what I was suspecting. To avoid additional CPU detection (and the
  763. > risk of failing to correctly accomplish this) the exception handler 
  764.  
  765. .. or simply make sure it is a >= Pentium processor before using the 
  766. cpuid method. MMX extensions do not exist for processors below 
  767. Pentium.
  768.  
  769.    These were the incoherent ramblings of ...
  770.       ... /\/\\ads Orbesen Troest <mads@troest.NEVERMORE.dk>
  771.             [http://www.sprog.auc.dk/~motr96]
  772.  
  773. (Please remove NEVERMORE from address when replying via email...)
  774.  
  775. --- WtrGate+ v0.93.p7 sn 165
  776.  * Origin: Usenet: SIRIUS Cybernetics (1:109/42)
  777.  
  778. +----------------------------------------------------------------------------+
  779.  
  780. From: mamodeo@stny.rr.com                               08-Nov-99 20:58:20
  781.   To: All                                               09-Nov-99 03:31:28
  782. Subj: Re: Detecting MMX processor
  783.  
  784. From: Marty <mamodeo@stny.rr.com>
  785.  
  786. Mads Orbesen Troest wrote:
  787. > On Mon, 8 Nov 1999 10:56:42, NOSPAM_R.Ihle@S-t.De (Ruediger Ihle)
  788. > wrote:
  789. > > That's what I was suspecting. To avoid additional CPU detection (and the
  790. > > risk of failing to correctly accomplish this) the exception handler
  791. > .. or simply make sure it is a >= Pentium processor before using the
  792. > cpuid method. MMX extensions do not exist for processors below
  793. > Pentium.
  794.  
  795. Not good enough, as some Pentium's don't recognize the instruction either.
  796.  
  797. - Marty
  798.  
  799. --- WtrGate+ v0.93.p7 sn 165
  800.  * Origin: Usenet: Time Warner Road Runner - Binghamton NY (1:109/42)
  801.  
  802. +----------------------------------------------------------------------------+
  803.  
  804. From: jstucklex@attglobal.net                           09-Nov-99 12:42:00
  805.   To: All                                               09-Nov-99 15:59:29
  806. Subj: Re: VAC++ debugger storage monitor: how to search for specific data?
  807.  
  808. From: Jerry Stuckle <jstucklex@attglobal.net>
  809.  
  810. Arie,
  811.  
  812. Sorry, you can't search for specific data - I assume part of the reason
  813. could be that memory is not necessarily contiguous in OS/2, even with
  814. virtual addresses.
  815.  
  816. A trick I've used quite often is to set a pointer to the data I want to
  817. monitor, then stop when the pointer is set.  This will give me the
  818. address of the data, and I can then set a breakpoint on the change.
  819.  
  820. Arie Kazachin wrote:
  821. > Hello!
  822. > I'm attempting to run some program from the debugger found in
  823. > VAC++ 3.0. In the "storage" monitor window, there is no option
  824. > to search for a specific data, there is only address which I can
  825. > enter for the window to scroll to. I need to find some known data
  826. > (a string) and to set a breakpoint when it'll be changed. But I don't
  827. > know, how to find an address of a known data: I can't find such a
  828. > trivial option as "search for ..." that is found in many other debuggers.
  829. > It's almost unthinkable that such a trivial option doesn't exists in
  830. > VAC++ debugger. Maybe I'm missing something obvious?
  831. > THANKS IN ADVANCE FOR ANY HELP ! ! !
  832. >
  833. ******************************************************************************
  834. > *   Arie Kazachin, Israel, e-mail: ariek@attglobal3.14159265358979323846.net 
  835. *
  836. >
  837. ******************************************************************************
  838. > NOTE: before replying, leave only letters in my domain-name. Sorry, SPAM
  839. trap.
  840.  
  841. -- 
  842.  
  843. =======================================================
  844. To reply, delete the "x" from my email address
  845.  
  846. Jerry Stuckle
  847. jstucklex@attglobal.net
  848. JDS Computer Training Corp.
  849. Sun Certified Java Programmer
  850. VisualAge/Java Certified Advanced Technical Expert
  851. VisualAge/C++ Certified Developer
  852.  
  853. =======================================================
  854.  
  855. --- WtrGate+ v0.93.p7 sn 165
  856.  * Origin: Usenet: JDS Computer Training Corp. (1:109/42)
  857.  
  858. +----------------------------------------------------------------------------+
  859.  
  860. From: kh@no.spam.munot.demon.co.uk                      09-Nov-99 21:58:28
  861.   To: All                                               09-Nov-99 20:25:15
  862. Subj: SYS_DLLS and superclassing native controls
  863.  
  864. From: kh@no.spam.munot.demon.co.uk (Kevin)
  865.  
  866. I have a massive PM application with hundreds and hundreds of entry
  867. fields. It is used on 21 inch montiors and users are complaining that
  868. they can't see the entry field cursor on the large screens.
  869. Subclassing entry fields is not an option in this environment. So I
  870. thought I could superclass WC_ENTRYFIELD. I have created a DLL with an
  871. initialisation routine that attempts to get the class info for
  872. WC_ENTRYFIELD, store the address of the window proc and register a
  873. CS_PUBLIC control called WC_ENTRYFIELD. The intention is that when it
  874. receives the focus it can call the original WC_ENTRYFIELD wnd proc and
  875. then create a new cursor that is more visible.
  876.  
  877. I list my DLL in SYS_DLLS->LoadEachProcess (or whatever it's called).
  878. The DLL loads and executes its initialisation. WinQueryClassInfo gets
  879. TRUE for WC_ENTRYFIELD. WinRegisterClass for WC_ENTRYFIELD with
  880. CS_PUBLIC gets FALSE. But after re-booting, any window with an entry
  881. field traps. This tends to indicate that my wndproc is being called,
  882. even though I got FALSE on the register. I wonder if the address
  883. returned by WinQueryClassInfo is valid in all the other processes.
  884.  
  885. I believe from a search on DEJA that Rich Walsh has done this kind of
  886. thing before. What I want to do is register my own wndproc for all
  887. WC_ENTRYFIELD controls created and create a different cursor every
  888. time an entry field gets the focus. What am I doing wrong?
  889.  
  890. Anything that requires all of the definitions of entry fields to be
  891. changed is out of the question. If this isn't possible, I have to tell
  892. the users to just live with it. If they want something else they
  893. should call IBM OS/2 support!
  894.  
  895. I thought I was the only one still doing real OS/2 apps. I think I
  896. know OS/2 pretty well. Rich, where are you? Please help...
  897.  
  898. Kevin Hawkins
  899. PMSC onsite at Norwich Union in the UK
  900. email: kevin at munot dot demon dot co dot uk.
  901.  
  902. --- WtrGate+ v0.93.p7 sn 165
  903.  * Origin: Usenet: Organization (1:109/42)
  904.  
  905. +----------------------------------------------------------------------------+
  906.  
  907. From: pfitz@ican.net                                    10-Nov-99 06:30:14
  908.   To: All                                               10-Nov-99 05:30:18
  909. Subj: Re: SYS_DLLS and superclassing native controls
  910.  
  911. From: Peter Fitzsimons <pfitz@ican.net>
  912.  
  913. > I list my DLL in SYS_DLLS->LoadEachProcess (or whatever it's called).
  914. > The DLL loads and executes its initialisation. WinQueryClassInfo gets
  915. > TRUE for WC_ENTRYFIELD. WinRegisterClass for WC_ENTRYFIELD with
  916. > CS_PUBLIC gets FALSE. But after re-booting, any window with an entry
  917. > field traps. This tends to indicate that my wndproc is being called,
  918.  
  919. How are you defining your data segments?  ie:"single shared", or what?
  920.  
  921. If you are loading anything (like a pointer/icon/bmp) you have to do it
  922. for each app, which probably forces you do use an "initinstance multiple
  923. nonshared" dll. So keep your data segment size down, and try to compile
  924. /Rn.
  925.  
  926. I have code that subclasses the titlebar for every app with a sys_dll
  927. "load once" entry.  It installs a msg hook, that looks for WM_CREATE
  928. messages;  if the window is what I'm looking for, then I subclass it
  929. "live". I'm a resource freak and the thought of "loadperprocess" and
  930. "mutliple data" offended me at the time (1995, when I only had 24mb of
  931. memory I think :).
  932.  
  933. Anyway, you're welcome to the code if you like.
  934.  
  935. --- WtrGate+ v0.93.p7 sn 165
  936.  * Origin: Usenet: @Home Network Canada (1:109/42)
  937.  
  938. +----------------------------------------------------------------------------+
  939.  
  940. From: Vitus_Jensen@teaparty.fido.de                     10-Nov-99 01:42:28
  941.   To: All                                               10-Nov-99 10:29:14
  942. Subj: WSeb and LDGW and NDS
  943.  
  944. From: Vitus_Jensen@teaparty.fido.de (Vitus Jensen)
  945.  
  946. Hello Charles,
  947.  
  948. 08.11.99 18:18, Charles Christacopoulos wrote a message to All :
  949.  
  950.  CC> I would appreciate any pointers, tips, ideas (whatever) to the
  951.  CC> following.
  952.  
  953.  CC> We are primarily a Netware/Solaris house, apart from me being odd
  954.  CC> with OS/2. I run WSeB and Lotus Domino Go web server(s) to
  955.  CC> provide the www intranet at our institution.
  956.  
  957.  CC> Without gettting into any detail, LDGW can call an external
  958.  CC> program to validate users when they try to get  www "protected"
  959.  CC> files.  I would like to "one day" have such an external program
  960.  CC> that would actually validate users against Netware's NDS tree
  961.  CC> (thus users would in effect use the same ID and password for
  962.  CC> Netware and for viewing files on the www).
  963.  
  964.  CC> Where do I start looking for a solution?  
  965.  
  966. To write a program using the NDS for user validation you need the "Client SDK"
  967. for OS/2 from Novell.  When I was doing such things (over 4 years ago) it was
  968. sold, documentation only readable from WinOS/2.  There are a lot of 16 bit
  969. functions you may call but to decide which function is used for what purpose
  970. isn't simple.
  971.  
  972.  
  973.  CC> Will the LDAP kit that comes with WSeB allow me to do anything
  974.  CC> like it? Can it be done? Has anyone got it (we would be willing
  975.  CC> to pay :-) ?
  976.  
  977. If you can manage to synchronize the LAN Server domain with the NDS you would
  978. have a much simpler task: just call Net[32]UserValidate().
  979. The server (and requester?) package contains INF, header, lib and samples how
  980. to do this.  Look for x:\IBMLAN\NETSRC (don't remember the installation
  981. option,
  982. sorry).
  983.  
  984. C-x C-s
  985.     Vitus
  986.  
  987. --- WtrGate+ v0.93.p7 sn 165
  988.  * Origin: Usenet: Fido.DE domain gateway (Moving Bits e.V. / IN e.V
  989. (1:109/42)
  990.  
  991. +----------------------------------------------------------------------------+
  992.  
  993. From: mikefry@iafrica.nospam.com                        10-Nov-99 10:45:22
  994.   To: All                                               10-Nov-99 10:29:14
  995. Subj: XCPT_SPACE_ACCESS Violation in DOSCALL1
  996.  
  997. From: mikefry@iafrica.nospam.com (Mike Fry)
  998.  
  999. Could someone help me with this entry from the POPUPLOG.OS2 on a Warp 4,
  1000. FP12 machine?
  1001.  
  1002. Unfortunately, I didn't write the offending program (it's in 16-bit 
  1003. COBOL of all things), but I have written a lot of underlying routines 
  1004. (Watcom C) that live in DLLs, along with various service programs. All C
  1005. code is 32-bit. The DLLs used by the COBOL program have equivalent 
  1006. 16-bit and 32-bit entry points (Watcom is good for this sort of thunking
  1007. <g>).
  1008.  
  1009. 11-05-1999  14:30:29  SYS3171  PID 0029  TID 0001  Slot 0053
  1010. C:\DLRC\MCHOTB04.EXE
  1011. c0000005
  1012. 1bfa0184
  1013. P1=00000008  P2=00000134  P3=XXXXXXXX  P4=XXXXXXXX  
  1014. EAX=00000079  EBX=000047fc  ECX=0000001f  EDX=0000eb84
  1015. ESI=00002590  EDI=00002800  
  1016. DS=a447  DSACC=00f3  DSLIM=000047ff  
  1017. ES=a44f  ESACC=00f3  ESLIM=00001aef  
  1018. FS=150b  FSACC=00f3  FSLIM=00000030
  1019. GS=0000  GSACC=****  GSLIM=********
  1020. CS:EIP=dfd7:00000184  CSACC=00df  CSLIM=0000dc08
  1021. SS:ESP=0137:000009f2  SSACC=****  SSLIM=********
  1022. EBP=000009f2  FLG=00012202
  1023.  
  1024. DOSCALL1.DLL 0003:00000184
  1025.  
  1026. I don't really understand the SYS3171 - exception within exception. As 
  1027. far as I know, my DLLs don't use exception handlers apart from what the 
  1028. CRT installs. Is it possible to determine which routine in DOSCALL1.DLL 
  1029. this trap actually occurred in?
  1030.  
  1031. My suspicion is that this is some kind of application-caused memory 
  1032. leak. Examination of the C & COBOL source code shows that tiled memory 
  1033. objects are being allocated by DosAllocSharedMem in one of my service 
  1034. EXEs and passed to the COBOL program, via a queue, after doing a 
  1035. DosGiveSharedMem to give the COBOL program read/write permission. The 
  1036. service EXE then does a DosFreeMem.
  1037.  
  1038. At some stage on the COBOL side, an apparently unnecessary DosGetSeg 
  1039. (16-bit remember) is being done. I say unnecessary because the program 
  1040. already has read/write access to the object thru the DosGiveSharedMem 
  1041. call. I can only find a single DosFreeSeg in the COBOL code. Am I right 
  1042. in thinking that OS/2 is unable to 'physically' free the memory objects 
  1043. because of a non-zero reference count? And that over time, OS/2 will 
  1044. actually 'run out' of memory?
  1045.  
  1046. To me, this is a fairly straight-forward XCPT_ACCESS_VIOLATION. 
  1047. According to my toolkit headers, the P1 value indicates 
  1048. XCPT_SPACE_ACCESS and P2 the selector involved. If OS/2 has actually run
  1049. out of selectors because of the unnecessary DosGetSeg (missing 
  1050. DosFreeSeg), then I would have expected to find P1 to indicate 
  1051. XCPT_LIMIT_ACCESS. 
  1052.  
  1053. I can't find any explanation in my documentation of what these two 
  1054. access violation codes mean in real terms. Can anybody explain the 
  1055. difference between XCPT_SPACE_ACCESS and XCPT_LIMIT_ACCESS? Does my 
  1056. description of the memory object usage make sense in terms of the trap 
  1057. information that I have supplied?
  1058.  
  1059. Thanks for listening,
  1060. MIKE FRY
  1061. mailto:mikefry@iafrica.com
  1062.  
  1063. --- WtrGate+ v0.93.p7 sn 165
  1064.  * Origin: Usenet: UUNET Internet Africa (1:109/42)
  1065.  
  1066. +----------------------------------------------------------------------------+
  1067.  
  1068. From: yourself@127.0.0.1                                10-Nov-99 11:00:29
  1069.   To: All                                               10-Nov-99 10:29:15
  1070. Subj: Re: SYS_DLLS and superclassing native controls
  1071.  
  1072. From: yourself@127.0.0.1 (Rich Walsh)
  1073.  
  1074. On Tue, 9 Nov 1999 21:58:56, kh@no.spam.munot.demon.co.uk (Kevin) wrote:
  1075.  
  1076. > I have a massive PM application with hundreds and hundreds of entry
  1077. > fields. It is used on 21 inch montiors and users are complaining that
  1078. > they can't see the entry field cursor on the large screens.
  1079. > Subclassing entry fields is not an option in this environment. So I
  1080. > thought I could superclass WC_ENTRYFIELD. I have created a DLL with an
  1081. > initialisation routine that attempts to get the class info for
  1082. > WC_ENTRYFIELD, store the address of the window proc and register a
  1083. > CS_PUBLIC control called WC_ENTRYFIELD. The intention is that when it
  1084. > receives the focus it can call the original WC_ENTRYFIELD wnd proc and
  1085. > then create a new cursor that is more visible.
  1086. > I list my DLL in SYS_DLLS->LoadEachProcess (or whatever it's called).
  1087. > The DLL loads and executes its initialisation. WinQueryClassInfo gets
  1088. > TRUE for WC_ENTRYFIELD. WinRegisterClass for WC_ENTRYFIELD with
  1089. > CS_PUBLIC gets FALSE. But after re-booting, any window with an entry
  1090. > field traps. This tends to indicate that my wndproc is being called,
  1091. > even though I got FALSE on the register. I wonder if the address
  1092. > returned by WinQueryClassInfo is valid in all the other processes.
  1093. >
  1094. >I believe from a search on DEJA that Rich Walsh has done this kind of
  1095. >thing before. What I want to do is register my own wndproc for all
  1096. >WC_ENTRYFIELD controls created and create a different cursor every
  1097. >time an entry field gets the focus. What am I doing wrong?
  1098.  
  1099. Do you really want to modify every entryfield in the system or just the
  1100. ones in your app?  Either way, you'll have to deal with odd side-effects
  1101. your code may have on, say, read-only comboboxes (i.e. no visible cursor).
  1102.  
  1103. For a global replacement, the superclassing code in your DLL should only
  1104. be executed once:  the first time it's called, when it's operating in the
  1105. shell process.  You shouldn't have to change any flags.  You can store
  1106. the original PFN in global memory because it's valid in all PM processes.
  1107.  
  1108. The traps you're getting now probably occur because the DLL's instance
  1109. data hasn't been initialized properly (are you using INITINSTANCE and
  1110. DATA MULTIPLE NONSHARED ?).  Since your needs are so minimal, you may
  1111. not even need a per-process data segment except to satisfy your compiler.
  1112. If so, try shedding the runtime environment - or even the runtime itself
  1113. (YMMV).
  1114.  
  1115. BTW...  are you aware that the function you've exported as ordinal 1
  1116. gets called every time your dll is loaded into a new process?
  1117.  
  1118. For a process-specific solution, forget most everything I just said :-)
  1119. AFAIK, you can't reregister a CS_PUBLIC class for a particular process.
  1120.  
  1121. Instead, you can try this strategy (one of several that come to mind):
  1122. identify whether the message that causes an e/f to create its cursor
  1123. is posted or sent.  Then use either an InputHook or a SendMsgHook on
  1124. your *own* message queue (HMQ_CURRENT) to intercept it.  This will
  1125. let you put the code in your exe, avoid sub- or superclassing, and
  1126. generally limit the damage.  (IMHO, this is a good solution when
  1127. you're messing with your own app, and a lousy solution when you're
  1128. messing other people's.)
  1129.  
  1130.  
  1131.    == == almost usable email address:  rlwalshATpacket.net == ==
  1132. ___________________________________________________________________
  1133.  
  1134.                 |             - DragText v3.1 -
  1135. Rich Walsh      |  A Distinctly Different Desktop Enhancement
  1136. Ft Myers, FL    |  New!  Pickup & Drop for text, and more...
  1137.                 |  http://www.usacomputers.net/personal/rlwalsh/
  1138. ___________________________________________________________________
  1139.  
  1140. --- WtrGate+ v0.93.p7 sn 165
  1141.  * Origin: Usenet: http://extra.newsguy.com (1:109/42)
  1142.  
  1143. +----------------------------------------------------------------------------+
  1144.  
  1145. From: kh@no.spam.munot.demon.co.uk                      10-Nov-99 21:28:20
  1146.   To: All                                               10-Nov-99 20:03:07
  1147. Subj: Re: SYS_DLLS and superclassing native controls
  1148.  
  1149. From: kh@no.spam.munot.demon.co.uk (Kevin)
  1150.  
  1151. On 10 Nov 1999 11:00:58 GMT, yourself@127.0.0.1 (Rich Walsh) wrote:
  1152.  
  1153. >On Tue, 9 Nov 1999 21:58:56, kh@no.spam.munot.demon.co.uk (Kevin) wrote:
  1154. >
  1155. >> I have a massive PM application with hundreds and hundreds of entry
  1156. >> fields. It is used on 21 inch montiors and users are complaining that
  1157. >> they can't see the entry field cursor on the large screens.
  1158. >> Subclassing entry fields is not an option in this environment. So I
  1159. >> thought I could superclass WC_ENTRYFIELD. I have created a DLL with an
  1160. >> initialisation routine that attempts to get the class info for
  1161. >> WC_ENTRYFIELD, store the address of the window proc and register a
  1162. >> CS_PUBLIC control called WC_ENTRYFIELD. The intention is that when it
  1163. >> receives the focus it can call the original WC_ENTRYFIELD wnd proc and
  1164. >> then create a new cursor that is more visible.
  1165. >> 
  1166. >> I list my DLL in SYS_DLLS->LoadEachProcess (or whatever it's called).
  1167. >> The DLL loads and executes its initialisation. WinQueryClassInfo gets
  1168. >> TRUE for WC_ENTRYFIELD. WinRegisterClass for WC_ENTRYFIELD with
  1169. >> CS_PUBLIC gets FALSE. But after re-booting, any window with an entry
  1170. >> field traps. This tends to indicate that my wndproc is being called,
  1171. >> even though I got FALSE on the register. I wonder if the address
  1172. >> returned by WinQueryClassInfo is valid in all the other processes.
  1173. >>
  1174. >>I believe from a search on DEJA that Rich Walsh has done this kind of
  1175. >>thing before. What I want to do is register my own wndproc for all
  1176. >>WC_ENTRYFIELD controls created and create a different cursor every
  1177. >>time an entry field gets the focus. What am I doing wrong?
  1178. >
  1179. >Do you really want to modify every entryfield in the system or just the
  1180. >ones in your app?  Either way, you'll have to deal with odd side-effects
  1181. >your code may have on, say, read-only comboboxes (i.e. no visible cursor).
  1182.  
  1183. Users would be happy with every entryfield in the system. This is the
  1184. only app being used, so I don't have to worry about other people's
  1185. apps. Didn't thing about the comboboxes, but their entryfields are
  1186. easy enough to distinguish from ordinary ones.
  1187.  
  1188. >For a global replacement, the superclassing code in your DLL should only
  1189. >be executed once:  the first time it's called, when it's operating in the
  1190. >shell process.  You shouldn't have to change any flags.  You can store
  1191. >the original PFN in global memory because it's valid in all PM processes.
  1192.  
  1193. Thanks for clearing that up.
  1194.  
  1195. The WinRegisterClass call returns FALSE when I try to register with
  1196. all the parameters from WinGetClassInfo the same except for PFNWP.
  1197. Haven't done WinGetLastError here yet as I was trying Peter
  1198. Fitzsimmons' idea today. Don't know if I believe the return value
  1199. though because I was getting traps on anything that created an
  1200. entryfield.
  1201.  
  1202. >The traps you're getting now probably occur because the DLL's instance
  1203. >data hasn't been initialized properly (are you using INITINSTANCE and
  1204. >DATA MULTIPLE NONSHARED ?).  Since your needs are so minimal, you may
  1205. >not even need a per-process data segment except to satisfy your compiler.
  1206. >If so, try shedding the runtime environment - or even the runtime itself
  1207. >(YMMV).
  1208.  
  1209. I had INITINSTANCE and DATA MULTIPLE NONSHARED in all cases.
  1210. Currently using the runtime for fprintf for debugging, but will
  1211. probably not use it in the end.
  1212.  
  1213. >BTW...  are you aware that the function you've exported as ordinal 1
  1214. >gets called every time your dll is loaded into a new process?
  1215. Hmmm. I am exporting by names, but the first export is my
  1216. initialisation function. This function does get called on load as my
  1217. fprintf shows.
  1218.  
  1219. >For a process-specific solution, forget most everything I just said :-)
  1220. >AFAIK, you can't reregister a CS_PUBLIC class for a particular process.
  1221.  
  1222. That is correct according to the documentation.
  1223.  
  1224. >Instead, you can try this strategy (one of several that come to mind):
  1225. >identify whether the message that causes an e/f to create its cursor
  1226. >is posted or sent.  Then use either an InputHook or a SendMsgHook on
  1227. >your *own* message queue (HMQ_CURRENT) to intercept it.  This will
  1228. >let you put the code in your exe, avoid sub- or superclassing, and
  1229. >generally limit the damage.  (IMHO, this is a good solution when
  1230. >you're messing with your own app, and a lousy solution when you're
  1231. >messing other people's.)
  1232.  
  1233. Have been playing with hooks today. Wanted to used Peter's suggestion
  1234. to use a hook to catch all WM_CREATE messages and subclass
  1235. WC_ENTRYFIELDS. Have tried all the 'message' type hooks, but so far
  1236. none seem to get WM_CREATE messages. Hoping Peter's code will help
  1237. here.
  1238.  
  1239. The private hook is interesting. The entryfield has to create/destroy
  1240. the cursor on one of the activate/focuschange type messages. I will
  1241. look into that more tomorrow.
  1242.  
  1243. Thanks,
  1244. Kevin
  1245.  
  1246. --- WtrGate+ v0.93.p7 sn 165
  1247.  * Origin: Usenet: Organization (1:109/42)
  1248.  
  1249. +----------------------------------------------------------------------------+
  1250.  
  1251. From: blaschke@us.ibm.com                               10-Nov-99 14:15:02
  1252.   To: All                                               10-Nov-99 20:03:07
  1253. Subj: Re: XCPT_SPACE_ACCESS Violation in DOSCALL1
  1254.  
  1255. From: Dave Blaschke <blaschke@us.ibm.com>
  1256.  
  1257.  
  1258. Mike Fry wrote:
  1259.  
  1260. Ahh, Mike Fry, the man who asked me to add yet another executable to the
  1261. OS2TRACE package.  Because it's you I'll try and answer correctly for a
  1262. change ;-)
  1263.  
  1264. > Could someone help me with this entry from the POPUPLOG.OS2 on a Warp 4,
  1265. > FP12 machine?
  1266. >
  1267. > Unfortunately, I didn't write the offending program (it's in 16-bit
  1268. > COBOL of all things), but I have written a lot of underlying routines
  1269. > (Watcom C) that live in DLLs, along with various service programs. All C
  1270. > code is 32-bit. The DLLs used by the COBOL program have equivalent
  1271. > 16-bit and 32-bit entry points (Watcom is good for this sort of thunking
  1272. > <g>).
  1273. >
  1274. > 11-05-1999  14:30:29  SYS3171  PID 0029  TID 0001  Slot 0053
  1275. > C:\DLRC\MCHOTB04.EXE
  1276. > c0000005
  1277. > 1bfa0184
  1278. > P1=00000008  P2=00000134  P3=XXXXXXXX  P4=XXXXXXXX
  1279. > EAX=00000079  EBX=000047fc  ECX=0000001f  EDX=0000eb84
  1280. > ESI=00002590  EDI=00002800
  1281. > DS=a447  DSACC=00f3  DSLIM=000047ff
  1282. > ES=a44f  ESACC=00f3  ESLIM=00001aef
  1283. > FS=150b  FSACC=00f3  FSLIM=00000030
  1284. > GS=0000  GSACC=****  GSLIM=********
  1285. > CS:EIP=dfd7:00000184  CSACC=00df  CSLIM=0000dc08
  1286. > SS:ESP=0137:000009f2  SSACC=****  SSLIM=********
  1287. > EBP=000009f2  FLG=00012202
  1288. >
  1289. > DOSCALL1.DLL 0003:00000184
  1290. >
  1291. > I don't really understand the SYS3171 - exception within exception. As
  1292. > far as I know, my DLLs don't use exception handlers apart from what the
  1293. > CRT installs. Is it possible to determine which routine in DOSCALL1.DLL
  1294. > this trap actually occurred in?
  1295.  
  1296. SYS3171 simply means that a thread did not have enough stack space available
  1297. to dispatch an exception.  When an exception occurs, the OS/2 kernel
  1298. attempts to "push" an exception report record and context record, along with
  1299. some other goodies,  on top of the user's stack for the ring 3 exception
  1300. dispatcher: if this fails, a SYS3171 will result.  This does not necessarily
  1301. mean that an exception occurred within a handler.
  1302.  
  1303. As for the routine, you can't really figure it out without the DOSCALL1.MAP
  1304. file or some debug tools that can extract the info from DOSCALL1.SYM.  In
  1305. this case, DOSCALL1 object 3 offset 184 is within the DOSSEMWAIT API on
  1306. FP12.
  1307.  
  1308. >
  1309. >
  1310. > My suspicion is that this is some kind of application-caused memory
  1311. > leak. Examination of the C & COBOL source code shows that tiled memory
  1312. > objects are being allocated by DosAllocSharedMem in one of my service
  1313. > EXEs and passed to the COBOL program, via a queue, after doing a
  1314. > DosGiveSharedMem to give the COBOL program read/write permission. The
  1315. > service EXE then does a DosFreeMem.
  1316. >
  1317. > At some stage on the COBOL side, an apparently unnecessary DosGetSeg
  1318. > (16-bit remember) is being done. I say unnecessary because the program
  1319. > already has read/write access to the object thru the DosGiveSharedMem
  1320. > call. I can only find a single DosFreeSeg in the COBOL code. Am I right
  1321. > in thinking that OS/2 is unable to 'physically' free the memory objects
  1322. > because of a non-zero reference count? And that over time, OS/2 will
  1323. > actually 'run out' of memory?
  1324. >
  1325. > To me, this is a fairly straight-forward XCPT_ACCESS_VIOLATION.
  1326. > According to my toolkit headers, the P1 value indicates
  1327. > XCPT_SPACE_ACCESS and P2 the selector involved. If OS/2 has actually run
  1328. > out of selectors because of the unnecessary DosGetSeg (missing
  1329. > DosFreeSeg), then I would have expected to find P1 to indicate
  1330. > XCPT_LIMIT_ACCESS.
  1331. >
  1332. > I can't find any explanation in my documentation of what these two
  1333. > access violation codes mean in real terms. Can anybody explain the
  1334. > difference between XCPT_SPACE_ACCESS and XCPT_LIMIT_ACCESS? Does my
  1335. > description of the memory object usage make sense in terms of the trap
  1336. > information that I have supplied?
  1337.  
  1338. Both indicate that a trap C occurred.  If P1 == XCPT_SPACE_ACCESS, then the
  1339. trap C  occurred with a non-zero error code and P2 = this error code.  If P1
  1340. == XCPT_LIMIT_ACCESS, then the trap C occurred with a zero error code and P2
  1341. = XCPT_DATA_UNKNOWN.  The following is from the Intel programmer's
  1342. reference, where stack fault refers to trap C:
  1343.  
  1344. <CITE>
  1345. A stack fault is generated under two conditions:
  1346.  
  1347. * As a result of a limit violation in any operation which refers to the SS
  1348. register.  This includes stack-oriented instructions such as POP, PUSH,
  1349. ENTER, and LEAVE, as well as other memory
  1350. references which implicitly use the stack (for example, MOV AX,[BP+6]).  The
  1351. ENTER instruction generates this exception when there is too little space
  1352. for allocating local variables.
  1353.  
  1354. * When attempting to load the SS register with a descriptor which is marked
  1355. segment-not-present but is otherwise valid.  This can occur in a task
  1356. switch, a CALL instruction ro a different privilege level, a return to a
  1357. different privilege level, an LSS instruction, or a MOV or POP instruction
  1358. to the SS register.
  1359.  
  1360. When the processor detects a stack exception, it pushes an error code onto
  1361. the stack of the exception handler.  If the exception is due to a
  1362. not-present stack segment or to overflow of the new stack during an
  1363. interlevel CALL, the error code contains a selector to the segment which
  1364. caused the exception (the exception handler can test the present bit in the
  1365. descriptor to determine which exception occurred); otherwise, the error code
  1366. is 0.
  1367. </CITE>
  1368.  
  1369. >
  1370. >
  1371. > Thanks for listening,
  1372. > MIKE FRY
  1373. > mailto:mikefry@iafrica.com
  1374.  
  1375.  
  1376.  
  1377. --- WtrGate+ v0.93.p7 sn 165
  1378.  * Origin: Usenet: IBM Austin (1:109/42)
  1379.  
  1380. +----------------------------------------------------------------------------+
  1381.  
  1382. From: vitus.jensen@fto.de                               11-Nov-99 01:47:16
  1383.   To: All                                               10-Nov-99 20:03:07
  1384. Subj: WSeb and LDGW and NDS
  1385.  
  1386. From: vitus.jensen@fto.de
  1387.  
  1388. From: Vitus_Jensen@teaparty.fido.de (Vitus Jensen)
  1389.  
  1390. Hello Charles,
  1391.  
  1392. 08.11.99 18:18, Charles Christacopoulos wrote a message to All :
  1393.  
  1394.  CC> I would appreciate any pointers, tips, ideas (whatever) to the
  1395.  CC> following.
  1396.  
  1397.  CC> We are primarily a Netware/Solaris house, apart from me being
  1398.  odd
  1399.  CC> with OS/2. I run WSeB and Lotus Domino Go web server(s) to
  1400.  CC> provide the www intranet at our institution.
  1401.  
  1402.  CC> Without gettting into any detail, LDGW can call an external
  1403.  CC> program to validate users when they try to get  www "protected"
  1404.  CC> files.  I would like to "one day" have such an external program
  1405.  CC> that would actually validate users against Netware's NDS tree
  1406.  CC> (thus users would in effect use the same ID and password for
  1407.  CC> Netware and for viewing files on the www).
  1408.  
  1409.  CC> Where do I start looking for a solution?  
  1410.  
  1411. To write a program using the NDS for user validation you need the
  1412.  "Client SDK"
  1413. for OS/2 from Novell.  When I was doing such things (over 4 years
  1414.  ago) it was
  1415. sold, documentation only readable from WinOS/2.  There are a lot of
  1416.  16 bit
  1417. functions you may call but to decide which function is used for what
  1418.  purpose
  1419. isn't simple.
  1420.  
  1421.  
  1422.  CC> Will the LDAP kit that comes with WSeB allow me to do anything
  1423.  CC> like it? Can it be done? Has anyone got it (we would be willing
  1424.  CC> to pay :-) ?
  1425.  
  1426. If you can manage to synchronize the LAN Server domain with the NDS
  1427.  you would
  1428. have a much simpler task: just call Net[32]UserValidate().
  1429. The server (and requester?) package contains INF, header, lib and
  1430.  samples how
  1431. to do this.  Look for x:\IBMLAN\NETSRC (don't remember the
  1432.  installation option,
  1433. sorry).
  1434.  
  1435. C-x C-s
  1436.     Vitus
  1437.  
  1438.  
  1439. --- WtrGate+ v0.93.p7 sn 165
  1440.  * Origin: Usenet: Skynet Titan (1:109/42)
  1441.  
  1442. +----------------------------------------------------------------------------+
  1443.  
  1444. From: mike.fry@fto.de                                   11-Nov-99 01:47:17
  1445.   To: All                                               10-Nov-99 20:03:07
  1446. Subj: XCPT_SPACE_ACCESS Violation in DOSCALL1
  1447.  
  1448. From: mike.fry@fto.de
  1449.  
  1450. From: mikefry@iafrica.nospam.com (Mike Fry)
  1451.  
  1452. Could someone help me with this entry from the POPUPLOG.OS2 on a Warp
  1453.  4,
  1454. FP12 machine?
  1455.  
  1456. Unfortunately, I didn't write the offending program (it's in 16-bit 
  1457. COBOL of all things), but I have written a lot of underlying routines
  1458.  
  1459. (Watcom C) that live in DLLs, along with various service programs.
  1460.  All C
  1461. code is 32-bit. The DLLs used by the COBOL program have equivalent 
  1462. 16-bit and 32-bit entry points (Watcom is good for this sort of
  1463.  thunking
  1464. <g>).
  1465.  
  1466. 11-05-1999  14:30:29  SYS3171  PID 0029  TID 0001  Slot 0053
  1467. C:\DLRC\MCHOTB04.EXE
  1468. c0000005
  1469. 1bfa0184
  1470. P1=00000008  P2=00000134  P3=XXXXXXXX  P4=XXXXXXXX  
  1471. EAX=00000079  EBX=000047fc  ECX=0000001f  EDX=0000eb84
  1472. ESI=00002590  EDI=00002800  
  1473. DS=a447  DSACC=00f3  DSLIM=000047ff  
  1474. ES=a44f  ESACC=00f3  ESLIM=00001aef  
  1475. FS=150b  FSACC=00f3  FSLIM=00000030
  1476. GS=0000  GSACC=****  GSLIM=********
  1477. CS:EIP=dfd7:00000184  CSACC=00df  CSLIM=0000dc08
  1478. SS:ESP=0137:000009f2  SSACC=****  SSLIM=********
  1479. EBP=000009f2  FLG=00012202
  1480.  
  1481. DOSCALL1.DLL 0003:00000184
  1482.  
  1483. I don't really understand the SYS3171 - exception within exception.
  1484.  As 
  1485. far as I know, my DLLs don't use exception handlers apart from what
  1486.  the 
  1487. CRT installs. Is it possible to determine which routine in
  1488.  DOSCALL1.DLL 
  1489. this trap actually occurred in?
  1490.  
  1491. My suspicion is that this is some kind of application-caused memory 
  1492. leak. Examination of the C & COBOL source code shows that tiled
  1493.  memory 
  1494. objects are being allocated by DosAllocSharedMem in one of my service
  1495.  
  1496. EXEs and passed to the COBOL program, via a queue, after doing a 
  1497. DosGiveSharedMem to give the COBOL program read/write permission. The
  1498.  
  1499. service EXE then does a DosFreeMem.
  1500.  
  1501. At some stage on the COBOL side, an apparently unnecessary DosGetSeg 
  1502. (16-bit remember) is being done. I say unnecessary because the
  1503.  program 
  1504. already has read/write access to the object thru the DosGiveSharedMem
  1505.  
  1506. call. I can only find a single DosFreeSeg in the COBOL code. Am I
  1507.  right 
  1508. in thinking that OS/2 is unable to 'physically' free the memory
  1509.  objects 
  1510. because of a non-zero reference count? And that over time, OS/2 will 
  1511. actually 'run out' of memory?
  1512.  
  1513. To me, this is a fairly straight-forward XCPT_ACCESS_VIOLATION. 
  1514. According to my toolkit headers, the P1 value indicates 
  1515. XCPT_SPACE_ACCESS and P2 the selector involved. If OS/2 has actually
  1516.  run
  1517. out of selectors because of the unnecessary DosGetSeg (missing 
  1518. DosFreeSeg), then I would have expected to find P1 to indicate 
  1519. XCPT_LIMIT_ACCESS. 
  1520.  
  1521. I can't find any explanation in my documentation of what these two 
  1522. access violation codes mean in real terms. Can anybody explain the 
  1523. difference between XCPT_SPACE_ACCESS and XCPT_LIMIT_ACCESS? Does my 
  1524. description of the memory object usage make sense in terms of the
  1525.  trap 
  1526. information that I have supplied?
  1527.  
  1528. Thanks for listening,
  1529. MIKE FRY
  1530. mailto:mikefry@iafrica.com
  1531.  
  1532.  
  1533.  
  1534. --- WtrGate+ v0.93.p7 sn 165
  1535.  * Origin: Usenet: Skynet Titan (1:109/42)
  1536.  
  1537. +----------------------------------------------------------------------------+
  1538.  
  1539. From: rich.walsh@fto.de                                 11-Nov-99 01:47:17
  1540.   To: All                                               10-Nov-99 20:03:07
  1541. Subj: Re: SYS_DLLS and superclassing native controls
  1542.  
  1543. From: rich.walsh@fto.de
  1544.  
  1545. From: yourself@127.0.0.1 (Rich Walsh)
  1546.  
  1547. On Tue, 9 Nov 1999 21:58:56, kh@no.spam.munot.demon.co.uk (Kevin)
  1548.  wrote:
  1549.  
  1550. > I have a massive PM application with hundreds and hundreds of entry
  1551. > fields. It is used on 21 inch montiors and users are complaining
  1552.  that
  1553. > they can't see the entry field cursor on the large screens.
  1554. > Subclassing entry fields is not an option in this environment. So I
  1555. > thought I could superclass WC_ENTRYFIELD. I have created a DLL with
  1556.  an
  1557. > initialisation routine that attempts to get the class info for
  1558. > WC_ENTRYFIELD, store the address of the window proc and register a
  1559. > CS_PUBLIC control called WC_ENTRYFIELD. The intention is that when
  1560.  it
  1561. > receives the focus it can call the original WC_ENTRYFIELD wnd proc
  1562.  and
  1563. > then create a new cursor that is more visible.
  1564. > I list my DLL in SYS_DLLS->LoadEachProcess (or whatever it's
  1565.  called).
  1566. > The DLL loads and executes its initialisation. WinQueryClassInfo
  1567.  gets
  1568. > TRUE for WC_ENTRYFIELD. WinRegisterClass for WC_ENTRYFIELD with
  1569. > CS_PUBLIC gets FALSE. But after re-booting, any window with an
  1570.  entry
  1571. > field traps. This tends to indicate that my wndproc is being
  1572.  called,
  1573. > even though I got FALSE on the register. I wonder if the address
  1574. > returned by WinQueryClassInfo is valid in all the other processes.
  1575. >
  1576. >I believe from a search on DEJA that Rich Walsh has done this kind
  1577.  of
  1578. >thing before. What I want to do is register my own wndproc for all
  1579. >WC_ENTRYFIELD controls created and create a different cursor every
  1580. >time an entry field gets the focus. What am I doing wrong?
  1581.  
  1582. Do you really want to modify every entryfield in the system or just
  1583.  the
  1584. ones in your app?  Either way, you'll have to deal with odd
  1585.  side-effects
  1586. your code may have on, say, read-only comboboxes (i.e. no visible
  1587.  cursor).
  1588.  
  1589. For a global replacement, the superclassing code in your DLL should
  1590.  only
  1591. be executed once:  the first time it's called, when it's operating in
  1592.  the
  1593. shell process.  You shouldn't have to change any flags.  You can
  1594.  store
  1595. the original PFN in global memory because it's valid in all PM
  1596.  processes.
  1597.  
  1598. The traps you're getting now probably occur because the DLL's
  1599.  instance
  1600. data hasn't been initialized properly (are you using INITINSTANCE and
  1601. DATA MULTIPLE NONSHARED ?).  Since your needs are so minimal, you may
  1602. not even need a per-process data segment except to satisfy your
  1603.  compiler.
  1604. If so, try shedding the runtime environment - or even the runtime
  1605.  itself
  1606. (YMMV).
  1607.  
  1608. BTW...  are you aware that the function you've exported as ordinal 1
  1609. gets called every time your dll is loaded into a new process?
  1610.  
  1611. For a process-specific solution, forget most everything I just said
  1612.  :-)
  1613. AFAIK, you can't reregister a CS_PUBLIC class for a particular
  1614.  process.
  1615.  
  1616. Instead, you can try this strategy (one of several that come to
  1617.  mind):
  1618. identify whether the message that causes an e/f to create its cursor
  1619. is posted or sent.  Then use either an InputHook or a SendMsgHook on
  1620. your *own* message queue (HMQ_CURRENT) to intercept it.  This will
  1621. let you put the code in your exe, avoid sub- or superclassing, and
  1622. generally limit the damage.  (IMHO, this is a good solution when
  1623. you're messing with your own app, and a lousy solution when you're
  1624. messing other people's.)
  1625.  
  1626.  
  1627.    == == almost usable email address:  rlwalshATpacket.net == ==
  1628. ___________________________________________________________________
  1629.  
  1630.                 |             - DragText v3.1 -
  1631. Rich Walsh      |  A Distinctly Different Desktop Enhancement
  1632. Ft Myers, FL    |  New!  Pickup & Drop for text, and more...
  1633.                 |  http://www.usacomputers.net/personal/rlwalsh/
  1634. ___________________________________________________________________
  1635.  
  1636.  
  1637.  
  1638. --- WtrGate+ v0.93.p7 sn 165
  1639.  * Origin: Usenet: Skynet Titan (1:109/42)
  1640.  
  1641. +----------------------------------------------------------------------------+
  1642.  
  1643. From: crowsort@fto.de                                   11-Nov-99 01:47:17
  1644.   To: All                                               10-Nov-99 20:03:07
  1645. Subj: USE or SPY any distant PC via LAN/INTERNET
  1646.  
  1647. From: crowsort@fto.de
  1648.  
  1649. From: "Crowsort" <crowsort@universe.com>
  1650.  
  1651. USE or SPY any distant PC via LAN/INTERNET
  1652.  
  1653. How YOU can Hack Windows 95-98-NT... in seconds!
  1654. And use or spy any PC via a LAN or the Internet... as if you were
  1655.  there!
  1656.  
  1657. Platforms concerned:
  1658. --------------------
  1659. => Windows 95/98
  1660. => Windows NT Workstation/Server 3.5, 3.51 and 4.0
  1661. => Windows 2000
  1662.  
  1663. Whether you are a rookie or a seasoned hacker, there are times where
  1664. you want to do something RAPIDLY.
  1665.  
  1666. Some of us worked a lot to enhance password cracking but we have to
  1667. recognize that if passwords have been carefully chosen, it still
  1668.  takes a
  1669. lot of TIME.
  1670.  
  1671. Others are using well-known security holes in NT but we also have to
  1672. recognize that the ways to use those security breaches are not easy
  1673. and it also takes TIME to understand and to implement them.
  1674.  
  1675. There is a way to get all the passwords of *any* version of Windows
  1676. INSTANTLY. There is a way to control a distant machine 'as if you
  1677.  were
  1678. there'.
  1679.  
  1680. Netbus and BO2K were good attempts, I used them for months, but
  1681.  despite of
  1682. what their authors said, using it every day is difficult and
  1683.  frustrating
  1684. enough to
  1685. disgust lazy guys like me... the fact that I cannot see the distant
  1686.  screen
  1687. in
  1688. real-time is really frustrating!
  1689.  
  1690. A friend demonstrated me RA.
  1691.  
  1692. RA (Remote-Anything) is THE solution you were looking for: it shows
  1693.  in
  1694. real-time the distant desktop (like PC-Anywhere and other MB-based
  1695. commercial products) BUT the server (the program you install on the
  1696.  PC
  1697. you want to control) is **80 KB** long...
  1698.  
  1699. You can install it remotely by using the buffer overflows of Outlook
  1700.  Express
  1701. or IE4 or simply by sending it as an Email attachment!
  1702.  
  1703. Better than that: once installed, it does not show in the Task-List,
  1704.  can't
  1705. be discovered or killed with CTRL-ALT-DEL!
  1706.  
  1707. Once you poisoned PCs on a LAN, no need to remember which ones: RA
  1708. is able to find automatically available PCs and displays IP addresses
  1709.  and
  1710. DNS Names! Just click on one of them to be connected!
  1711.  
  1712. And it is so fast that you can see any animation playing on the
  1713.  distant PC
  1714. in real-time!
  1715.  
  1716. All this from one unique tool... Damned, I got it!
  1717. ____________________________________________________
  1718.  
  1719. Here are some of the functions I picked-up from RA's Doc:
  1720.  
  1721. o Connect to a new desktop: opens the Connection Dialog Box which
  1722.  allows you
  1723. to open a
  1724.   new window on a new Desktop (you can watch multiple Desktops at a
  1725.  time).
  1726.  
  1727. o Monitor only: will toggle the passive-monitoring and active-control
  1728.  modes
  1729. (active
  1730.   monitoring allows you to type keys and move the mouse on the
  1731.  distant PC
  1732. while passive
  1733.   monitoring will only allow you to watch only).
  1734.  
  1735. o Full screen: will enter the full-screen mode. You can exit it by
  1736.  typing
  1737. CTRL+ESC and
  1738.   then right-clicking the Master's task bar icon to come back to the
  1739. windowed mode.
  1740.  
  1741. o Remove wallpaper on distant desktop: is useful to minimize the
  1742.  amount of
  1743. data sent
  1744.   over the network. It always speedups a connection.
  1745.  
  1746. o Start Screen Saver: is useful when you want to leave the desktop
  1747.  with a
  1748. screensaver
  1749.   running: when Remote-Anything moves the mouse cursor on a Slave
  1750.  desktop,
  1751. it stops
  1752.   the screensaver if it was running. With this option, you can
  1753.  immediately
  1754. run the
  1755.   screensaver (use this option with the keyboard shortcut to avoid
  1756.  moving
  1757. the mouse
  1758.   in active mode or switch to passive monitoring to activate this
  1759.  menu
  1760. option with
  1761.   the mouse). If the screensaver is password protected, this is a way
  1762.  to
  1763. lock the
  1764.   distant PC.
  1765.  
  1766. o Play a Sound: will make a sound being played on the distant PC.
  1767.  Usually it
  1768. is
  1769.   'ding.wav' but it can be any sound the distant PC registered as the
  1770. default sound.
  1771.  
  1772. o Send commands: will display a Dialog Box equivalent to the
  1773.  Start/Run
  1774. command of
  1775.   Windows 95.
  1776.  
  1777. o Get Passwords of distant PC: get all the network passwords, the
  1778. screensaver password,
  1779.   and the Applications passwords Windows has been asked to remember.
  1780.  
  1781. o Lockup distant PC: Hangs the distant PC which will need to be
  1782.  restarted
  1783. manually.
  1784.  
  1785. o Reboot distant PC: will immediately send the order to reboot to the
  1786. distant PC, this
  1787.   will disconnect you from this Desktop but you can reconnect once
  1788.  the
  1789. distant Windows
  1790.   session is active again.
  1791.  
  1792. o Shut Down distant PC: will shut down the distant PC if it supports
  1793.  shut
  1794. down. You
  1795.   will be disconnected.
  1796. _____________________________________________________
  1797.  
  1798. o How does it work?
  1799.   -----------------
  1800. It is as simple as using Windows 98 itself: move the mouse, type
  1801.  keys, the
  1802. distant PC will do everything you want! It works over LANs and the
  1803.  Internet!
  1804.  
  1805. o Where can I get it?
  1806.   -------------------
  1807. At the moment, you can get it from:
  1808.  
  1809. http://www.twd-industries.com
  1810.  
  1811. You'll have to pay a small fee to the authors to get RA. I can tell
  1812.  you that
  1813. it's worth the price: I simply did things I would never have been
  1814.  able to
  1815. do without it.
  1816. If you have access to a local network, RA will allow you to do
  1817.  whatever
  1818. you want! This tool is so easy to use that every hacker will want it.
  1819.  
  1820. The more you wait, the less what you can do with it will remain a
  1821.  secret!
  1822. But as time goes, I guess it will be available from a lot of other
  1823.  places.
  1824.  
  1825. Have fun!
  1826.  
  1827.    ººººººº
  1828.   ºº ººº ºº
  1829. º   ~   ~   º
  1830. @<ñ>"<ñ>@
  1831.   (       ~      )
  1832.     \  'v=v'   /    The Crowsort is back.
  1833.      |\____/|
  1834. _____________________________________________________
  1835.  
  1836.  
  1837.  
  1838.  
  1839.  
  1840.  
  1841.  
  1842.  
  1843. --- WtrGate+ v0.93.p7 sn 165
  1844.  * Origin: Usenet: Skynet Titan (1:109/42)
  1845.  
  1846. +----------------------------------------------------------------------------+
  1847.  
  1848. From: peter.fitzsimons@fto.de                           11-Nov-99 01:47:17
  1849.   To: All                                               10-Nov-99 20:03:07
  1850. Subj: Re: SYS_DLLS and superclassing native controls
  1851.  
  1852. From: peter.fitzsimons@fto.de
  1853.  
  1854. From: Peter Fitzsimons <pfitz@ican.net>
  1855.  
  1856. > I list my DLL in SYS_DLLS->LoadEachProcess (or whatever it's
  1857.  called).
  1858. > The DLL loads and executes its initialisation. WinQueryClassInfo
  1859.  gets
  1860. > TRUE for WC_ENTRYFIELD. WinRegisterClass for WC_ENTRYFIELD with
  1861. > CS_PUBLIC gets FALSE. But after re-booting, any window with an
  1862.  entry
  1863. > field traps. This tends to indicate that my wndproc is being
  1864.  called,
  1865.  
  1866. How are you defining your data segments?  ie:"single shared", or
  1867.  what?
  1868.  
  1869. If you are loading anything (like a pointer/icon/bmp) you have to do
  1870.  it
  1871. for each app, which probably forces you do use an "initinstance
  1872.  multiple
  1873. nonshared" dll. So keep your data segment size down, and try to
  1874.  compile
  1875. /Rn.
  1876.  
  1877. I have code that subclasses the titlebar for every app with a sys_dll
  1878. "load once" entry.  It installs a msg hook, that looks for WM_CREATE
  1879. messages;  if the window is what I'm looking for, then I subclass it
  1880. "live". I'm a resource freak and the thought of "loadperprocess" and
  1881. "mutliple data" offended me at the time (1995, when I only had 24mb
  1882.  of
  1883. memory I think :).
  1884.  
  1885. Anyway, you're welcome to the code if you like.
  1886.  
  1887.  
  1888. --- WtrGate+ v0.93.p7 sn 165
  1889.  * Origin: Usenet: Skynet Titan (1:109/42)
  1890.  
  1891. +----------------------------------------------------------------------------+
  1892.  
  1893. From: ariek@attglobal3.141592653589793...               10-Nov-99 23:24:17
  1894.   To: All                                               10-Nov-99 21:35:27
  1895. Subj: Re: VAC++ debugger storage monitor: how to search for specific data?
  1896.  
  1897. Message sender: ariek@attglobal3.14159265358979323846.net
  1898.  
  1899. From: ariek@attglobal3.14159265358979323846.net (Arie Kazachin)
  1900.  
  1901. In message <38285CE8.399C@attglobal.net> - Tue, 09 Nov 1999 12:42:01
  1902. -0500Jerry Stuckle <jstucklex@attglobal.net> writes:
  1903. >
  1904. >Arie,
  1905. >
  1906. >Sorry, you can't search for specific data - I assume part of the reason
  1907. >could be that memory is not necessarily contiguous in OS/2, even with
  1908. >virtual addresses.
  1909. >
  1910. >A trick I've used quite often is to set a pointer to the data I want to
  1911. >monitor, then stop when the pointer is set.  This will give me the
  1912. >address of the data, and I can then set a breakpoint on the change.
  1913. >
  1914.  
  1915. Thanks, Jerry.
  1916.  
  1917. However, this trick only works when debugging a program you write.
  1918. When attempting to do this with already existing executable (and no sources),
  1919. it seems I'll have to let go on tha ability to search for data (unless
  1920. some developing/debugging utilities can do this).
  1921.  
  1922. Regards,
  1923. ******************************************************************************
  1924. *   Arie Kazachin, Israel, e-mail: ariek@attglobal3.14159265358979323846.net *
  1925. ******************************************************************************
  1926. NOTE: before replying, leave only letters in my domain-name. Sorry, SPAM trap.
  1927.  
  1928. --- WtrGate+ v0.93.p7 sn 165
  1929.  * Origin: Usenet: Unspecified Organization (1:109/42)
  1930.  
  1931. +----------------------------------------------------------------------------+
  1932.  
  1933. From: heafnerj@interpath.com                            10-Nov-99 19:03:05
  1934.   To: All                                               10-Nov-99 21:35:27
  1935. Subj: sys/param.h and in.h on other systems
  1936.  
  1937. From: Joe Heafner <heafnerj@interpath.com>
  1938.  
  1939. Hi.
  1940.  
  1941. I have some software that was designed to work under EMX, DJGPP, and
  1942. other systems equipped with gcc. It also compiles under VC++ on Win
  1943. systems. The programs make use of the sys/param.h and in.h header files.
  1944. When I attempt to compile the code under MingW32 (the Win32 port of gcc
  1945. 2.9) the compiler complains about not being able to find these header
  1946. files. 
  1947.  
  1948. Can anyone tell me the header files I should use under MingW23 to
  1949. compile these programs?
  1950.  
  1951. Someone else also told me that these particular header files are not
  1952. part of the ANSI/ISO C standard. All I know is that ever compiler/system
  1953. I've tested my software on apparently has these files and experiences no
  1954. problems. The only compiler to have a problem so far is MingW32. If
  1955. these files are not ANSI compliant, what are the appropriate ANSI header
  1956. files to use? The software, I belive (I didn't write this particular
  1957. part), uses these header files for functions needed to check and, if
  1958. necessary, change byte ordering (big endian vs. little endian) in
  1959. certain situations.
  1960.  
  1961.  
  1962.             Thanks,
  1963. -- 
  1964.  
  1965.                         -- Joe Heafner
  1966.  
  1967. Joe Heafner, Astronomy and Physics Instructor. Work:(828)327-7000 x4246
  1968. my surname with my first initial at interpath dot com
  1969. http://home.interpath.com/heafnerj/
  1970.  
  1971. --- WtrGate+ v0.93.p7 sn 165
  1972.  * Origin: Usenet: Interpath Communications, Inc. (1:109/42)
  1973.  
  1974. +----------------------------------------------------------------------------+
  1975.  
  1976. From: rde@tavi.co.uk                                    11-Nov-99 09:28:11
  1977.   To: All                                               11-Nov-99 10:44:24
  1978. Subj: Re: sys/param.h and in.h on other systems
  1979.  
  1980. From: rde@tavi.co.uk (Bob Eager)
  1981.  
  1982. On Thu, 11 Nov 1999 00:03:10, Joe Heafner <heafnerj@interpath.com> 
  1983. wrote:
  1984.  
  1985. > I have some software that was designed to work under EMX, DJGPP, and
  1986. > other systems equipped with gcc. It also compiles under VC++ on Win
  1987. > systems. The programs make use of the sys/param.h and in.h header files.
  1988. > When I attempt to compile the code under MingW32 (the Win32 port of gcc
  1989. > 2.9) the compiler complains about not being able to find these header
  1990. > files. 
  1991.  
  1992. Where did you get the header files for the other compilers? If in a 
  1993. toolkit, then if MingW32 can't find them you probably have it looking 
  1994. in the wrong place.
  1995.  
  1996. > Can anyone tell me the header files I should use under MingW23 to
  1997. > compile these programs?
  1998.  
  1999. The same ones you used for the others.
  2000.  
  2001. > Someone else also told me that these particular header files are not
  2002. > part of the ANSI/ISO C standard. All I know is that ever compiler/system
  2003. > I've tested my software on apparently has these files and experiences no
  2004. > problems.
  2005.  
  2006. That's right. These headers are non-ANSI. The sys\param.h is 
  2007. essentially a kernel configuration file on UNIX systems. The 
  2008. occasional constant in there escapes for use by programs. The in.h (in
  2009. netinet\in.h on my system) contains networking stuff.
  2010.  
  2011. > The only compiler to have a problem so far is MingW32.
  2012.  
  2013. Sounds like the setup.
  2014.  
  2015. > If
  2016. > these files are not ANSI compliant, what are the appropriate ANSI header
  2017. > files to use?
  2018.  
  2019. There aren't.
  2020.  
  2021. > The software, I belive (I didn't write this particular
  2022. > part), uses these header files for functions needed to check and, if
  2023. > necessary, change byte ordering (big endian vs. little endian) in
  2024. > certain situations.
  2025.  
  2026. I can believe that the files you mention contain these functions. But 
  2027. they aren't part of ANSI. Saying that you've seen them on every system
  2028. so far doesn' MAKE then suddnly ANSI.
  2029.  
  2030. I repeat, I think the set of headers you're using with the compiler is
  2031. incomplete. Or its INCLUDE environment variable isn't picking up the 
  2032. toolkit directory.
  2033. -- 
  2034. Bob Eager
  2035. rde at tavi.co.uk
  2036. PC Server 325; PS/2s 8595*3, 9595*3 (2*P60 + P90), 8535, 8570, 9556*2,
  2037. 8580*6,
  2038. 8557*2, 8550, 9577, 8530, P70, PC/AT..
  2039.  
  2040. --- WtrGate+ v0.93.p7 sn 165
  2041.  * Origin: Usenet: Tavi Systems (1:109/42)
  2042.  
  2043. +----------------------------------------------------------------------------+
  2044.  
  2045. From: yourself@127.0.0.1                                11-Nov-99 09:32:24
  2046.   To: All                                               11-Nov-99 10:44:24
  2047. Subj: Re: SYS_DLLS and superclassing native controls
  2048.  
  2049. From: yourself@127.0.0.1 (Rich Walsh)
  2050.  
  2051. On Wed, 10 Nov 1999 21:28:40, kh@no.spam.munot.demon.co.uk (Kevin) wrote:
  2052. > On 10 Nov 1999 11:00:58 GMT, yourself@127.0.0.1 (Rich Walsh) wrote:
  2053. > >On Tue, 9 Nov 1999 21:58:56, kh@no.spam.munot.demon.co.uk (Kevin) wrote:
  2054. > >
  2055. > >> I have a massive PM application with hundreds and hundreds of entry
  2056. > >> fields. It is used on 21 inch montiors and users are complaining that
  2057. > >> they can't see the entry field cursor on the large screens.
  2058. > >> Subclassing entry fields is not an option in this environment. So I
  2059. > >> thought I could superclass WC_ENTRYFIELD.
  2060. [big snip]
  2061. > >Instead, you can try this strategy (one of several that come to mind):
  2062. > >identify whether the message that causes an e/f to create its cursor
  2063. > >is posted or sent.  Then use either an InputHook or a SendMsgHook on
  2064. > >your *own* message queue (HMQ_CURRENT) to intercept it.  This will
  2065. > >let you put the code in your exe, avoid sub- or superclassing, and
  2066. > >generally limit the damage.  (IMHO, this is a good solution when
  2067. > >you're messing with your own app, and a lousy solution when you're
  2068. > >messing other people's.)
  2069. > Have been playing with hooks today. Wanted to used Peter's suggestion
  2070. > to use a hook to catch all WM_CREATE messages and subclass
  2071. > WC_ENTRYFIELDS. Have tried all the 'message' type hooks, but so far
  2072. > none seem to get WM_CREATE messages. Hoping Peter's code will help
  2073. > here.
  2074. > The private hook is interesting. The entryfield has to create/destroy
  2075. > the cursor on one of the activate/focuschange type messages. I will
  2076. > look into that more tomorrow.
  2077.  
  2078. DragText v1.x used the method Peter described (minus the SYS_DLLS
  2079. entry).  It had a flaw that you may consider a feature.  Comboboxes
  2080. and spinbuttons create entryfields which your code subclasses and
  2081. their code then re-subclasses.  They don't bother saving your PFNWP
  2082. and have their subprocs call the class's base window procedure instead
  2083. of yours.  Unless you subclass these controls too (as DT did), your
  2084. code will never be called when the entryfield is part of another
  2085. control.
  2086.  
  2087. You can do this entirely within your own app by installing a HK_SENDMSG
  2088. for each thread that creates entryfields (probably only the first).
  2089. This should eliminate access violations and let you retain your
  2090. C runtime.  Like IBM, you'll have to decide whether to discard each
  2091. window's PFNWP and use the class's default.
  2092.  
  2093. FWIW...  After I posted my earlier suggestion, I realized it won't
  2094. work if you have to use a HK_SENDMSG.  You want to create a cursor
  2095. after an e/f has handled a particular message but this hook gives
  2096. you no way to do so and no way to keep the message from being passed
  2097. on (with a HK_INPUT, your hook could dispatch the message itself,
  2098. do its thing on return, then terminate further processing).
  2099. Sorry 'bout that...
  2100.  
  2101.  
  2102.    == == almost usable email address:  rlwalshATpacket.net == ==
  2103. ___________________________________________________________________
  2104.  
  2105.                 |             - DragText v3.1 -
  2106. Rich Walsh      |  A Distinctly Different Desktop Enhancement
  2107. Ft Myers, FL    |  New!  Pickup & Drop for text, and more...
  2108.                 |  http://www.usacomputers.net/personal/rlwalsh/
  2109. ___________________________________________________________________
  2110.  
  2111. --- WtrGate+ v0.93.p7 sn 165
  2112.  * Origin: Usenet: http://extra.newsguy.com (1:109/42)
  2113.  
  2114. +----------------------------------------------------------------------------+
  2115.  
  2116. From: rplyler@us.spamNOT.ibm.com                        11-Nov-99 12:52:16
  2117.   To: All                                               11-Nov-99 10:44:24
  2118. Subj: Re: SYS_DLLS and superclassing native controls
  2119.  
  2120. From: rplyler@us.spamNOT.ibm.com (Bob Plyler)
  2121.  
  2122. In <3828955d.97047@news.demon.co.uk>, kh@no.spam.munot.demon.co.uk (Kevin)
  2123. writes:
  2124. >I have a massive PM application with hundreds and hundreds of entry
  2125. >fields. It is used on 21 inch montiors and users are complaining that
  2126. >they can't see the entry field cursor on the large screens.
  2127. >Subclassing entry fields is not an option in this environment. So I
  2128. >thought I could superclass WC_ENTRYFIELD. I have created a DLL with an
  2129. >initialisation routine that attempts to get the class info for
  2130. >WC_ENTRYFIELD, store the address of the window proc and register a
  2131. >CS_PUBLIC control called WC_ENTRYFIELD. The intention is that when it
  2132. >receives the focus it can call the original WC_ENTRYFIELD wnd proc and
  2133. >then create a new cursor that is more visible.
  2134.  
  2135. Simple question.  Why not just replace the Cursors?  
  2136. You can replace them with system supplied cursors in
  2137. the Mouse settings.  You can modify these cursors via ICONEDIT
  2138.  
  2139. Bob Plyler
  2140.  
  2141. IBM 3890/XP Engineering  (not an official IBM spokesperson)
  2142.  
  2143. --- WtrGate+ v0.93.p7 sn 165
  2144.  * Origin: Usenet: IBM Global Services, South, RTP, NC, US (1:109/42)
  2145.  
  2146. +----------------------------------------------------------------------------+
  2147.  
  2148. From: cbzh@my-deja.com                                  11-Nov-99 13:09:13
  2149.   To: All                                               11-Nov-99 14:39:01
  2150. Subj: Problems when handling WM_PAINT in a second thread
  2151.  
  2152. From: cbzh@my-deja.com
  2153.  
  2154. In a graphics application I am passing all WM_PAINT messages on to a
  2155. worker thread ("object window") for doing the real painting because it
  2156. takes some time to complete and I do not want to block the program
  2157. entirely. The user can issue e.g. a "zoom in" command while the graphics
  2158. is still being drawn and the response is immediate: Stop the first
  2159. repaint and start a new one with everything enlarged, etc. Works so far
  2160. very nicely.
  2161.  
  2162. However, a problem arises when I want to resize the window: It happens
  2163. frequently that the size just "jumps" to something completely wrong,
  2164. e.g. width zero or so. It only happens if the "move whole windows"
  2165. option is turned on, i.e. resizing means a whole avalanche of WM_PAINT
  2166. messages are arriving and competing with each other. I found a way to
  2167. handle this, with partial success, trying to set a flag "don't repaint"
  2168. while a resize action is on the way. In most cases this prevents the
  2169. strange "jumping resize", but still not always. OTOH sometimes the final
  2170. repaint doesn't seem to work and has to be forced somehow manually.
  2171.  
  2172. There is a certain chance that the problem even has something to do with
  2173. the multiple desktop feature of OD which I am running (v1.52
  2174. "professional").
  2175.  
  2176. QUESTION:
  2177.  
  2178. Does anybody see an entirely different setup for achieving the
  2179. responsiveness I want while long repaints are going on without running
  2180. into the problems I got?
  2181.  
  2182. Greetings and thanks for any hints,
  2183.  
  2184. Cornelis Bockemⁿhl
  2185.  
  2186. e-mail: cbockem@datacomm.ch
  2187. author of "PmAs - Astronomy for the Presentation Manager"
  2188. at http://www.datacomm.ch/cobo
  2189.  
  2190.  
  2191. Sent via Deja.com http://www.deja.com/
  2192. Before you buy.
  2193.  
  2194. --- WtrGate+ v0.93.p7 sn 165
  2195.  * Origin: Usenet: Deja.com - Before you buy. (1:109/42)
  2196.  
  2197. +----------------------------------------------------------------------------+
  2198.  
  2199. From: jstucklex@attglobal.net                           11-Nov-99 09:21:22
  2200.   To: All                                               11-Nov-99 14:39:02
  2201. Subj: Re: Problems when handling WM_PAINT in a second thread
  2202.  
  2203. From: Jerry Stuckle <jstucklex@attglobal.net>
  2204.  
  2205. I've done a lot with painting like this - especially things which take a
  2206. long time like changing the sizes of bitmaps.
  2207.  
  2208. I've found the easiest way to do it is to do your painting to a memory
  2209. PS.  Then when you get the WM_PAINT messages, just BitBlt the memPS to
  2210. the window PS.
  2211.  
  2212. cbzh@my-deja.com wrote:
  2213. > In a graphics application I am passing all WM_PAINT messages on to a
  2214. > worker thread ("object window") for doing the real painting because it
  2215. > takes some time to complete and I do not want to block the program
  2216. > entirely. The user can issue e.g. a "zoom in" command while the graphics
  2217. > is still being drawn and the response is immediate: Stop the first
  2218. > repaint and start a new one with everything enlarged, etc. Works so far
  2219. > very nicely.
  2220. > However, a problem arises when I want to resize the window: It happens
  2221. > frequently that the size just "jumps" to something completely wrong,
  2222. > e.g. width zero or so. It only happens if the "move whole windows"
  2223. > option is turned on, i.e. resizing means a whole avalanche of WM_PAINT
  2224. > messages are arriving and competing with each other. I found a way to
  2225. > handle this, with partial success, trying to set a flag "don't repaint"
  2226. > while a resize action is on the way. In most cases this prevents the
  2227. > strange "jumping resize", but still not always. OTOH sometimes the final
  2228. > repaint doesn't seem to work and has to be forced somehow manually.
  2229. > There is a certain chance that the problem even has something to do with
  2230. > the multiple desktop feature of OD which I am running (v1.52
  2231. > "professional").
  2232. > QUESTION:
  2233. > Does anybody see an entirely different setup for achieving the
  2234. > responsiveness I want while long repaints are going on without running
  2235. > into the problems I got?
  2236. > Greetings and thanks for any hints,
  2237. > Cornelis Bockemühl
  2238. > e-mail: cbockem@datacomm.ch
  2239. > author of "PmAs - Astronomy for the Presentation Manager"
  2240. > at http://www.datacomm.ch/cobo
  2241. > Sent via Deja.com http://www.deja.com/
  2242. > Before you buy.
  2243.  
  2244. -- 
  2245.  
  2246. =======================================================
  2247. To reply, delete the "x" from my email address
  2248.  
  2249. Jerry Stuckle
  2250. jstucklex@attglobal.net
  2251. JDS Computer Training Corp.
  2252. Sun Certified Java Programmer
  2253. VisualAge/Java Certified Advanced Technical Expert
  2254. VisualAge/C++ Certified Developer
  2255.  
  2256. =======================================================
  2257.  
  2258. --- WtrGate+ v0.93.p7 sn 165
  2259.  * Origin: Usenet: JDS Computer Training Corp. (1:109/42)
  2260.  
  2261. +----------------------------------------------------------------------------+
  2262.  
  2263. From: cbzh@my-deja.com                                  11-Nov-99 16:02:17
  2264.   To: All                                               11-Nov-99 14:39:02
  2265. Subj: Re: Problems when handling WM_PAINT in a second thread
  2266.  
  2267. From: cbzh@my-deja.com
  2268.  
  2269. In article <382AD0F8.2936@attglobal.net>,
  2270.   jstucklex@global.net wrote:
  2271. > I've done a lot with painting like this - especially things which take
  2272. a
  2273. > long time like changing the sizes of bitmaps.
  2274. >
  2275. > I've found the easiest way to do it is to do your painting to a memory
  2276. > PS.  Then when you get the WM_PAINT messages, just BitBlt the memPS to
  2277. > the window PS.
  2278.  
  2279. Hmm, could be worth a try. However I see one disadvantage: The user
  2280. doesn't see the image as it is being drawed. Sometimes you see e.g. the
  2281. first outline, see that it is too small and immediately zoom in, etc.
  2282. This viewing might be of less interest for bitmaps...
  2283.  
  2284. But if the procedure solves the problem...
  2285.  
  2286. Or maybe with a modification: The "object window" draws into a memory PS
  2287. and from time to time sends a message to the main thread telling it to
  2288. copy the current image to the screen... (??!)
  2289.  
  2290. Cornelis Bockemⁿhl <cbockem@datacomm.ch>
  2291.  
  2292. > cbzh@my-deja.com wrote:
  2293. > >
  2294. > > In a graphics application I am passing all WM_PAINT messages on to a
  2295. > > worker thread ("object window") for doing the real painting because
  2296. it
  2297. > > takes some time to complete and I do not want to block the program
  2298. > > entirely. The user can issue e.g. a "zoom in" command while the
  2299. graphics
  2300. > > is still being drawn and the response is immediate: Stop the first
  2301. > > repaint and start a new one with everything enlarged, etc. Works so
  2302. far
  2303. > > very nicely.
  2304. > >
  2305. > > However, a problem arises when I want to resize the window: It
  2306. happens
  2307. > > frequently that the size just "jumps" to something completely wrong,
  2308. > > e.g. width zero or so. It only happens if the "move whole windows"
  2309. > > option is turned on, i.e. resizing means a whole avalanche of
  2310. WM_PAINT
  2311. > > messages are arriving and competing with each other. I found a way
  2312. to
  2313. > > handle this, with partial success, trying to set a flag "don't
  2314. repaint"
  2315. > > while a resize action is on the way. In most cases this prevents the
  2316. > > strange "jumping resize", but still not always. OTOH sometimes the
  2317. final
  2318. > > repaint doesn't seem to work and has to be forced somehow manually.
  2319. > >
  2320. > > There is a certain chance that the problem even has something to do
  2321. with
  2322. > > the multiple desktop feature of OD which I am running (v1.52
  2323. > > "professional").
  2324. > >
  2325. > > QUESTION:
  2326. > >
  2327. > > Does anybody see an entirely different setup for achieving the
  2328. > > responsiveness I want while long repaints are going on without
  2329. running
  2330. > > into the problems I got?
  2331. > >
  2332. > > Greetings and thanks for any hints,
  2333. > >
  2334. > > Cornelis Bockemⁿhl
  2335. > >
  2336. > > e-mail: cbockem@datacomm.ch
  2337. > > author of "PmAs - Astronomy for the Presentation Manager"
  2338. > > at http://www.datacomm.ch/cobo
  2339. > >
  2340. > > Sent via Deja.com http://www.deja.com/
  2341. > > Before you buy.
  2342. >
  2343. > --
  2344. >
  2345. > =======================================================
  2346. > To reply, delete the "x" from my email address
  2347. >
  2348. > Jerry Stuckle
  2349. > jstucklex@attglobal.net
  2350. > JDS Computer Training Corp.
  2351. > Sun Certified Java Programmer
  2352. > VisualAge/Java Certified Advanced Technical Expert
  2353. > VisualAge/C++ Certified Developer
  2354. >
  2355. > =======================================================
  2356. >
  2357.  
  2358.  
  2359. Sent via Deja.com http://www.deja.com/
  2360. Before you buy.
  2361.  
  2362. --- WtrGate+ v0.93.p7 sn 165
  2363.  * Origin: Usenet: Deja.com - Before you buy. (1:109/42)
  2364.  
  2365. +----------------------------------------------------------------------------+
  2366.  
  2367. From: lorne.sunley@fto.de                               12-Nov-99 01:45:29
  2368.   To: All                                               11-Nov-99 16:48:03
  2369. Subj: Re: USE or SPY any distant PC via LAN/INTERNET
  2370.  
  2371. From: lorne.sunley@fto.de
  2372.  
  2373. From: lsunley@mb.sympatico.ca (Lorne Sunley)
  2374.  
  2375. On Wed, 10 Nov 1999 16:41:16, "Crowsort" <crowsort@universe.com> 
  2376. wrote:
  2377.  
  2378. > USE or SPY any distant PC via LAN/INTERNET
  2379. > How YOU can Hack Windows 95-98-NT... in seconds!
  2380. > And use or spy any PC via a LAN or the Internet... as if you were
  2381.  there!
  2382. > Platforms concerned:
  2383. > --------------------
  2384. > => Windows 95/98
  2385. > => Windows NT Workstation/Server 3.5, 3.51 and 4.0
  2386. > => Windows 2000
  2387.  
  2388. Yet another reason to resist the wiles of Microsoft.
  2389.  
  2390. If Outlook doesn't get you, something like this will
  2391.  
  2392. Lorne Sunley
  2393.  
  2394.  
  2395.  
  2396. --- WtrGate+ v0.93.p7 sn 165
  2397.  * Origin: Usenet: Skynet Titan (1:109/42)
  2398.  
  2399. +----------------------------------------------------------------------------+
  2400.  
  2401. From: bstzdl@fto.de                                     12-Nov-99 01:46:00
  2402.   To: All                                               11-Nov-99 16:48:03
  2403. Subj: Get Noticed!!
  2404.  
  2405. From: bstzdl@fto.de
  2406.  
  2407. From: bstzdl@datawise.net
  2408.  
  2409. http:/www.mightybiz.com
  2410.  
  2411.  
  2412.  
  2413. --- WtrGate+ v0.93.p7 sn 165
  2414.  * Origin: Usenet: Skynet Titan (1:109/42)
  2415.  
  2416. +----------------------------------------------------------------------------+
  2417.  
  2418. From: peter.fitzsimons@fto.de                           12-Nov-99 01:46:00
  2419.   To: All                                               11-Nov-99 16:48:03
  2420. Subj: Re: SYS_DLLS and superclassing native controls
  2421.  
  2422. From: peter.fitzsimons@fto.de
  2423.  
  2424. From: peter.fitzsimons@fto.de
  2425.  
  2426. From: Peter Fitzsimons <pfitz@ican.net>
  2427.  
  2428. > I list my DLL in SYS_DLLS->LoadEachProcess (or whatever it's
  2429.  called).
  2430. > The DLL loads and executes its initialisation. WinQueryClassInfo
  2431.  gets
  2432. > TRUE for WC_ENTRYFIELD. WinRegisterClass for WC_ENTRYFIELD with
  2433. > CS_PUBLIC gets FALSE. But after re-booting, any window with an
  2434.  entry
  2435. > field traps. This tends to indicate that my wndproc is being
  2436.  called,
  2437.  
  2438. How are you defining your data segments?  ie:"single shared", or
  2439.  what?
  2440.  
  2441. If you are loading anything (like a pointer/icon/bmp) you have to do
  2442.  it
  2443. for each app, which probably forces you do use an "initinstance
  2444.  multiple
  2445. nonshared" dll. So keep your data segment size down, and try to
  2446.  compile
  2447. /Rn.
  2448.  
  2449. I have code that subclasses the titlebar for every app with a sys_dll
  2450. "load once" entry.  It installs a msg hook, that looks for WM_CREATE
  2451. messages;  if the window is what I'm looking for, then I subclass it
  2452. "live". I'm a resource freak and the thought of "loadperprocess" and
  2453. "mutliple data" offended me at the time (1995, when I only had 24mb
  2454.  of
  2455. memory I think :).
  2456.  
  2457. Anyway, you're welcome to the code if you like.
  2458.  
  2459.  
  2460.  
  2461.  
  2462. --- WtrGate+ v0.93.p7 sn 165
  2463.  * Origin: Usenet: Skynet Titan (1:109/42)
  2464.  
  2465. +----------------------------------------------------------------------------+
  2466.  
  2467. From: vitus.jensen@fto.de                               12-Nov-99 01:46:00
  2468.   To: All                                               11-Nov-99 16:48:03
  2469. Subj: WSeb and LDGW and NDS
  2470.  
  2471. From: vitus.jensen@fto.de
  2472.  
  2473. From: vitus.jensen@fto.de
  2474.  
  2475. From: Vitus_Jensen@teaparty.fido.de (Vitus Jensen)
  2476.  
  2477. Hello Charles,
  2478.  
  2479. 08.11.99 18:18, Charles Christacopoulos wrote a message to All :
  2480.  
  2481.  CC> I would appreciate any pointers, tips, ideas (whatever) to the
  2482.  CC> following.
  2483.  
  2484.  CC> We are primarily a Netware/Solaris house, apart from me being
  2485.  odd
  2486.  CC> with OS/2. I run WSeB and Lotus Domino Go web server(s) to
  2487.  CC> provide the www intranet at our institution.
  2488.  
  2489.  CC> Without gettting into any detail, LDGW can call an external
  2490.  CC> program to validate users when they try to get  www "protected"
  2491.  CC> files.  I would like to "one day" have such an external program
  2492.  CC> that would actually validate users against Netware's NDS tree
  2493.  CC> (thus users would in effect use the same ID and password for
  2494.  CC> Netware and for viewing files on the www).
  2495.  
  2496.  CC> Where do I start looking for a solution?  
  2497.  
  2498. To write a program using the NDS for user validation you need the
  2499.  "Client SDK"
  2500. for OS/2 from Novell.  When I was doing such things (over 4 years
  2501.  ago) it was
  2502. sold, documentation only readable from WinOS/2.  There are a lot of
  2503.  16 bit
  2504. functions you may call but to decide which function is used for what
  2505.  purpose
  2506. isn't simple.
  2507.  
  2508.  
  2509.  CC> Will the LDAP kit that comes with WSeB allow me to do anything
  2510.  CC> like it? Can it be done? Has anyone got it (we would be willing
  2511.  CC> to pay :-) ?
  2512.  
  2513. If you can manage to synchronize the LAN Server domain with the NDS
  2514.  you would
  2515. have a much simpler task: just call Net[32]UserValidate().
  2516. The server (and requester?) package contains INF, header, lib and
  2517.  samples how
  2518. to do this.  Look for x:\IBMLAN\NETSRC (don't remember the
  2519.  installation option,
  2520. sorry).
  2521.  
  2522. C-x C-s
  2523.     Vitus
  2524.  
  2525.  
  2526.  
  2527.  
  2528. --- WtrGate+ v0.93.p7 sn 165
  2529.  * Origin: Usenet: Skynet Titan (1:109/42)
  2530.  
  2531. +----------------------------------------------------------------------------+
  2532.  
  2533. From: kevin@fto.de                                      12-Nov-99 01:46:00
  2534.   To: All                                               11-Nov-99 16:48:03
  2535. Subj: Re: SYS_DLLS and superclassing native controls
  2536.  
  2537. From: kevin@fto.de
  2538.  
  2539. From: kh@no.spam.munot.demon.co.uk (Kevin)
  2540.  
  2541. On 10 Nov 1999 11:00:58 GMT, yourself@127.0.0.1 (Rich Walsh) wrote:
  2542.  
  2543. >On Tue, 9 Nov 1999 21:58:56, kh@no.spam.munot.demon.co.uk (Kevin)
  2544.  wrote:
  2545. >
  2546. >> I have a massive PM application with hundreds and hundreds of
  2547.  entry
  2548. >> fields. It is used on 21 inch montiors and users are complaining
  2549.  that
  2550. >> they can't see the entry field cursor on the large screens.
  2551. >> Subclassing entry fields is not an option in this environment. So
  2552.  I
  2553. >> thought I could superclass WC_ENTRYFIELD. I have created a DLL
  2554.  with an
  2555. >> initialisation routine that attempts to get the class info for
  2556. >> WC_ENTRYFIELD, store the address of the window proc and register a
  2557. >> CS_PUBLIC control called WC_ENTRYFIELD. The intention is that when
  2558.  it
  2559. >> receives the focus it can call the original WC_ENTRYFIELD wnd proc
  2560.  and
  2561. >> then create a new cursor that is more visible.
  2562. >> 
  2563. >> I list my DLL in SYS_DLLS->LoadEachProcess (or whatever it's
  2564.  called).
  2565. >> The DLL loads and executes its initialisation. WinQueryClassInfo
  2566.  gets
  2567. >> TRUE for WC_ENTRYFIELD. WinRegisterClass for WC_ENTRYFIELD with
  2568. >> CS_PUBLIC gets FALSE. But after re-booting, any window with an
  2569.  entry
  2570. >> field traps. This tends to indicate that my wndproc is being
  2571.  called,
  2572. >> even though I got FALSE on the register. I wonder if the address
  2573. >> returned by WinQueryClassInfo is valid in all the other processes.
  2574. >>
  2575. >>I believe from a search on DEJA that Rich Walsh has done this kind
  2576.  of
  2577. >>thing before. What I want to do is register my own wndproc for all
  2578. >>WC_ENTRYFIELD controls created and create a different cursor every
  2579. >>time an entry field gets the focus. What am I doing wrong?
  2580. >
  2581. >Do you really want to modify every entryfield in the system or just
  2582.  the
  2583. >ones in your app?  Either way, you'll have to deal with odd
  2584.  side-effects
  2585. >your code may have on, say, read-only comboboxes (i.e. no visible
  2586.  cursor).
  2587.  
  2588. Users would be happy with every entryfield in the system. This is the
  2589. only app being used, so I don't have to worry about other people's
  2590. apps. Didn't thing about the comboboxes, but their entryfields are
  2591. easy enough to distinguish from ordinary ones.
  2592.  
  2593. >For a global replacement, the superclassing code in your DLL should
  2594.  only
  2595. >be executed once:  the first time it's called, when it's operating
  2596.  in the
  2597. >shell process.  You shouldn't have to change any flags.  You can
  2598.  store
  2599. >the original PFN in global memory because it's valid in all PM
  2600.  processes.
  2601.  
  2602. Thanks for clearing that up.
  2603.  
  2604. The WinRegisterClass call returns FALSE when I try to register with
  2605. all the parameters from WinGetClassInfo the same except for PFNWP.
  2606. Haven't done WinGetLastError here yet as I was trying Peter
  2607. Fitzsimmons' idea today. Don't know if I believe the return value
  2608. though because I was getting traps on anything that created an
  2609. entryfield.
  2610.  
  2611. >The traps you're getting now probably occur because the DLL's
  2612.  instance
  2613. >data hasn't been initialized properly (are you using INITINSTANCE
  2614.  and
  2615. >DATA MULTIPLE NONSHARED ?).  Since your needs are so minimal, you
  2616.  may
  2617. >not even need a per-process data segment except to satisfy your
  2618.  compiler.
  2619. >If so, try shedding the runtime environment - or even the runtime
  2620.  itself
  2621. >(YMMV).
  2622.  
  2623. I had INITINSTANCE and DATA MULTIPLE NONSHARED in all cases.
  2624. Currently using the runtime for fprintf for debugging, but will
  2625. probably not use it in the end.
  2626.  
  2627. >BTW...  are you aware that the function you've exported as ordinal 1
  2628. >gets called every time your dll is loaded into a new process?
  2629. Hmmm. I am exporting by names, but the first export is my
  2630. initialisation function. This function does get called on load as my
  2631. fprintf shows.
  2632.  
  2633. >For a process-specific solution, forget most everything I just said
  2634.  :-)
  2635. >AFAIK, you can't reregister a CS_PUBLIC class for a particular
  2636.  process.
  2637.  
  2638. That is correct according to the documentation.
  2639.  
  2640. >Instead, you can try this strategy (one of several that come to
  2641.  mind):
  2642. >identify whether the message that causes an e/f to create its cursor
  2643. >is posted or sent.  Then use either an InputHook or a SendMsgHook on
  2644. >your *own* message queue (HMQ_CURRENT) to intercept it.  This will
  2645. >let you put the code in your exe, avoid sub- or superclassing, and
  2646. >generally limit the damage.  (IMHO, this is a good solution when
  2647. >you're messing with your own app, and a lousy solution when you're
  2648. >messing other people's.)
  2649.  
  2650. Have been playing with hooks today. Wanted to used Peter's suggestion
  2651. to use a hook to catch all WM_CREATE messages and subclass
  2652. WC_ENTRYFIELDS. Have tried all the 'message' type hooks, but so far
  2653. none seem to get WM_CREATE messages. Hoping Peter's code will help
  2654. here.
  2655.  
  2656. The private hook is interesting. The entryfield has to create/destroy
  2657. the cursor on one of the activate/focuschange type messages. I will
  2658. look into that more tomorrow.
  2659.  
  2660. Thanks,
  2661. Kevin
  2662.  
  2663.  
  2664.  
  2665. --- WtrGate+ v0.93.p7 sn 165
  2666.  * Origin: Usenet: Skynet Titan (1:109/42)
  2667.  
  2668. +----------------------------------------------------------------------------+
  2669.  
  2670. From: dave.blaschke@fto.de                              12-Nov-99 01:46:00
  2671.   To: All                                               11-Nov-99 16:48:03
  2672. Subj: Re: XCPT_SPACE_ACCESS Violation in DOSCALL1
  2673.  
  2674. From: dave.blaschke@fto.de
  2675.  
  2676. From: Dave Blaschke <blaschke@us.ibm.com>
  2677.  
  2678.  
  2679.  
  2680. Mike Fry wrote:
  2681.  
  2682. Ahh, Mike Fry, the man who asked me to add yet another executable to
  2683.  the
  2684. OS2TRACE package.  Because it's you I'll try and answer correctly for
  2685.  a
  2686. change ;-)
  2687.  
  2688. > Could someone help me with this entry from the POPUPLOG.OS2 on a
  2689.  Warp 4,
  2690. > FP12 machine?
  2691. >
  2692. > Unfortunately, I didn't write the offending program (it's in 16-bit
  2693. > COBOL of all things), but I have written a lot of underlying
  2694.  routines
  2695. > (Watcom C) that live in DLLs, along with various service programs.
  2696.  All C
  2697. > code is 32-bit. The DLLs used by the COBOL program have equivalent
  2698. > 16-bit and 32-bit entry points (Watcom is good for this sort of
  2699.  thunking
  2700. > <g>).
  2701. >
  2702. > 11-05-1999  14:30:29  SYS3171  PID 0029  TID 0001  Slot 0053
  2703. > C:\DLRC\MCHOTB04.EXE
  2704. > c0000005
  2705. > 1bfa0184
  2706. > P1=00000008  P2=00000134  P3=XXXXXXXX  P4=XXXXXXXX
  2707. > EAX=00000079  EBX=000047fc  ECX=0000001f  EDX=0000eb84
  2708. > ESI=00002590  EDI=00002800
  2709. > DS=a447  DSACC=00f3  DSLIM=000047ff
  2710. > ES=a44f  ESACC=00f3  ESLIM=00001aef
  2711. > FS=150b  FSACC=00f3  FSLIM=00000030
  2712. > GS=0000  GSACC=****  GSLIM=********
  2713. > CS:EIP=dfd7:00000184  CSACC=00df  CSLIM=0000dc08
  2714. > SS:ESP=0137:000009f2  SSACC=****  SSLIM=********
  2715. > EBP=000009f2  FLG=00012202
  2716. >
  2717. > DOSCALL1.DLL 0003:00000184
  2718. >
  2719. > I don't really understand the SYS3171 - exception within exception.
  2720.  As
  2721. > far as I know, my DLLs don't use exception handlers apart from what
  2722.  the
  2723. > CRT installs. Is it possible to determine which routine in
  2724.  DOSCALL1.DLL
  2725. > this trap actually occurred in?
  2726.  
  2727. SYS3171 simply means that a thread did not have enough stack space
  2728.  available
  2729. to dispatch an exception.  When an exception occurs, the OS/2 kernel
  2730. attempts to "push" an exception report record and context record,
  2731.  along with
  2732. some other goodies,  on top of the user's stack for the ring 3
  2733.  exception
  2734. dispatcher: if this fails, a SYS3171 will result.  This does not
  2735.  necessarily
  2736. mean that an exception occurred within a handler.
  2737.  
  2738. As for the routine, you can't really figure it out without the
  2739.  DOSCALL1.MAP
  2740. file or some debug tools that can extract the info from DOSCALL1.SYM.
  2741.   In
  2742. this case, DOSCALL1 object 3 offset 184 is within the DOSSEMWAIT API
  2743.  on
  2744. FP12.
  2745.  
  2746. >
  2747. >
  2748. > My suspicion is that this is some kind of application-caused memory
  2749. > leak. Examination of the C & COBOL source code shows that tiled
  2750.  memory
  2751. > objects are being allocated by DosAllocSharedMem in one of my
  2752.  service
  2753. > EXEs and passed to the COBOL program, via a queue, after doing a
  2754. > DosGiveSharedMem to give the COBOL program read/write permission.
  2755.  The
  2756. > service EXE then does a DosFreeMem.
  2757. >
  2758. > At some stage on the COBOL side, an apparently unnecessary
  2759.  DosGetSeg
  2760. > (16-bit remember) is being done. I say unnecessary because the
  2761.  program
  2762. > already has read/write access to the object thru the
  2763.  DosGiveSharedMem
  2764. > call. I can only find a single DosFreeSeg in the COBOL code. Am I
  2765.  right
  2766. > in thinking that OS/2 is unable to 'physically' free the memory
  2767.  objects
  2768. > because of a non-zero reference count? And that over time, OS/2
  2769.  will
  2770. > actually 'run out' of memory?
  2771. >
  2772. > To me, this is a fairly straight-forward XCPT_ACCESS_VIOLATION.
  2773. > According to my toolkit headers, the P1 value indicates
  2774. > XCPT_SPACE_ACCESS and P2 the selector involved. If OS/2 has
  2775.  actually run
  2776. > out of selectors because of the unnecessary DosGetSeg (missing
  2777. > DosFreeSeg), then I would have expected to find P1 to indicate
  2778. > XCPT_LIMIT_ACCESS.
  2779. >
  2780. > I can't find any explanation in my documentation of what these two
  2781. > access violation codes mean in real terms. Can anybody explain the
  2782. > difference between XCPT_SPACE_ACCESS and XCPT_LIMIT_ACCESS? Does my
  2783. > description of the memory object usage make sense in terms of the
  2784.  trap
  2785. > information that I have supplied?
  2786.  
  2787. Both indicate that a trap C occurred.  If P1 == XCPT_SPACE_ACCESS,
  2788.  then the
  2789. trap C  occurred with a non-zero error code and P2 = this error code.
  2790.   If P1
  2791. == XCPT_LIMIT_ACCESS, then the trap C occurred with a zero error code
  2792.  and P2
  2793. = XCPT_DATA_UNKNOWN.  The following is from the Intel programmer's
  2794. reference, where stack fault refers to trap C:
  2795.  
  2796. <CITE>
  2797. A stack fault is generated under two conditions:
  2798.  
  2799. * As a result of a limit violation in any operation which refers to
  2800.  the SS
  2801. register.  This includes stack-oriented instructions such as POP,
  2802.  PUSH,
  2803. ENTER, and LEAVE, as well as other memory
  2804. references which implicitly use the stack (for example, MOV
  2805.  AX,[BP+6]).  The
  2806. ENTER instruction generates this exception when there is too little
  2807.  space
  2808. for allocating local variables.
  2809.  
  2810. * When attempting to load the SS register with a descriptor which is
  2811.  marked
  2812. segment-not-present but is otherwise valid.  This can occur in a task
  2813. switch, a CALL instruction ro a different privilege level, a return
  2814.  to a
  2815. different privilege level, an LSS instruction, or a MOV or POP
  2816.  instruction
  2817. to the SS register.
  2818.  
  2819. When the processor detects a stack exception, it pushes an error code
  2820.  onto
  2821. the stack of the exception handler.  If the exception is due to a
  2822. not-present stack segment or to overflow of the new stack during an
  2823. interlevel CALL, the error code contains a selector to the segment
  2824.  which
  2825. caused the exception (the exception handler can test the present bit
  2826.  in the
  2827. descriptor to determine which exception occurred); otherwise, the
  2828.  error code
  2829. is 0.
  2830. </CITE>
  2831.  
  2832. >
  2833. >
  2834. > Thanks for listening,
  2835. > MIKE FRY
  2836. > mailto:mikefry@iafrica.com
  2837.  
  2838.  
  2839.  
  2840.  
  2841.  
  2842. --- WtrGate+ v0.93.p7 sn 165
  2843.  * Origin: Usenet: Skynet Titan (1:109/42)
  2844.  
  2845. +----------------------------------------------------------------------------+
  2846.  
  2847. From: rich.walsh@fto.de                                 12-Nov-99 01:46:01
  2848.   To: All                                               11-Nov-99 16:48:03
  2849. Subj: Re: SYS_DLLS and superclassing native controls
  2850.  
  2851. From: rich.walsh@fto.de
  2852.  
  2853. From: rich.walsh@fto.de
  2854.  
  2855. From: yourself@127.0.0.1 (Rich Walsh)
  2856.  
  2857. On Tue, 9 Nov 1999 21:58:56, kh@no.spam.munot.demon.co.uk (Kevin)
  2858.  wrote:
  2859.  
  2860. > I have a massive PM application with hundreds and hundreds of entry
  2861. > fields. It is used on 21 inch montiors and users are complaining
  2862.  that
  2863. > they can't see the entry field cursor on the large screens.
  2864. > Subclassing entry fields is not an option in this environment. So I
  2865. > thought I could superclass WC_ENTRYFIELD. I have created a DLL with
  2866.  an
  2867. > initialisation routine that attempts to get the class info for
  2868. > WC_ENTRYFIELD, store the address of the window proc and register a
  2869. > CS_PUBLIC control called WC_ENTRYFIELD. The intention is that when
  2870.  it
  2871. > receives the focus it can call the original WC_ENTRYFIELD wnd proc
  2872.  and
  2873. > then create a new cursor that is more visible.
  2874. > I list my DLL in SYS_DLLS->LoadEachProcess (or whatever it's
  2875.  called).
  2876. > The DLL loads and executes its initialisation. WinQueryClassInfo
  2877.  gets
  2878. > TRUE for WC_ENTRYFIELD. WinRegisterClass for WC_ENTRYFIELD with
  2879. > CS_PUBLIC gets FALSE. But after re-booting, any window with an
  2880.  entry
  2881. > field traps. This tends to indicate that my wndproc is being
  2882.  called,
  2883. > even though I got FALSE on the register. I wonder if the address
  2884. > returned by WinQueryClassInfo is valid in all the other processes.
  2885. >
  2886. >I believe from a search on DEJA that Rich Walsh has done this kind
  2887.  of
  2888. >thing before. What I want to do is register my own wndproc for all
  2889. >WC_ENTRYFIELD controls created and create a different cursor every
  2890. >time an entry field gets the focus. What am I doing wrong?
  2891.  
  2892. Do you really want to modify every entryfield in the system or just
  2893.  the
  2894. ones in your app?  Either way, you'll have to deal with odd
  2895.  side-effects
  2896. your code may have on, say, read-only comboboxes (i.e. no visible
  2897.  cursor).
  2898.  
  2899. For a global replacement, the superclassing code in your DLL should
  2900.  only
  2901. be executed once:  the first time it's called, when it's operating in
  2902.  the
  2903. shell process.  You shouldn't have to change any flags.  You can
  2904.  store
  2905. the original PFN in global memory because it's valid in all PM
  2906.  processes.
  2907.  
  2908. The traps you're getting now probably occur because the DLL's
  2909.  instance
  2910. data hasn't been initialized properly (are you using INITINSTANCE and
  2911. DATA MULTIPLE NONSHARED ?).  Since your needs are so minimal, you may
  2912. not even need a per-process data segment except to satisfy your
  2913.  compiler.
  2914. If so, try shedding the runtime environment - or even the runtime
  2915.  itself
  2916. (YMMV).
  2917.  
  2918. BTW...  are you aware that the function you've exported as ordinal 1
  2919. gets called every time your dll is loaded into a new process?
  2920.  
  2921. For a process-specific solution, forget most everything I just said
  2922.  :-)
  2923. AFAIK, you can't reregister a CS_PUBLIC class for a particular
  2924.  process.
  2925.  
  2926. Instead, you can try this strategy (one of several that come to
  2927.  mind):
  2928. identify whether the message that causes an e/f to create its cursor
  2929. is posted or sent.  Then use either an InputHook or a SendMsgHook on
  2930. your *own* message queue (HMQ_CURRENT) to intercept it.  This will
  2931. let you put the code in your exe, avoid sub- or superclassing, and
  2932. generally limit the damage.  (IMHO, this is a good solution when
  2933. you're messing with your own app, and a lousy solution when you're
  2934. messing other people's.)
  2935.  
  2936.  
  2937.    == == almost usable email address:  rlwalshATpacket.net == ==
  2938. ___________________________________________________________________
  2939.  
  2940.                 |             - DragText v3.1 -
  2941. Rich Walsh      |  A Distinctly Different Desktop Enhancement
  2942. Ft Myers, FL    |  New!  Pickup & Drop for text, and more...
  2943.                 |  http://www.usacomputers.net/personal/rlwalsh/
  2944. ___________________________________________________________________
  2945.  
  2946.  
  2947.  
  2948.  
  2949.  
  2950. --- WtrGate+ v0.93.p7 sn 165
  2951.  * Origin: Usenet: Skynet Titan (1:109/42)
  2952.  
  2953. +----------------------------------------------------------------------------+
  2954.  
  2955. From: mike.fry@fto.de                                   12-Nov-99 01:46:01
  2956.   To: All                                               11-Nov-99 16:48:03
  2957. Subj: XCPT_SPACE_ACCESS Violation in DOSCALL1
  2958.  
  2959. From: mike.fry@fto.de
  2960.  
  2961. From: mike.fry@fto.de
  2962.  
  2963. From: mikefry@iafrica.nospam.com (Mike Fry)
  2964.  
  2965. Could someone help me with this entry from the POPUPLOG.OS2 on a Warp
  2966.  4,
  2967. FP12 machine?
  2968.  
  2969. Unfortunately, I didn't write the offending program (it's in 16-bit 
  2970. COBOL of all things), but I have written a lot of underlying routines
  2971.  
  2972. (Watcom C) that live in DLLs, along with various service programs.
  2973.  All C
  2974. code is 32-bit. The DLLs used by the COBOL program have equivalent 
  2975. 16-bit and 32-bit entry points (Watcom is good for this sort of
  2976.  thunking
  2977. <g>).
  2978.  
  2979. 11-05-1999  14:30:29  SYS3171  PID 0029  TID 0001  Slot 0053
  2980. C:\DLRC\MCHOTB04.EXE
  2981. c0000005
  2982. 1bfa0184
  2983. P1=00000008  P2=00000134  P3=XXXXXXXX  P4=XXXXXXXX  
  2984. EAX=00000079  EBX=000047fc  ECX=0000001f  EDX=0000eb84
  2985. ESI=00002590  EDI=00002800  
  2986. DS=a447  DSACC=00f3  DSLIM=000047ff  
  2987. ES=a44f  ESACC=00f3  ESLIM=00001aef  
  2988. FS=150b  FSACC=00f3  FSLIM=00000030
  2989. GS=0000  GSACC=****  GSLIM=********
  2990. CS:EIP=dfd7:00000184  CSACC=00df  CSLIM=0000dc08
  2991. SS:ESP=0137:000009f2  SSACC=****  SSLIM=********
  2992. EBP=000009f2  FLG=00012202
  2993.  
  2994. DOSCALL1.DLL 0003:00000184
  2995.  
  2996. I don't really understand the SYS3171 - exception within exception.
  2997.  As 
  2998. far as I know, my DLLs don't use exception handlers apart from what
  2999.  the 
  3000. CRT installs. Is it possible to determine which routine in
  3001.  DOSCALL1.DLL 
  3002. this trap actually occurred in?
  3003.  
  3004. My suspicion is that this is some kind of application-caused memory 
  3005. leak. Examination of the C & COBOL source code shows that tiled
  3006.  memory 
  3007. objects are being allocated by DosAllocSharedMem in one of my service
  3008.  
  3009. EXEs and passed to the COBOL program, via a queue, after doing a 
  3010. DosGiveSharedMem to give the COBOL program read/write permission. The
  3011.  
  3012. service EXE then does a DosFreeMem.
  3013.  
  3014. At some stage on the COBOL side, an apparently unnecessary DosGetSeg 
  3015. (16-bit remember) is being done. I say unnecessary because the
  3016.  program 
  3017. already has read/write access to the object thru the DosGiveSharedMem
  3018.  
  3019. call. I can only find a single DosFreeSeg in the COBOL code. Am I
  3020.  right 
  3021. in thinking that OS/2 is unable to 'physically' free the memory
  3022.  objects 
  3023. because of a non-zero reference count? And that over time, OS/2 will 
  3024. actually 'run out' of memory?
  3025.  
  3026. To me, this is a fairly straight-forward XCPT_ACCESS_VIOLATION. 
  3027. According to my toolkit headers, the P1 value indicates 
  3028. XCPT_SPACE_ACCESS and P2 the selector involved. If OS/2 has actually
  3029.  run
  3030. out of selectors because of the unnecessary DosGetSeg (missing 
  3031. DosFreeSeg), then I would have expected to find P1 to indicate 
  3032. XCPT_LIMIT_ACCESS. 
  3033.  
  3034. I can't find any explanation in my documentation of what these two 
  3035. access violation codes mean in real terms. Can anybody explain the 
  3036. difference between XCPT_SPACE_ACCESS and XCPT_LIMIT_ACCESS? Does my 
  3037. description of the memory object usage make sense in terms of the
  3038.  trap 
  3039. information that I have supplied?
  3040.  
  3041. Thanks for listening,
  3042. MIKE FRY
  3043. mailto:mikefry@iafrica.com
  3044.  
  3045.  
  3046.  
  3047.  
  3048.  
  3049. --- WtrGate+ v0.93.p7 sn 165
  3050.  * Origin: Usenet: Skynet Titan (1:109/42)
  3051.  
  3052. +----------------------------------------------------------------------------+
  3053.  
  3054. From: rich.walsh@fto.de                                 12-Nov-99 01:46:02
  3055.   To: All                                               11-Nov-99 16:48:03
  3056. Subj: Re: SYS_DLLS and superclassing native controls
  3057.  
  3058. From: rich.walsh@fto.de
  3059.  
  3060. From: yourself@127.0.0.1 (Rich Walsh)
  3061.  
  3062. On Wed, 10 Nov 1999 21:28:40, kh@no.spam.munot.demon.co.uk (Kevin)
  3063.  wrote:
  3064. > On 10 Nov 1999 11:00:58 GMT, yourself@127.0.0.1 (Rich Walsh) wrote:
  3065. > >On Tue, 9 Nov 1999 21:58:56, kh@no.spam.munot.demon.co.uk (Kevin)
  3066.  wrote:
  3067. > >
  3068. > >> I have a massive PM application with hundreds and hundreds of
  3069.  entry
  3070. > >> fields. It is used on 21 inch montiors and users are complaining
  3071.  that
  3072. > >> they can't see the entry field cursor on the large screens.
  3073. > >> Subclassing entry fields is not an option in this environment.
  3074.  So I
  3075. > >> thought I could superclass WC_ENTRYFIELD.
  3076. [big snip]
  3077. > >Instead, you can try this strategy (one of several that come to
  3078.  mind):
  3079. > >identify whether the message that causes an e/f to create its
  3080.  cursor
  3081. > >is posted or sent.  Then use either an InputHook or a SendMsgHook
  3082.  on
  3083. > >your *own* message queue (HMQ_CURRENT) to intercept it.  This will
  3084. > >let you put the code in your exe, avoid sub- or superclassing, and
  3085. > >generally limit the damage.  (IMHO, this is a good solution when
  3086. > >you're messing with your own app, and a lousy solution when you're
  3087. > >messing other people's.)
  3088. > Have been playing with hooks today. Wanted to used Peter's
  3089.  suggestion
  3090. > to use a hook to catch all WM_CREATE messages and subclass
  3091. > WC_ENTRYFIELDS. Have tried all the 'message' type hooks, but so far
  3092. > none seem to get WM_CREATE messages. Hoping Peter's code will help
  3093. > here.
  3094. > The private hook is interesting. The entryfield has to
  3095.  create/destroy
  3096. > the cursor on one of the activate/focuschange type messages. I will
  3097. > look into that more tomorrow.
  3098.  
  3099. DragText v1.x used the method Peter described (minus the SYS_DLLS
  3100. entry).  It had a flaw that you may consider a feature.  Comboboxes
  3101. and spinbuttons create entryfields which your code subclasses and
  3102. their code then re-subclasses.  They don't bother saving your PFNWP
  3103. and have their subprocs call the class's base window procedure
  3104.  instead
  3105. of yours.  Unless you subclass these controls too (as DT did), your
  3106. code will never be called when the entryfield is part of another
  3107. control.
  3108.  
  3109. You can do this entirely within your own app by installing a
  3110.  HK_SENDMSG
  3111. for each thread that creates entryfields (probably only the first).
  3112. This should eliminate access violations and let you retain your
  3113. C runtime.  Like IBM, you'll have to decide whether to discard each
  3114. window's PFNWP and use the class's default.
  3115.  
  3116. FWIW...  After I posted my earlier suggestion, I realized it won't
  3117. work if you have to use a HK_SENDMSG.  You want to create a cursor
  3118. after an e/f has handled a particular message but this hook gives
  3119. you no way to do so and no way to keep the message from being passed
  3120. on (with a HK_INPUT, your hook could dispatch the message itself,
  3121. do its thing on return, then terminate further processing).
  3122. Sorry 'bout that...
  3123.  
  3124.  
  3125.    == == almost usable email address:  rlwalshATpacket.net == ==
  3126. ___________________________________________________________________
  3127.  
  3128.                 |             - DragText v3.1 -
  3129. Rich Walsh      |  A Distinctly Different Desktop Enhancement
  3130. Ft Myers, FL    |  New!  Pickup & Drop for text, and more...
  3131.                 |  http://www.usacomputers.net/personal/rlwalsh/
  3132. ___________________________________________________________________
  3133.  
  3134.  
  3135.  
  3136. --- WtrGate+ v0.93.p7 sn 165
  3137.  * Origin: Usenet: Skynet Titan (1:109/42)
  3138.  
  3139. +----------------------------------------------------------------------------+
  3140.  
  3141. From: crowsort@fto.de                                   12-Nov-99 01:46:01
  3142.   To: All                                               11-Nov-99 16:48:03
  3143. Subj: USE or SPY any distant PC via LAN/INTERNET
  3144.  
  3145. From: crowsort@fto.de
  3146.  
  3147. From: crowsort@fto.de
  3148.  
  3149. From: "Crowsort" <crowsort@universe.com>
  3150.  
  3151. USE or SPY any distant PC via LAN/INTERNET
  3152.  
  3153. How YOU can Hack Windows 95-98-NT... in seconds!
  3154. And use or spy any PC via a LAN or the Internet... as if you were
  3155.  there!
  3156.  
  3157. Platforms concerned:
  3158. --------------------
  3159. => Windows 95/98
  3160. => Windows NT Workstation/Server 3.5, 3.51 and 4.0
  3161. => Windows 2000
  3162.  
  3163. Whether you are a rookie or a seasoned hacker, there are times where
  3164. you want to do something RAPIDLY.
  3165.  
  3166. Some of us worked a lot to enhance password cracking but we have to
  3167. recognize that if passwords have been carefully chosen, it still
  3168.  takes a
  3169. lot of TIME.
  3170.  
  3171. Others are using well-known security holes in NT but we also have to
  3172. recognize that the ways to use those security breaches are not easy
  3173. and it also takes TIME to understand and to implement them.
  3174.  
  3175. There is a way to get all the passwords of *any* version of Windows
  3176. INSTANTLY. There is a way to control a distant machine 'as if you
  3177.  were
  3178. there'.
  3179.  
  3180. Netbus and BO2K were good attempts, I used them for months, but
  3181.  despite of
  3182. what their authors said, using it every day is difficult and
  3183.  frustrating
  3184. enough to
  3185. disgust lazy guys like me... the fact that I cannot see the distant
  3186.  screen
  3187. in
  3188. real-time is really frustrating!
  3189.  
  3190. A friend demonstrated me RA.
  3191.  
  3192. RA (Remote-Anything) is THE solution you were looking for: it shows
  3193.  in
  3194. real-time the distant desktop (like PC-Anywhere and other MB-based
  3195. commercial products) BUT the server (the program you install on the
  3196.  PC
  3197. you want to control) is **80 KB** long...
  3198.  
  3199. You can install it remotely by using the buffer overflows of Outlook
  3200.  Express
  3201. or IE4 or simply by sending it as an Email attachment!
  3202.  
  3203. Better than that: once installed, it does not show in the Task-List,
  3204.  can't
  3205. be discovered or killed with CTRL-ALT-DEL!
  3206.  
  3207. Once you poisoned PCs on a LAN, no need to remember which ones: RA
  3208. is able to find automatically available PCs and displays IP addresses
  3209.  and
  3210. DNS Names! Just click on one of them to be connected!
  3211.  
  3212. And it is so fast that you can see any animation playing on the
  3213.  distant PC
  3214. in real-time!
  3215.  
  3216. All this from one unique tool... Damned, I got it!
  3217. ____________________________________________________
  3218.  
  3219. Here are some of the functions I picked-up from RA's Doc:
  3220.  
  3221. o Connect to a new desktop: opens the Connection Dialog Box which
  3222.  allows you
  3223. to open a
  3224.   new window on a new Desktop (you can watch multiple Desktops at a
  3225.  time).
  3226.  
  3227. o Monitor only: will toggle the passive-monitoring and active-control
  3228.  modes
  3229. (active
  3230.   monitoring allows you to type keys and move the mouse on the
  3231.  distant PC
  3232. while passive
  3233.   monitoring will only allow you to watch only).
  3234.  
  3235. o Full screen: will enter the full-screen mode. You can exit it by
  3236.  typing
  3237. CTRL+ESC and
  3238.   then right-clicking the Master's task bar icon to come back to the
  3239. windowed mode.
  3240.  
  3241. o Remove wallpaper on distant desktop: is useful to minimize the
  3242.  amount of
  3243. data sent
  3244.   over the network. It always speedups a connection.
  3245.  
  3246. o Start Screen Saver: is useful when you want to leave the desktop
  3247.  with a
  3248. screensaver
  3249.   running: when Remote-Anything moves the mouse cursor on a Slave
  3250.  desktop,
  3251. it stops
  3252.   the screensaver if it was running. With this option, you can
  3253.  immediately
  3254. run the
  3255.   screensaver (use this option with the keyboard shortcut to avoid
  3256.  moving
  3257. the mouse
  3258.   in active mode or switch to passive monitoring to activate this
  3259.  menu
  3260. option with
  3261.   the mouse). If the screensaver is password protected, this is a way
  3262.  to
  3263. lock the
  3264.   distant PC.
  3265.  
  3266. o Play a Sound: will make a sound being played on the distant PC.
  3267.  Usually it
  3268. is
  3269.   'ding.wav' but it can be any sound the distant PC registered as the
  3270. default sound.
  3271.  
  3272. o Send commands: will display a Dialog Box equivalent to the
  3273.  Start/Run
  3274. command of
  3275.   Windows 95.
  3276.  
  3277. o Get Passwords of distant PC: get all the network passwords, the
  3278. screensaver password,
  3279.   and the Applications passwords Windows has been asked to remember.
  3280.  
  3281. o Lockup distant PC: Hangs the distant PC which will need to be
  3282.  restarted
  3283. manually.
  3284.  
  3285. o Reboot distant PC: will immediately send the order to reboot to the
  3286. distant PC, this
  3287.   will disconnect you from this Desktop but you can reconnect once
  3288.  the
  3289. distant Windows
  3290.   session is active again.
  3291.  
  3292. o Shut Down distant PC: will shut down the distant PC if it supports
  3293.  shut
  3294. down. You
  3295.   will be disconnected.
  3296. _____________________________________________________
  3297.  
  3298. o How does it work?
  3299.   -----------------
  3300. It is as simple as using Windows 98 itself: move the mouse, type
  3301.  keys, the
  3302. distant PC will do everything you want! It works over LANs and the
  3303.  Internet!
  3304.  
  3305. o Where can I get it?
  3306.   -------------------
  3307. At the moment, you can get it from:
  3308.  
  3309. http://www.twd-industries.com
  3310.  
  3311. You'll have to pay a small fee to the authors to get RA. I can tell
  3312.  you that
  3313. it's worth the price: I simply did things I would never have been
  3314.  able to
  3315. do without it.
  3316. If you have access to a local network, RA will allow you to do
  3317.  whatever
  3318. you want! This tool is so easy to use that every hacker will want it.
  3319.  
  3320. The more you wait, the less what you can do with it will remain a
  3321.  secret!
  3322. But as time goes, I guess it will be available from a lot of other
  3323.  places.
  3324.  
  3325. Have fun!
  3326.  
  3327.    ººººººº
  3328.   ºº ººº ºº
  3329. º   ~   ~   º
  3330. @<ñ>"<ñ>@
  3331.   (       ~      )
  3332.     \  'v=v'   /    The Crowsort is back.
  3333.      |\____/|
  3334. _____________________________________________________
  3335.  
  3336.  
  3337.  
  3338.  
  3339.  
  3340.  
  3341.  
  3342.  
  3343.  
  3344.  
  3345. --- WtrGate+ v0.93.p7 sn 165
  3346.  * Origin: Usenet: Skynet Titan (1:109/42)
  3347.  
  3348. +----------------------------------------------------------------------------+
  3349.  
  3350. From: bob.plyler@fto.de                                 12-Nov-99 01:46:02
  3351.   To: All                                               11-Nov-99 16:48:03
  3352. Subj: Re: SYS_DLLS and superclassing native controls
  3353.  
  3354. From: bob.plyler@fto.de
  3355.  
  3356. From: rplyler@us.spamNOT.ibm.com (Bob Plyler)
  3357. Reply-To: rplyler@us.spamNOT.ibm.com (Bob Plyler)
  3358.  
  3359. In <3828955d.97047@news.demon.co.uk>, kh@no.spam.munot.demon.co.uk
  3360.  (Kevin) writes:
  3361. >I have a massive PM application with hundreds and hundreds of entry
  3362. >fields. It is used on 21 inch montiors and users are complaining
  3363.  that
  3364. >they can't see the entry field cursor on the large screens.
  3365. >Subclassing entry fields is not an option in this environment. So I
  3366. >thought I could superclass WC_ENTRYFIELD. I have created a DLL with
  3367.  an
  3368. >initialisation routine that attempts to get the class info for
  3369. >WC_ENTRYFIELD, store the address of the window proc and register a
  3370. >CS_PUBLIC control called WC_ENTRYFIELD. The intention is that when
  3371.  it
  3372. >receives the focus it can call the original WC_ENTRYFIELD wnd proc
  3373.  and
  3374. >then create a new cursor that is more visible.
  3375.  
  3376. Simple question.  Why not just replace the Cursors?  
  3377. You can replace them with system supplied cursors in
  3378. the Mouse settings.  You can modify these cursors via ICONEDIT
  3379.  
  3380. Bob Plyler
  3381.  
  3382. IBM 3890/XP Engineering  (not an official IBM spokesperson)
  3383.  
  3384.  
  3385.  
  3386. --- WtrGate+ v0.93.p7 sn 165
  3387.  * Origin: Usenet: Skynet Titan (1:109/42)
  3388.  
  3389. +----------------------------------------------------------------------------+
  3390.  
  3391. From: ariek3.14159265358979323846@fto.de                12-Nov-99 01:46:01
  3392.   To: All                                               11-Nov-99 16:48:03
  3393. Subj: Re: VAC++ debugger storage monitor: how to search for specific data?
  3394.  
  3395. From: ariek3.14159265358979323846@fto.de
  3396.  
  3397. From: ariek@attglobal3.14159265358979323846.net (Arie Kazachin)
  3398. Reply-To: ariek3.14159265358979323846@ibm.net
  3399.  
  3400. In message <38285CE8.399C@attglobal.net> - Tue, 09 Nov 1999 12:42:01
  3401. -0500Jerry Stuckle <jstucklex@attglobal.net> writes:
  3402. >
  3403. >Arie,
  3404. >
  3405. >Sorry, you can't search for specific data - I assume part of the
  3406.  reason
  3407. >could be that memory is not necessarily contiguous in OS/2, even
  3408.  with
  3409. >virtual addresses.
  3410. >
  3411. >A trick I've used quite often is to set a pointer to the data I want
  3412.  to
  3413. >monitor, then stop when the pointer is set.  This will give me the
  3414. >address of the data, and I can then set a breakpoint on the change.
  3415. >
  3416.  
  3417. Thanks, Jerry.
  3418.  
  3419. However, this trick only works when debugging a program you write.
  3420. When attempting to do this with already existing executable (and no
  3421.  sources),
  3422. it seems I'll have to let go on tha ability to search for data
  3423.  (unless
  3424. some developing/debugging utilities can do this).
  3425.  
  3426. Regards,
  3427. **********************************************************************
  3428. *******
  3429. *   Arie Kazachin, Israel, e-mail:
  3430.  ariek@attglobal3.14159265358979323846.net *
  3431. **********************************************************************
  3432. *******
  3433. NOTE: before replying, leave only letters in my domain-name. Sorry,
  3434.  SPAM trap.
  3435.  
  3436.  
  3437.  
  3438. --- WtrGate+ v0.93.p7 sn 165
  3439.  * Origin: Usenet: Skynet Titan (1:109/42)
  3440.  
  3441. +----------------------------------------------------------------------------+
  3442.  
  3443. From: joe.heafner@fto.de                                12-Nov-99 01:46:01
  3444.   To: All                                               11-Nov-99 16:48:03
  3445. Subj: sys/param.h and in.h on other systems
  3446.  
  3447. From: joe.heafner@fto.de
  3448.  
  3449. From: Joe Heafner <heafnerj@interpath.com>
  3450.  
  3451. Hi.
  3452.  
  3453. I have some software that was designed to work under EMX, DJGPP, and
  3454. other systems equipped with gcc. It also compiles under VC++ on Win
  3455. systems. The programs make use of the sys/param.h and in.h header
  3456.  files.
  3457. When I attempt to compile the code under MingW32 (the Win32 port of
  3458.  gcc
  3459. 2.9) the compiler complains about not being able to find these header
  3460. files. 
  3461.  
  3462. Can anyone tell me the header files I should use under MingW23 to
  3463. compile these programs?
  3464.  
  3465. Someone else also told me that these particular header files are not
  3466. part of the ANSI/ISO C standard. All I know is that ever
  3467.  compiler/system
  3468. I've tested my software on apparently has these files and experiences
  3469.  no
  3470. problems. The only compiler to have a problem so far is MingW32. If
  3471. these files are not ANSI compliant, what are the appropriate ANSI
  3472.  header
  3473. files to use? The software, I belive (I didn't write this particular
  3474. part), uses these header files for functions needed to check and, if
  3475. necessary, change byte ordering (big endian vs. little endian) in
  3476. certain situations.
  3477.  
  3478.  
  3479.             Thanks,
  3480. -- 
  3481.  
  3482.                         -- Joe Heafner
  3483.  
  3484. Joe Heafner, Astronomy and Physics Instructor. Work:(828)327-7000
  3485.  x4246
  3486. my surname with my first initial at interpath dot com
  3487. http://home.interpath.com/heafnerj/
  3488.  
  3489.  
  3490. --- WtrGate+ v0.93.p7 sn 165
  3491.  * Origin: Usenet: Skynet Titan (1:109/42)
  3492.  
  3493. +----------------------------------------------------------------------------+
  3494.  
  3495. From: bob.eager@fto.de                                  12-Nov-99 01:46:02
  3496.   To: All                                               11-Nov-99 16:48:03
  3497. Subj: Re: sys/param.h and in.h on other systems
  3498.  
  3499. From: bob.eager@fto.de
  3500.  
  3501. From: rde@tavi.co.uk (Bob Eager)
  3502.  
  3503. On Thu, 11 Nov 1999 00:03:10, Joe Heafner <heafnerj@interpath.com> 
  3504. wrote:
  3505.  
  3506. > I have some software that was designed to work under EMX, DJGPP,
  3507.  and
  3508. > other systems equipped with gcc. It also compiles under VC++ on Win
  3509. > systems. The programs make use of the sys/param.h and in.h header
  3510.  files.
  3511. > When I attempt to compile the code under MingW32 (the Win32 port of
  3512.  gcc
  3513. > 2.9) the compiler complains about not being able to find these
  3514.  header
  3515. > files. 
  3516.  
  3517. Where did you get the header files for the other compilers? If in a 
  3518. toolkit, then if MingW32 can't find them you probably have it looking
  3519.  
  3520. in the wrong place.
  3521.  
  3522. > Can anyone tell me the header files I should use under MingW23 to
  3523. > compile these programs?
  3524.  
  3525. The same ones you used for the others.
  3526.  
  3527. > Someone else also told me that these particular header files are
  3528.  not
  3529. > part of the ANSI/ISO C standard. All I know is that ever
  3530.  compiler/system
  3531. > I've tested my software on apparently has these files and
  3532.  experiences no
  3533. > problems.
  3534.  
  3535. That's right. These headers are non-ANSI. The sys\param.h is 
  3536. essentially a kernel configuration file on UNIX systems. The 
  3537. occasional constant in there escapes for use by programs. The in.h
  3538.  (in
  3539. netinet\in.h on my system) contains networking stuff.
  3540.  
  3541. > The only compiler to have a problem so far is MingW32.
  3542.  
  3543. Sounds like the setup.
  3544.  
  3545. > If
  3546. > these files are not ANSI compliant, what are the appropriate ANSI
  3547.  header
  3548. > files to use?
  3549.  
  3550. There aren't.
  3551.  
  3552. > The software, I belive (I didn't write this particular
  3553. > part), uses these header files for functions needed to check and,
  3554.  if
  3555. > necessary, change byte ordering (big endian vs. little endian) in
  3556. > certain situations.
  3557.  
  3558. I can believe that the files you mention contain these functions. But
  3559.  
  3560. they aren't part of ANSI. Saying that you've seen them on every
  3561.  system
  3562. so far doesn' MAKE then suddnly ANSI.
  3563.  
  3564. I repeat, I think the set of headers you're using with the compiler
  3565.  is
  3566. incomplete. Or its INCLUDE environment variable isn't picking up the 
  3567. toolkit directory.
  3568. -- 
  3569. Bob Eager
  3570. rde at tavi.co.uk
  3571. PC Server 325; PS/2s 8595*3, 9595*3 (2*P60 + P90), 8535, 8570,
  3572.  9556*2,
  3573. 8580*6,
  3574. 8557*2, 8550, 9577, 8530, P70, PC/AT..
  3575.  
  3576.  
  3577. --- WtrGate+ v0.93.p7 sn 165
  3578.  * Origin: Usenet: Skynet Titan (1:109/42)
  3579.  
  3580. +----------------------------------------------------------------------------+
  3581.  
  3582. From: cbzh@fto.de                                       12-Nov-99 01:46:03
  3583.   To: All                                               11-Nov-99 16:48:03
  3584. Subj: Problems when handling WM_PAINT in a second thread
  3585.  
  3586. From: cbzh@fto.de
  3587.  
  3588. From: cbzh@my-deja.com
  3589.  
  3590. In a graphics application I am passing all WM_PAINT messages on to a
  3591. worker thread ("object window") for doing the real painting because
  3592.  it
  3593. takes some time to complete and I do not want to block the program
  3594. entirely. The user can issue e.g. a "zoom in" command while the
  3595.  graphics
  3596. is still being drawn and the response is immediate: Stop the first
  3597. repaint and start a new one with everything enlarged, etc. Works so
  3598.  far
  3599. very nicely.
  3600.  
  3601. However, a problem arises when I want to resize the window: It
  3602.  happens
  3603. frequently that the size just "jumps" to something completely wrong,
  3604. e.g. width zero or so. It only happens if the "move whole windows"
  3605. option is turned on, i.e. resizing means a whole avalanche of
  3606.  WM_PAINT
  3607. messages are arriving and competing with each other. I found a way to
  3608. handle this, with partial success, trying to set a flag "don't
  3609.  repaint"
  3610. while a resize action is on the way. In most cases this prevents the
  3611. strange "jumping resize", but still not always. OTOH sometimes the
  3612.  final
  3613. repaint doesn't seem to work and has to be forced somehow manually.
  3614.  
  3615. There is a certain chance that the problem even has something to do
  3616.  with
  3617. the multiple desktop feature of OD which I am running (v1.52
  3618. "professional").
  3619.  
  3620. QUESTION:
  3621.  
  3622. Does anybody see an entirely different setup for achieving the
  3623. responsiveness I want while long repaints are going on without
  3624.  running
  3625. into the problems I got?
  3626.  
  3627. Greetings and thanks for any hints,
  3628.  
  3629. Cornelis Bockemⁿhl
  3630.  
  3631. e-mail: cbockem@datacomm.ch
  3632. author of "PmAs - Astronomy for the Presentation Manager"
  3633. at http://www.datacomm.ch/cobo
  3634.  
  3635.  
  3636. Sent via Deja.com http://www.deja.com/
  3637. Before you buy.
  3638.  
  3639.  
  3640. --- WtrGate+ v0.93.p7 sn 165
  3641.  * Origin: Usenet: Skynet Titan (1:109/42)
  3642.  
  3643. +----------------------------------------------------------------------------+
  3644.  
  3645. From: jstucklex@fto.de                                  12-Nov-99 01:46:03
  3646.   To: All                                               11-Nov-99 16:48:03
  3647. Subj: Re: Problems when handling WM_PAINT in a second thread
  3648.  
  3649. From: jstucklex@fto.de
  3650.  
  3651. From: Jerry Stuckle <jstucklex@attglobal.net>
  3652. Reply-To: jstucklex@global.net
  3653.  
  3654. I've done a lot with painting like this - especially things which
  3655.  take a
  3656. long time like changing the sizes of bitmaps.
  3657.  
  3658. I've found the easiest way to do it is to do your painting to a
  3659.  memory
  3660. PS.  Then when you get the WM_PAINT messages, just BitBlt the memPS
  3661.  to
  3662. the window PS.
  3663.  
  3664. cbzh@my-deja.com wrote:
  3665. > In a graphics application I am passing all WM_PAINT messages on to
  3666.  a
  3667. > worker thread ("object window") for doing the real painting because
  3668.  it
  3669. > takes some time to complete and I do not want to block the program
  3670. > entirely. The user can issue e.g. a "zoom in" command while the
  3671.  graphics
  3672. > is still being drawn and the response is immediate: Stop the first
  3673. > repaint and start a new one with everything enlarged, etc. Works so
  3674.  far
  3675. > very nicely.
  3676. > However, a problem arises when I want to resize the window: It
  3677.  happens
  3678. > frequently that the size just "jumps" to something completely
  3679.  wrong,
  3680. > e.g. width zero or so. It only happens if the "move whole windows"
  3681. > option is turned on, i.e. resizing means a whole avalanche of
  3682.  WM_PAINT
  3683. > messages are arriving and competing with each other. I found a way
  3684.  to
  3685. > handle this, with partial success, trying to set a flag "don't
  3686.  repaint"
  3687. > while a resize action is on the way. In most cases this prevents
  3688.  the
  3689. > strange "jumping resize", but still not always. OTOH sometimes the
  3690.  final
  3691. > repaint doesn't seem to work and has to be forced somehow manually.
  3692. > There is a certain chance that the problem even has something to do
  3693.  with
  3694. > the multiple desktop feature of OD which I am running (v1.52
  3695. > "professional").
  3696. > QUESTION:
  3697. > Does anybody see an entirely different setup for achieving the
  3698. > responsiveness I want while long repaints are going on without
  3699.  running
  3700. > into the problems I got?
  3701. > Greetings and thanks for any hints,
  3702. > Cornelis Bockemⁿhl
  3703. > e-mail: cbockem@datacomm.ch
  3704. > author of "PmAs - Astronomy for the Presentation Manager"
  3705. > at http://www.datacomm.ch/cobo
  3706. > Sent via Deja.com http://www.deja.com/
  3707. > Before you buy.
  3708.  
  3709. -- 
  3710.  
  3711. =======================================================
  3712. To reply, delete the "x" from my email address
  3713.  
  3714. Jerry Stuckle
  3715. jstucklex@attglobal.net
  3716. JDS Computer Training Corp.
  3717. Sun Certified Java Programmer
  3718. VisualAge/Java Certified Advanced Technical Expert
  3719. VisualAge/C++ Certified Developer
  3720.  
  3721. =======================================================
  3722.  
  3723.  
  3724. --- WtrGate+ v0.93.p7 sn 165
  3725.  * Origin: Usenet: Skynet Titan (1:109/42)
  3726.  
  3727. +----------------------------------------------------------------------------+
  3728.  
  3729. From: awremovethismg@yesic.com                          11-Nov-99 14:45:04
  3730.   To: All                                               11-Nov-99 16:48:03
  3731. Subj: SOMobjects Toolkit Availability?
  3732.  
  3733. From: "andrew g" <awremovethismg@yesic.com>
  3734.  
  3735. If you know where on IBM I can find the SOMobjects toolkit, please let me
  3736. know.
  3737.  
  3738. Thanks,
  3739.  
  3740. andrew
  3741.  
  3742.  
  3743. --- WtrGate+ v0.93.p7 sn 165
  3744.  * Origin: Usenet: Introits and Graduals Co. (1:109/42)
  3745.  
  3746. +----------------------------------------------------------------------------+
  3747.  
  3748. From: kh@no.spam.munot.demon.co.uk                      11-Nov-99 21:32:23
  3749.   To: All                                               11-Nov-99 19:59:17
  3750. Subj: Re: SYS_DLLS and superclassing native controls
  3751.  
  3752. From: kh@no.spam.munot.demon.co.uk (Kevin)
  3753.  
  3754. On 11 Nov 1999 12:52:33 GMT, rplyler@us.spamNOT.ibm.com (Bob Plyler)
  3755. wrote:
  3756.  
  3757. >In <3828955d.97047@news.demon.co.uk>, kh@no.spam.munot.demon.co.uk (Kevin)
  3758. writes:
  3759. >>I have a massive PM application with hundreds and hundreds of entry
  3760. >>fields. It is used on 21 inch montiors and users are complaining that
  3761. >>they can't see the entry field cursor on the large screens.
  3762. >>Subclassing entry fields is not an option in this environment. So I
  3763. >>thought I could superclass WC_ENTRYFIELD. I have created a DLL with an
  3764. >>initialisation routine that attempts to get the class info for
  3765. >>WC_ENTRYFIELD, store the address of the window proc and register a
  3766. >>CS_PUBLIC control called WC_ENTRYFIELD. The intention is that when it
  3767. >>receives the focus it can call the original WC_ENTRYFIELD wnd proc and
  3768. >>then create a new cursor that is more visible.
  3769. >
  3770. >Simple question.  Why not just replace the Cursors?  
  3771. >You can replace them with system supplied cursors in
  3772. >the Mouse settings.  You can modify these cursors via ICONEDIT
  3773.  
  3774. You're thinking of pointers. I want to replace the cursors - those
  3775. blinking lines you see in entry fields. These are drawn dynamically by
  3776. the system - there is no bitmap for them.
  3777.  
  3778. >
  3779. >Bob Plyler
  3780. >
  3781. >IBM 3890/XP Engineering  (not an official IBM spokesperson)
  3782.  
  3783. --- WtrGate+ v0.93.p7 sn 165
  3784.  * Origin: Usenet: Organization (1:109/42)
  3785.  
  3786. +----------------------------------------------------------------------------+
  3787.  
  3788. From: kh@no.spam.munot.demon.co.uk                      11-Nov-99 21:32:24
  3789.   To: All                                               11-Nov-99 19:59:17
  3790. Subj: Re: SYS_DLLS and superclassing native controls
  3791.  
  3792. From: kh@no.spam.munot.demon.co.uk (Kevin)
  3793.  
  3794. Peter,
  3795.  
  3796. Thanks so much for your code. I took the advice from you and Rich and
  3797. used the SENDMSG hook. I intercept WM_CONTROL messages for
  3798. EN_SETFOCUS/MLN_SETFOCUS and create my cursor. Had to add code for
  3799. WM_BUTTON1UP, but it works like a charm.
  3800.  
  3801. Your code helped me find my fatal error - the hook procedure has to be
  3802. EXPENTRY, not APIENTRY. I hate when that happens! So that made a mess
  3803. of the stack.
  3804.  
  3805. Just have some fine tuning for MLEs (imagine that) and a setup utility
  3806. and its done. Now that I don't need the fprintfs any more, I can also
  3807. drop the C runtime. Could you possibly post me an OBJ for your ASM
  3808. entry point code? I don't have access to MASM and without it I have to
  3809. use the C runtime and its _DLL_InitTerm function to do my own
  3810. initialisation procedure.
  3811.  
  3812. Would post the code somewhere, if I only knew where or thought that
  3813. any but the hard core were still doing OS/2!
  3814.  
  3815. thanks again,
  3816. Kevin
  3817.  
  3818.  
  3819. On Fri, 12 Nov 1999 01:46:01 GMT, peter.fitzsimons@fto.de wrote:
  3820.  
  3821. >From: peter.fitzsimons@fto.de
  3822. >
  3823. >From: Peter Fitzsimons <pfitz@ican.net>
  3824. >
  3825. >> I list my DLL in SYS_DLLS->LoadEachProcess (or whatever it's
  3826. > called).
  3827. >> The DLL loads and executes its initialisation. WinQueryClassInfo
  3828. > gets
  3829. >> TRUE for WC_ENTRYFIELD. WinRegisterClass for WC_ENTRYFIELD with
  3830. >> CS_PUBLIC gets FALSE. But after re-booting, any window with an
  3831. > entry
  3832. >> field traps. This tends to indicate that my wndproc is being
  3833. > called,
  3834. >
  3835. >How are you defining your data segments?  ie:"single shared", or
  3836. > what?
  3837. >
  3838. >If you are loading anything (like a pointer/icon/bmp) you have to do
  3839. > it
  3840. >for each app, which probably forces you do use an "initinstance
  3841. > multiple
  3842. >nonshared" dll. So keep your data segment size down, and try to
  3843. > compile
  3844. >/Rn.
  3845. >
  3846. >I have code that subclasses the titlebar for every app with a sys_dll
  3847. >"load once" entry.  It installs a msg hook, that looks for WM_CREATE
  3848. >messages;  if the window is what I'm looking for, then I subclass it
  3849. >"live". I'm a resource freak and the thought of "loadperprocess" and
  3850. >"mutliple data" offended me at the time (1995, when I only had 24mb
  3851. > of
  3852. >memory I think :).
  3853. >
  3854. >Anyway, you're welcome to the code if you like.
  3855. >
  3856. >
  3857. >
  3858.  
  3859. --- WtrGate+ v0.93.p7 sn 165
  3860.  * Origin: Usenet: Organization (1:109/42)
  3861.  
  3862. +----------------------------------------------------------------------------+
  3863.  
  3864. From: jstucklex@attglobal.net                           11-Nov-99 15:39:17
  3865.   To: All                                               11-Nov-99 19:59:17
  3866. Subj: Re: Problems when handling WM_PAINT in a second thread
  3867.  
  3868. From: Jerry Stuckle <jstucklex@attglobal.net>
  3869.  
  3870. Cornelis,
  3871.  
  3872. > Or maybe with a modification: The "object window" draws into a memory PS
  3873. > and from time to time sends a message to the main thread telling it to
  3874. > copy the current image to the screen... (??!)
  3875.  
  3876. Yes - after drawing into the object window, the object thread
  3877. invalidates the main window, causing a WM_PAINT message to be posted and
  3878. the main window redrawn.
  3879.  
  3880.  
  3881. -- 
  3882.  
  3883. =======================================================
  3884. To reply, delete the "x" from my email address
  3885.  
  3886. Jerry Stuckle
  3887. jstucklex@attglobal.net
  3888. JDS Computer Training Corp.
  3889. Sun Certified Java Programmer
  3890. VisualAge/Java Certified Advanced Technical Expert
  3891. VisualAge/C++ Certified Developer
  3892.  
  3893. =======================================================
  3894.  
  3895. --- WtrGate+ v0.93.p7 sn 165
  3896.  * Origin: Usenet: JDS Computer Training Corp. (1:109/42)
  3897.  
  3898. +----------------------------------------------------------------------------+
  3899.  
  3900. From: uno@40th.com                                      11-Nov-99 21:51:15
  3901.   To: All                                               11-Nov-99 19:59:17
  3902. Subj: Re: SYS_DLLS and superclassing native controls
  3903.  
  3904. From: uno@40th.com (uno@40th.com)
  3905.  
  3906. Kevin? (kh@no.spam.munot.demon.co.uk?) wrote (Thu, 11 Nov 1999 21:32:47 GMT):
  3907. >You're thinking of pointers. I want to replace the cursors - those
  3908. >blinking lines you see in entry fields. These are drawn dynamically by
  3909.  
  3910. You're thinking of the caret.  The mouse cursor is a cursor.  The text
  3911. cursor is a caret.
  3912.  
  3913.  '`'`'`'`'`'`'`'`'`'`'`'`'`'`'`'`'`'`'`'`'`'`'`'`'`'`'`'`'`'`'`'`'`'`'
  3914.  Corne1 Huth  -  http://40th.com/
  3915.  Bullet database engines/servers 3.1  Win32-WinCE-OS2-Linux+
  3916.  
  3917. --- WtrGate+ v0.93.p7 sn 165
  3918.  * Origin: Usenet: Yanaguana (1:109/42)
  3919.  
  3920. +----------------------------------------------------------------------------+
  3921.  
  3922. From: bvermo@powertech.no                               11-Nov-99 22:18:21
  3923.   To: All                                               11-Nov-99 19:59:17
  3924. Subj: Re: Detecting MMX processor
  3925.  
  3926. From: =?iso-8859-1?Q?Bj=F8rn?= Vermo <bvermo@powertech.no>
  3927.  
  3928. Mads Orbesen Troest wrote:
  3929.  
  3930. >
  3931. > .. or simply make sure it is a >= Pentium processor before using the
  3932. > cpuid method. MMX extensions do not exist for processors below
  3933. > Pentium.
  3934. >
  3935.  
  3936. The old IIT 80c287 had something very like it. I have one in my old OS/2 1.3
  3937. computer.
  3938.  
  3939.  
  3940. --- WtrGate+ v0.93.p7 sn 165
  3941.  * Origin: Usenet: Norbionics (1:109/42)
  3942.  
  3943. +----------------------------------------------------------------------------+
  3944.  
  3945. From: bschwand@dvart.com                                11-Nov-99 15:30:04
  3946.   To: All                                               11-Nov-99 21:27:04
  3947. Subj: redirect stdio from program for rexx processing
  3948.  
  3949. From: bruno schwander <bschwand@dvart.com>
  3950.  
  3951. Hi all,
  3952. I need to write a rexx script that will start an executable program and
  3953. communicate with this program through its standard input/output. How do
  3954. I do this ? I know how to redirect the program's output to a file, but
  3955. I'd like to redirect it to (for example) a rexx queue, so that the rexx
  3956. script can just pull the output from that queue. And the same for the
  3957. input of the program.
  3958.  
  3959. Any idea how to do this ?
  3960.  
  3961. bruno
  3962.  
  3963. --- WtrGate+ v0.93.p7 sn 165
  3964.  * Origin: Usenet: Posted via Supernews, http://www.supernews.com (1:109/42)
  3965.  
  3966. +----------------------------------------------------------------------------+
  3967.  
  3968. From: joe_heafner@my-deja.com                           11-Nov-99 18:17:08
  3969.   To: All                                               12-Nov-99 03:36:02
  3970. Subj: Re: sys/param.h and in.h on other systems
  3971.  
  3972. From: joe_heafner@my-deja.com
  3973.  
  3974. In article <176uZD2KcidF-pn2-mfXb5X5VVrhc@rikki>,
  3975.   rde@tavi.co.uk (Bob Eager) wrote:
  3976. > On Thu, 11 Nov 1999 00:03:10, Joe Heafner <heafnerj@interpath.com>
  3977. > wrote:
  3978. >
  3979. > > I have some software that was designed to work under EMX, DJGPP, and
  3980. > > other systems equipped with gcc. It also compiles under VC++ on Win
  3981. > > systems. The programs make use of the sys/param.h and in.h header
  3982. files.
  3983. > > When I attempt to compile the code under MingW32 (the Win32 port of
  3984. gcc
  3985. > > 2.9) the compiler complains about not being able to find these
  3986. header
  3987. > > files.
  3988. >
  3989. > Where did you get the header files for the other compilers? If in a
  3990. > toolkit, then if MingW32 can't find them you probably have it looking
  3991. > in the wrong place.
  3992. >
  3993. These header files are part of the standard distributions. I'm not using
  3994. any toolkits (don't even have any).
  3995.  
  3996. > > Can anyone tell me the header files I should use under MingW23 to
  3997. > > compile these programs?
  3998. >
  3999. > The same ones you used for the others.
  4000. >
  4001. Aha....but they don't exist.
  4002.  
  4003. > > The only compiler to have a problem so far is MingW32.
  4004. >
  4005. > Sounds like the setup.
  4006. >
  4007. I followed the setup docs to the letter. Basically, all I had to do was
  4008. unzip the package into its home directory.
  4009.  
  4010. > > The software, I belive (I didn't write this particular
  4011. > > part), uses these header files for functions needed to check and, if
  4012. > > necessary, change byte ordering (big endian vs. little endian) in
  4013. > > certain situations.
  4014. >
  4015. > I can believe that the files you mention contain these functions. But
  4016. > they aren't part of ANSI. Saying that you've seen them on every system
  4017. > so far doesn' MAKE then suddnly ANSI.
  4018. >
  4019. Sure, I know that. But it is kinda weird that only one compiler doesn't
  4020. seem to have then.
  4021.  
  4022. > I repeat, I think the set of headers you're using with the compiler is
  4023. > incomplete. Or its INCLUDE environment variable isn't picking up the
  4024. > toolkit directory.
  4025. >
  4026. This is a possibility. I'll check into it.
  4027.  
  4028. Thanks!
  4029.  
  4030. --
  4031. Joe Heafner -- Astronomer
  4032. http://home.interpath.com/heafnerj/
  4033.  
  4034.  
  4035. Sent via Deja.com http://www.deja.com/
  4036. Before you buy.
  4037.  
  4038. --- WtrGate+ v0.93.p7 sn 165
  4039.  * Origin: Usenet: Deja.com - Before you buy. (1:109/42)
  4040.  
  4041. +----------------------------------------------------------------------------+
  4042.  
  4043. From: zachmcleod@earthlink.net                          12-Nov-99 14:49:22
  4044.   To: All                                               12-Nov-99 21:25:09
  4045. Subj: Real Modem
  4046.  
  4047. From: Don McLeod <zachmcleod@earthlink.net>
  4048.  
  4049. I have a 3Com/USR Internet Voice/Fax modem. I can't get the thing to run
  4050. under OS/2 Warp 4. It's NOT a WINMODEM. I can get it to run fine under
  4051. DOS, or Linux, but not Warp 4. Does anyone have any suggestions? I've
  4052. tried copying the initialize strings and using different modems types
  4053. but nothing seems to work.
  4054.  
  4055. Thank-you,
  4056. Zach McLeod
  4057. zachmcleod@earthlink.net
  4058.  
  4059.  
  4060. --- WtrGate+ v0.93.p7 sn 165
  4061.  * Origin: Usenet: EarthLink Network, Inc. (1:109/42)
  4062.  
  4063. +----------------------------------------------------------------------------+
  4064.  
  4065. From: awremovethismg@yesic.com                          12-Nov-99 18:37:01
  4066.   To: All                                               12-Nov-99 21:25:09
  4067. Subj: Re: SOMobjects Toolkit Availability?
  4068.  
  4069. From: "andrew g" <awremovethismg@yesic.com>
  4070.  
  4071. On 12 Nov 1999 17:51:06 +0100, Martin Schafföner wrote:
  4072.  
  4073. >You can't anymore.  The 2.1 version is included with os/2 toolkits, 
  4074. >and the 3.0 version, which is corba 2.0 compliant and which never 
  4075. >officially got released, is no more available for download.
  4076.  
  4077. I found the version 3 SOMobjects Toolkit at
  4078. http://www-4.ibm.com/software/ad/som/som30tk.html
  4079. but it's version 2 I want, as my compiler is CSET++ 2.01.
  4080.  
  4081. I can't find this version on IBM at all. <sadness>
  4082.  
  4083. andrew
  4084.  
  4085.  
  4086. --- WtrGate+ v0.93.p7 sn 165
  4087.  * Origin: Usenet: Introits and Graduals Co. (1:109/42)
  4088.  
  4089. +----------------------------------------------------------------------------+
  4090.  
  4091. From: jpolt@bradnet.legend.co.uk                        12-Nov-99 23:26:15
  4092.   To: All                                               12-Nov-99 21:25:09
  4093. Subj: Re: Problem installing a modem on an OS/2 workstation
  4094.  
  4095. From: jpolt@bradnet.legend.co.uk (John Poltorak)
  4096.  
  4097. In <19991112153602.05576.00000465@ng-cq1.aol.com>, sruli87202@aol.com
  4098. (SRuli87202) writes:
  4099. >Can somebody help me out here? 
  4100. >
  4101. >I am trying to install a modem on an IBM 730 MT:6877-KAE PC that is running
  4102. >OS/2 WARP 4.  I have already installed of the TCPIP/ Internet software and
  4103. the
  4104. >modem card.  
  4105. >
  4106. >When I click on the Dial button on the OS/2 Internet dialer, I get this error
  4107. >message:
  4108. >    PPP Driver Failure.
  4109. >    Connection ERROR
  4110. >
  4111. >I have already verified that the COM port and IRQ settings are correctly set
  4112. up
  4113. >on the jumper settings on the card and that the right COM port was selected
  4114. on
  4115. >the dialer.  The COM.SYS driver  in the CONFIG.SYS file is set to
  4116. >DEVICE=D:\OS2\BOOT\COM.SYS(3,3e8,5). COM Port 3 IRQ5.
  4117. >
  4118. >I figured that it should be okay to use IRQ5 since there is no sound card
  4119. >installed on this computer.
  4120. >
  4121. >I am fairly sure this means that I need to load a driver for this modem. 
  4122. This
  4123. >however is a first for me.  I have never had to load a driver for a modem
  4124. >before.  All of the other modem that I installed worked without having to
  4125. load
  4126. >anything.  Maybe it's because this modem has Plug and Play capability.  This
  4127. is
  4128. >the Name, Type and Model number of the modem that I installed.
  4129. >
  4130. >    Name & Type.
  4131. >        ACCURA Hayes 33.6 Internal modem
  4132. >    These numbers were taken off of the back of the modem.
  4133. >        Acc336
  4134. >        5636US
  4135. >        V1.510
  4136. >
  4137. >The modem did come with a diskette that had device drivers but none of them
  4138. >were for OS/2.  There was one written for windows 3.1 that I tried to load
  4139. for
  4140. >WIN-OS/2 thinking that I could just set it all up under WIN-OS/2 but I kept
  4141. >getting an error messages when I tried to install it.
  4142. >
  4143. >
  4144. >So here's my question or questions.
  4145. >    1    Am I correct in thinking that this error message means 
  4146. >        that I need to load a driver?
  4147.  
  4148. Unless it's a WinModem you don't need any device drivers.
  4149.  
  4150. Just get hold of a terminal emulator/comms program such as TE/2.
  4151.  
  4152. Start it up, and after set up the com port, speed etc., type ATZ
  4153. and see if returns OK. If that works use the command to display
  4154. the modems current settings - ATI5 on a USR modem - not sure how
  4155. standard this is though... You'd need to consult your modem manual.
  4156.  
  4157. If this works, you know your computer is talking to your modem,
  4158. so you can then look at any problems you may have setting up the
  4159. dialer.  
  4160.  
  4161.  
  4162.  
  4163. >    2    If I do need to load a driver in order for this modem         
  4164. >to work, is there one available for OS/2?
  4165. >
  4166. >Of course any help that you could give me regarding this would be greatly
  4167. >appreciated.
  4168. >
  4169. >Thank you for taking the time to read this post.
  4170. >
  4171. >Sincerely,
  4172. >Steve Rulison
  4173. >
  4174.  
  4175. --- WtrGate+ v0.93.p7 sn 165
  4176.  * Origin: Usenet: Legend Internet Ltd (1:109/42)
  4177.  
  4178. +----------------------------------------------------------------------------+
  4179.  
  4180. +============================================================================+
  4181.