home *** CD-ROM | disk | FTP | other *** search
/ Mega Top 1 / os2_top1.zip / os2_top1 / INFO / DIVSINFO / FORUM / OS2REXX.INF (.txt) < prev    next >
OS/2 Help File  |  1994-05-10  |  170KB  |  4,153 lines

  1.  
  2. ΓòÉΓòÉΓòÉ 1. About this forum ΓòÉΓòÉΓòÉ
  3.  
  4.      TALKLINK
  5.  
  6.      Welcome to the world of TalkLink, a unique, new conferencing
  7.      service  offered  by  IBM. Using TalkLink, you can "talk" to
  8.      customers, IBMers  and  personnel  of  our  many  affiliates
  9.      around  the world - anywhere, anytime.  TalkLink is designed
  10.      for people like yourself, who want to get the  most  out  of
  11.      their  investment  in  computing  products  and  services.
  12.      TalkLink "links" you directly into the development and  sup-
  13.      port  communities of customers, IBM and affiliates. Our goal
  14.      is to help you be as effective as you  can  with  access  to
  15.      many conferences, vast databases and rich libraries.
  16.  
  17.      HIGHLIGHTS
  18.  
  19.      TalkLink  provides  the following capabilities for customers
  20.      to review information electronically, submit questions  re-
  21.      quests and receive answers  information.
  22.      -  Conferences and forums -- question and  answer  bulletin
  23.        boards  for  you to ask questions and help others with a
  24.        wide variety of products and services.  Items posted  on
  25.        this  bulletin  board  are shared between BBS users, IBM
  26.        personnel and affiliates worldwide.
  27.      -  Customer-to-customer messaging  --  customers  can  send
  28.        private messages to each other.
  29.      -  Support   --  customers  can submit or view problem re-
  30.        ports.  These entries  will  be  responded  to  by  the
  31.        conference/forum  owner,  normally within a certain time
  32.        period. Users can also place orders for product  related
  33.        materials.
  34.      -  Software  library  -- downloads application programs and
  35.        uploads contributions.
  36.      -  News and announcements --  contains  recent  information
  37.        regarding products and services.
  38.      -  Modes of operation:
  39.        -  Interactive  -- Users  are  connected  online  to
  40.          TalkLink while using its facilities.
  41.        -  Batch  -- Users can download  the  forums  to  their
  42.          personal  computer  and  read the entries  offline.
  43.          Users can also respond offline and the entries  will
  44.          be saved and sent to the host the next time the user
  45.          is  connected in batch mode.  Initially, this facil-
  46.          ity is available for  OS/2  (R)  users only.
  47.      -  Access:
  48.                                    1
  49.        -  Advantis -- local call from most cities  within  the
  50.          US.
  51.        -  Internet -- telnet avaialable now, full ftp soon.
  52.  
  53.      SEARCH SERVICE
  54.  
  55.      -  Search IBM databases via interactive mode -- This search
  56.        facility  includes  a large question and answer database
  57.        of items, IBM System  Center  Flashes,  and IBM's  prob-
  58.        lem  management libraries. This database contains infor-
  59.        mation  about  problems  and  fixes.  Not  all  general
  60.        discussion  forums have related information in these da-
  61.        tabases.
  62.  
  63.      TALKLINK FEES  CHARGES
  64.  
  65.      -  $15.00  Registration  Fee (one-time charge for each user
  66.        registration)
  67.      -  $18.00 Monthly Availability Charge  (includes  unlimited
  68.        hourly service)
  69.      -  This can be charged to a credit card or invoiced (for an
  70.        additional  administrative fee of $7.00 for each monthly
  71.        invoice).
  72.  
  73.      HOW TO ORDER TALKLINK
  74.  
  75.      Call 1-800-547-1283 to sign up for TalkLink.
  76.      Outside of the United States please contact your
  77.      local IBM sales office for availability and access.
  78. ********************************************************************** 
  79.  
  80.  
  81. ΓòÉΓòÉΓòÉ 2. Introduction ΓòÉΓòÉΓòÉ
  82.  
  83. ===== OS2REXX CFORUM created at 01:49:24 on 92/04/08 GMT (by HOPKINS at AUSVM8)
  84.               IBM UNCLASSIFIED
  85.               ------------
  86. The information in this forum is considered by IBM to be
  87.    external and may be shared by everyone who is given access.
  88.    This forum is shared with the internal IBM employee conferences.
  89.  
  90. Forum: OS2REXX CFORUM
  91.  
  92. Forum subject: Procedures Language/2 REXX for OS/2
  93.  
  94. This FORUM is provided as a conferencing tool to promote
  95.       discussion on topics related to Procedures Language/2 REXX
  96.       for OS/2, and present issues, questions, or problems related
  97.       to the use of REXX for OS/2.
  98.       A new, 32-bit Procedures Language/2 REXX is included with
  99.       OS/2 2.0.  It is significantly faster than the previous
  100.       16-bit version shipped in OS/2 1.3 and includes online
  101.       documentation.  New REXX utilities functions provide better
  102.       access to system services such as the Workplace Shell.
  103.  
  104. Contributions must not contain confidential or proprietary information.
  105.  
  106. The Material in this forum is shared with the internal IBM employee
  107. conferences.
  108.  
  109. The Material in this forum is considered by IBM to be proprietary and
  110. your use of it is subject to the following conditions.
  111.  
  112. IBM grants you a non exclusive, and paid-up right and license to use
  113. (internally only) any Material distributed to the TalkLink Conferencing
  114. Service.  You shall not reproduce, prepare derivative work based upon,
  115. or distribute (internally or externally), any Material distributed to
  116. the TalkLink Conferencing Service.
  117.  
  118. You grant to us a non exclusive, and paid-up right and license to (1)
  119. use, execute, display, reproduce, and prepare and have prepared
  120. derivative works based upon, and distribute (internally and externally)
  121. any Material you distribute to the TalkLink Conferencing Service and (2)
  122. authorize others to do any, some or all of the foregoing.
  123.  
  124. Contributions must not contain confidential or propriety information.
  125.  
  126. All subscribers are required to abide at all time by the conference rules
  127. described in the Bulletin Board Rules under "News and Announcements".
  128.  
  129. All IBM personnel are required to abide at all times by the IBMPC RULES
  130. and the IBM Business Conduct Guidelines.  IBM personnel will read the
  131. CUSTOMER FORUM RULES in IBMPC RULES before contributing.
  132.  
  133. Contributions violating these will be deleted by the CFORUM Owner or
  134. their delegate, and in some cases by an IBM conference Administrator.
  135.  
  136. The OS2BBS CFORUM is where anyone may raise concerns regarding rules
  137. violations found in this and other CFORUMS.
  138.  
  139. The Owner of this forum is:
  140.  Name:       Dick Goran
  141.  Mailing Address: C F S Nevada, Inc
  142.          953 E. Sahara Avenue Suite 9B
  143.          Las Vegas, Nevada 89104-3012
  144.  Phone:  Voice 702-732-9616  FAX 702-732-3847
  145.  
  146. TalkLink Id DEV4672
  147.    CompuServe 72200,347
  148.  
  149. The IBM Administrator of this forum is:
  150.   Name:       Paul Cheatham
  151.   Mailing Address: Boca Electronic Support Team ( BEST )
  152.           1000 N.W. 51st Street
  153.           Internal Zip 1426-012/W2030
  154.           Boca Raton,  FL  33429
  155.   IBM Node/Userid: BCRVM1/CHEATHAM
  156.   TalkLink Userid: LNK9/LNK9030
  157.  
  158. See OS2REXX  931CFORU on OS2BBS  for appends to 92/12/18 (5011 lines)
  159.  See OS2REXX  932CFORU on OS2BBS  for appends to 93/03/18 (4492 lines)
  160.  See OS2REXX  933CFORU on OS2BBS  for appends to 93/07/07 (5189 lines)
  161.  See OS2REXX  931CFORU on OS2BBS  for appends to 93/07/30 (4657 lines)
  162.  See OS2REXX  932CFORU on OS2BBS  for appends to 93/09/17 (4473 lines)
  163.  See OS2REXX  933CFORU on OS2BBS  for appends to 93/10/25 (4551 lines)
  164.  See OS2REXX  941CFORU on OS2BBS  for appends to 93/12/15 (4665 lines)
  165.  See OS2REXX  942CFORU on OS2BBS  for appends to 94/01/15 (4491 lines)
  166.  See OS2REXX  943CFORU on OS2BBS  for appends to 94/02/10 (4717 lines)
  167. ..... 4717 lines pruned at 10:21:59 on 94/03/08 ET (by OS2 at YKTVMV) .....
  168.  
  169. ..... 9120 lines pruned at 10:24:16 on 04/05/94 by MLKSERV0 for LNK1SMB
  170.  See OS2REXX AR948783 file for appends from 94/02/10 to 94/03/29
  171.  
  172. ..... 6413 lines pruned at 08:56:59 on 04/26/94 by MLKSERV0 for LNK9032
  173.  See OS2REXX AR945440 file for appends from 94/03/29 to 94/04/20
  174.  
  175. ********************************************************************** 
  176.  
  177.  
  178. ΓòÉΓòÉΓòÉ 3. Julian Date Function Missing ΓòÉΓòÉΓòÉ
  179.  
  180. * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * 
  181. * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
  182.  
  183. > I didn't add anything not already said... sorry.
  184.  
  185. Gene Gough TEAMOS2 PRO*IGY/DWJG89A ATLVM10/GOUGH INTERNET/g_gough@vnet.ibm.com
  186. ********************************************************************** 
  187.  
  188. Does the definition say January 1, 4713 BC has a Julian date of 0?
  189. Just trying to get a picture...
  190.  
  191. Richard S Kilen
  192. ********************************************************************** 
  193.  
  194. Yes, the Julian date of January 1, 4713 BC (Julian calendar) is zero.  Today's
  195. Julian date is 2,449,463.
  196.  
  197. John W. Kennedy - Hoechst Celanese - TIPA - Team OS/2 - The OS/2 Hobbit
  198. ********************************************************************** 
  199.  
  200. So how does this figure in with Star date?  Shouldn't the Rexx supplied
  201. by the "Borg" support that concept?
  202.  
  203. Joe R Wyatt
  204. USAA
  205. San Antonio, Tx
  206. ********************************************************************** 
  207.  
  208.  
  209. ΓòÉΓòÉΓòÉ 4. Julian Date Function Mis ΓòÉΓòÉΓòÉ
  210.  
  211. * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * 
  212. * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
  213.  
  214. >Why 4713? Please, please elaborate...
  215.  
  216. Back in the 16th century, Joseph Justus Scaliger, an astronomer, got tired of
  217. the annoyances of doing date arithmetic, and decided to do something about it.
  218. He multiplied together 15 years (the Cycle of the Indiction, an accounting
  219. cycle of the late Roman Empire that was still used for dating documents), 19
  220. years (the Metonic cycle; 19 solar years are almost exactly equal to 235
  221. months, so most lunar-solar calendars, like the Jewish calendar and the Easter
  222. portion of the Christian calendar, cycle every 19 years, with occasional
  223. adjustments), and 28 years (the cycle of the Julian calendar), to get a period
  224. of 7,980 years, which he felt was good enough for an astronomical baseline.
  225. Convenient zero points of all three cycles happened to coincide in 4713 BC,
  226. which he felt early enough to predate all meaningful astronomical
  227. observations.
  228.  
  229. He named the system in honor of his father Julius Caesar Scaliger, thus:
  230. "Julian date".  By a horrible coincidence, just a few years later, the
  231. Gregorian calendar was introduced, and people searching around for a name for
  232. the old style (which had just been "the calendar" until then) came up with
  233. "Julian calendar," since the system had been introduced by Julius Caesar.
  234. Both terms became too rooted to replace.
  235.  
  236. Here are REXX programs to convert to and from the Julian date.  Arithmetic is
  237. done entire in integers, so the algorithms can be (and have been) translated
  238. quickly and easily into nearly all programming languages without fear of
  239. different rounding rules causing difficulties.
  240.  
  241. /* Convert a date from YMD to Julian */
  242. Arg YMDY, YMDM, YMDD, Trans;
  243. If Trans = '' then Trans = 2299161;
  244. AY = YMDY;
  245. If YMDY < 0 then
  246.  Y = YMDY + 4717;
  247. Else
  248.  Y = YMDY + 4716;
  249. If YMDM < 3 then do;
  250.  M = YMDM + 12;
  251.  Y = Y - 1;
  252.  AY = AY - 1;
  253. End;
  254. Else
  255.  M = YMDM;
  256. D = (1461 * Y) % 4 + (153 * (M + 1)) % 5 + YMDD - 1524;
  257. G = D + 2 - AY % 100 + AY % 400 - AY % 4000;
  258. If G >= Trans then
  259.  Return G;
  260. Else
  261.  Return D;
  262.  
  263. /* Convert a date from Julian to YMD */
  264. Arg J, Trans;
  265. If Trans = '' then Trans = 2299161;
  266. If J < Trans then
  267.  A = J;
  268. Else do;
  269.  AA = J - 1721120;
  270.  AC = AA % 1460969;
  271.  AB = 31 * AC;
  272.  AA = AA - AC * 1460969;
  273.  AC = AA % 146097;
  274.  AB = AB + 3 * AC;
  275.  AA = AA - AC * 146097;
  276.  If AA = 146096 then
  277.   AB = AB + 3;
  278.  Else
  279.   AB = AB + AA % 36524;
  280.  A = J + (AB - 2);
  281. End;
  282. B = A + 1524;
  283. C = (20 * B - 2442) % 7305;
  284. D = 1461 * C % 4;
  285. EE = B - D;
  286. E = 10000 * EE % 306001;
  287. YMDD = EE - 306001 * E % 10000;
  288. If E >= 14 then
  289.  YMDM = E - 13;
  290. Else
  291.  YMDM = E - 1;
  292. If YMDM > 2 then
  293.  Y = C - 4716;
  294. Else
  295.  Y = C - 4715;
  296. If Y < 1 then
  297.  YMDY = Y - 1;
  298. Else
  299.  YMDY = Y;
  300. Return YMDY YMDM YMDD;
  301.  
  302. The "Trans" argument is the date on which transition from the Julian calendar
  303. to the Gregorian calendar is to occur.  It has a default of 2299161, or
  304. October 5/15, 1582, the date the change was made in Rome.  The other common
  305. value is 2361222, or September 3/14, 1752, the date the change was made in the
  306. U.K. (and the future U.S.A.).
  307.  
  308. John W. Kennedy - Hoechst Celanese - TIPA - Team OS/2 - The OS/2 Hobbit
  309. ********************************************************************** 
  310.  
  311.  
  312. ΓòÉΓòÉΓòÉ 5. I/O Ports in REXX ΓòÉΓòÉΓòÉ
  313.  
  314. * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * 
  315. * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
  316.  
  317. Well, I started with IBM in 58 and have never seen that.  Of course
  318. back then we had to put masking tape over the bad words on the card box
  319. that we carried our program decks in :-).  Actually, in all that time
  320. all I have ever seen is the way PROFS will rename an EXEC or MODULE or
  321. XEDIT file as it receives it for you.  What you saw could be a local mod
  322. also.
  323.  
  324. Gene Gough TEAMOS2 PRO*IGY/DWJG89A ATLVM10/GOUGH INTERNET/g_gough@vnet.ibm.com
  325. ********************************************************************** 
  326.  
  327. To: Gene Gough - Append created on 94/04/20 at 22:57 PST
  328.  
  329.    > Well, I started with IBM in 58 and have never seen   <
  330.    > that.                         <
  331.  
  332. Oh, hell. There goes my seniority. <g>
  333.  
  334. I started in the business in 1961 but didn't go to work for IBM until
  335. 1965.
  336.  
  337. Dick Goran                       CIS 72200,347
  338. "REXX Reference Summary Handbook"            1-800-REXXOS2
  339.  
  340.      If you see this line, FORBROWSE didn't steal it!
  341. ********************************************************************** 
  342.  
  343.  
  344. ΓòÉΓòÉΓòÉ 6. Object Oriented Rexx ΓòÉΓòÉΓòÉ
  345.  
  346. * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * 
  347. * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
  348.  
  349. >Made the ftp.cdrom.com cut-off time, just in time it seems.  ROX
  350. >has been moved to /pub/os2/2_x/program/rexx/rox.zip
  351.  
  352. Will the ROX package be available here?
  353.  
  354. Jeff Elkins - GEnie OS/2 Roundtable
  355. ********************************************************************** 
  356.  
  357. Sorry, but I don't know what "here" means.  I uploaded ROX to
  358. Peter (?) Norloff's BBS at 1-703-385-4325 this morning (thanks
  359. for the suggestion, Dick).
  360.  
  361. Patrick Mueller  | IBM Software Solutions, Cary NC; 919-469-7242, tie 883
  362.          | internet: pmuellr@vnet.ibm.com   vnet: pmuellr@carvm3
  363. ********************************************************************** 
  364.  
  365. [Reference to append at 20:54 on 94/04/20 by WZ00379 at HONE82 ] 
  366.  
  367. To: Jeff Elkins - Append created on 94/04/20 at 22:59 PST
  368.  
  369.    > Will the ROX package be available here?        <
  370.  
  371. If Pat doesn't find a claen way of getting it to the Software Library,
  372. since I have a copy that I received properly from the public domain, I
  373. will send it to OS2BBS System Support.
  374.  
  375. Give Pat a day or so to check the political protocol as well as the
  376. gazspacho gateways. <g>
  377.  
  378. Dick Goran                       CIS 72200,347
  379. "REXX Reference Summary Handbook"            1-800-REXXOS2
  380.  
  381.      If you see this line, FORBROWSE didn't steal it!
  382. ********************************************************************** 
  383.  
  384. [Reference to append at 01:18 on 94/04/21 by PMUELLR at CARY ] 
  385.  
  386. >Sorry, but I don't know what "here" means.
  387.  
  388. "here" refered to the OS2BBS software libraries. For speed's
  389. sake I'll get it from Pete's BBS. Sounds like a great add-on
  390. BTW. #
  391. Thanks!
  392.  
  393. Jeff Elkins - GEnie OS/2 Roundtable
  394. ********************************************************************** 
  395.  
  396. [Reference to append at 06:40 on 94/04/21 by DEV4672 at HONE82 ] 
  397.  
  398. Thanks, Dick.  As I said to Pat, for speed's sake I'm
  399. gonna grab this from Pete's BBS but it sure should be
  400. in the archives here also.
  401.  
  402. Jeff Elkins - GEnie OS/2 Roundtable
  403. ********************************************************************** 
  404.  
  405.  
  406. ΓòÉΓòÉΓòÉ 7. Forum owner on HBO ΓòÉΓòÉΓòÉ
  407.  
  408. * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * 
  409. * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
  410.  
  411. To: Anyone who might care  - Append created on 94/04/20 at 14:55 PST
  412.  
  413. If anyone would like to put a face with a name, I can be seen very
  414. briefly this week in "Indecent Proposal" on HOB. I play John Gage's
  415. (Redford) Chief of Security.
  416.  
  417. Redford and I had improved the portion of the scene just prior to
  418. what did survive the cutting. Unfortunately, all that is left of
  419. "The Voice" is a chuckle. Then I turn with my back to the camera
  420. and Redford peers over my shoulder while watching Dianna (Demi
  421. Moore) snatch a piece of candy from a candy dish in a dress shop.
  422.  
  423. This film moment occurs about 10 - 15 minutes into the picture. If
  424. you happen to blink, I was the one with the secret service type
  425. earphone in my ear. <g>
  426.  
  427. Dick Goran                       CIS 72200,347
  428. "REXX Reference Summary Handbook"            1-800-REXXOS2
  429.  
  430.      If you see this line, FORBROWSE didn't steal it!
  431. ********************************************************************** 
  432.  
  433. That's you?
  434.  
  435. Kim Cheung, DEV4661, (818)288-7774
  436. ********************************************************************** 
  437.  
  438. To: Kim Cheung - Append created on 94/04/21 at 09:50 PST
  439.  
  440.    > That's you?                      <
  441.  
  442. Well, my wife sleeps with the guy in the movie. <g>
  443.  
  444. Dick Goran                       CIS 72200,347
  445. "REXX Reference Summary Handbook"            1-800-REXXOS2
  446.  
  447.      If you see this line, FORBROWSE didn't steal it!
  448. ********************************************************************** 
  449.  
  450. I suppose you weren't watching when they filmed the kitchen scene. (!!!!)
  451.  
  452. Kim Cheung, DEV4661, (818)288-7774
  453. ********************************************************************** 
  454.  
  455. To: Kim Cheung - Append created on 94/04/22 at 08:59 PST
  456.  
  457.    > I suppose you weren't watching when they filmed the  <
  458.    > kitchen scene. (!!!!)                 <
  459.  
  460. Wasn't even there. That was not filmed here in Las Vegas.
  461.  
  462. Dick Goran                       CIS 72200,347
  463. "REXX Reference Summary Handbook"            1-800-REXXOS2
  464.  
  465.      If you see this line, FORBROWSE didn't steal it!
  466. ********************************************************************** 
  467.  
  468.  
  469. ΓòÉΓòÉΓòÉ 8. RxMessageBox versus Say: Am I a PM Session? ΓòÉΓòÉΓòÉ
  470.  
  471. * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * 
  472. * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
  473.  
  474. To: Chris Makris - Append created on 94/04/20 at 23:37 PST
  475.  
  476.    > Is there way in Rexx to determine if you are running  <
  477.    > as a PM program before you abend on the RxMessageBox  <
  478.    > function?                       <
  479.  
  480. Sure is. Use the ADDRESS() function. It will return 'PMREXX' or 'CMD'
  481. according to the environment your program is running in.
  482.  
  483. Dick Goran                       CIS 72200,347
  484. "REXX Reference Summary Handbook"            1-800-REXXOS2
  485.  
  486.      If you see this line, FORBROWSE didn't steal it!
  487. ********************************************************************** 
  488.  
  489. I know that I can use RxMessageBox only when a Rexx program is running
  490. as a PM program.  I would like my program to use RxMessageBox when it's
  491. running PM, otherwise display the message using Say.
  492.  
  493. Is there way in Rexx to determine if you are running as a PM program
  494. before you abend on the RxMessageBox function?  This way I can program
  495. to write my message with Say instead.
  496.  
  497. Chris Makris, INOVA Health System, Fairfax, VA
  498. OS/2 Accredited, CIS: 73173,1732
  499. ********************************************************************** 
  500.  
  501. [Reference to append at 22:19 on 94/04/20 by DEV4672 at HONE83 ] 
  502.  
  503. Thanks Dick.  Didn't know about ADDRESS().  Only one problem:
  504. If you start your Rexx command using:  START /PM CMD /C Rexx.CMD
  505. then ADDRESS() still doesn't show wether CMD is running PM or not.
  506.  
  507. Can I get there from here?
  508.  
  509. Chris Makris, INOVA Health System, Fairfax, VA
  510. OS/2 Accredited, CIS: 73173,1732
  511. ********************************************************************** 
  512.  
  513. [Reference to append at 22:19 on 94/04/20 by DEV4672 at HONE83 ] 
  514.  
  515. Dick
  516.  
  517.    Is there a way with PMREXX to eliminate the message at the end?
  518. (THE REXX PROCEDURE HAS ENDED) I have built program objects associated
  519. to *.WAV and *.ZIP that allow 'Play the WAV' and 'Unzip It'/'View Zip
  520. Contents' and would like to do the same with *.AVI and the Play.CMD.
  521. Without PMREXX - Play.CMD file=x.avi dev=digitalvideo01 yields
  522. Err:mciRxSendString RC=5041 63716
  523. mciRxGetErrorString(5041) = Not currently in a Presentation Manager Sessi
  524. bummer
  525. changing the line to Pmrexx.EXE Play.cmd file=x.avi dev=digitalvideo01
  526. yields a view of the *.AVI and the message above.
  527. This cua like instance on repeating the obvious is a pain. Are youne).e).
  528. sure you want to exit? Why not question the user about everything?
  529. Sorry bad hair day :-) Make that no hair day. TIA
  530. e ilsley
  531. ********************************************************************** 
  532.  
  533. [Reference to append at 15:33 on 94/04/21 by INOV004 at HONE82 ] 
  534.  
  535. No, there's no way to tell that.
  536.  
  537. Tom Bridgman
  538. NetDoor Development
  539. (BITNET:  MRTOM at YKTVMV  InterNet:  MRTOM @ WATSON.IBM.COM)
  540. ********************************************************************** 
  541.  
  542. [Reference to append at 22:19 on 94/04/20 by DEV4672 at HONE83 ] 
  543.  
  544. This (Address returning PMREXX) will of course work only if you run under
  545. PMREXX.
  546.  
  547. There are other ways to force a REXX program into the PM environment, for
  548. example a START /PM CMD /c yourCMD  invocation.  In this  case Address()
  549. would report CMD, as usual...
  550.  
  551. One could  try some bizarre tests  using some of the  REXXUtil functions,
  552. for example  the following  code will  return interesting  values if  run
  553. under PM:
  554.  
  555. /* TCur  - check the environment we are running under  */
  556. /* by Greg Czaja (GregC at LEXGate)   April 21, 1994  */
  557. /* for PM environment: START /PM cmd /C TCur >1.out   */
  558. /*           TYPE 1.out            */
  559.  
  560. Call RxFuncAdd 'SysLoadFuncs', 'REXXUtil', 'SysLoadFuncs';
  561. Call SysLoadFuncs;
  562.  
  563. Say 'Cursor position is:' SysCurPos();   /* will be totally off */
  564. Say 'Screen size is:' SysTextScreenSize();/* if run under PM...  */
  565. Say 'Address is:' Address();
  566. Exit;
  567.  
  568. I think,  Quercus' Personal  REXX has  a library  function returning  the
  569. session type.  Wasn't REXXUTIL  supposed to  have this function  at some
  570. time, too?-(
  571.  
  572. Gregory Czaja, Lexington 8-545-4977  GregC at LEXGate 1994/04/21  12:50
  573. ********************************************************************** 
  574.  
  575. [Reference to append at 16:42 on 94/04/21 by PER518 at HONE83 ] 
  576.  
  577. E Ilsley:
  578.  
  579. > Is there a way with PMREXX to eliminate the message at the end?
  580.  
  581. PMJI, when we first discovered PMREXX, we rewrote all of our
  582. text-based REXX programs to use PMREXX messageboxes.  However,
  583. the message displayed at the end was one limitation which I
  584. never learned to overcome (of course there could be a way, but
  585. I never figured it out).
  586.   Another limitation we discovered is that PMREXX was not very
  587. stable as it would occasionally lock up a user's system.
  588.   About the time we became fed up with the PMREXX, true Visual
  589. REXX products hit the market.  Thus, after evaluating, we chose
  590. VX-REXX from Watcom, and again rewrote all of our REXX utilities
  591. in the VX-REXX tool.  I can say that we haven't looked back
  592. since!
  593.   If you haven't already, I would suggest taking a look at one
  594. of the few Visual REXX tools.  They will significantly enhance
  595. your REXX utilities, and allow you to even create some profess-
  596. ional looking user-interfaces, too.
  597.  
  598. For what it's worth ...
  599.  
  600. Peter Ricciardiello, UT Carrier Corporation, Syracuse, NY
  601. ********************************************************************** 
  602.  
  603. You have to modify PMREXX and recompile.  I think the source code
  604. comes with the toolkit?
  605.  
  606. Tom Bridgman
  607. NetDoor Development
  608. (BITNET:  MRTOM at YKTVMV  InterNet:  MRTOM @ WATSON.IBM.COM)
  609. ********************************************************************** 
  610.  
  611. [Reference to append at 15:33 on 94/04/21 by INOV004 at HONE82 ] 
  612.  
  613. To: Chris Makris - Append created on 94/04/21 at 12:22 PST
  614.  
  615.    > Can I get there from here?               <
  616.  
  617. Here is an example that will show you one possible technique for
  618. determining where the program is being run:
  619.  
  620.   /* TEMP.CMD - Test RxMessageBox Functions */
  621.   output_file = 'L:\TEST.TXT'
  622.   call SysFileDelete output_file
  623.  
  624.   button = 'OK'
  625.   icon  = 'Question'
  626.   title  = 'Determine RxMessageBox() useability'
  627.   call LINEOUT output_file, 'ADDRESS() =' ADDRESS()
  628.   call BOXTEST
  629.   call LINEOUT output_file, text
  630.   exit
  631.  
  632.   /*------------------------*/
  633.   /* Try RxMessageBox entry */
  634.   /*------------------------*/
  635.   BOXTEST:
  636.   signal on SYNTAX
  637.   text = 'Program is running in PM mode'
  638.   button_value = RxMessageBox( text, title, button, icon )
  639.   return
  640.  
  641.   SYNTAX:
  642.   text = 'Program is running in ugly mode'
  643.   return
  644.  
  645. Dick Goran                       CIS 72200,347
  646. "REXX Reference Summary Handbook"            1-800-REXXOS2
  647.  
  648.      If you see this line, FORBROWSE didn't steal it!
  649. ********************************************************************** 
  650.  
  651. [Reference to append at 16:42 on 94/04/21 by PER518 at HONE83 ] 
  652.  
  653. To: Eric Ilsley - Append created on 94/04/21 at 12:26 PST
  654.  
  655.    > Is there a way with PMREXX to eliminate the message  <
  656.    > at the end?                      <
  657.  
  658. None that I am aware of. Perhaps Tom Bridgman or Steve Price may be
  659. able to offer a suggestion.
  660.  
  661. Dick Goran                       CIS 72200,347
  662. "REXX Reference Summary Handbook"            1-800-REXXOS2
  663.  
  664.      If you see this line, FORBROWSE didn't steal it!
  665. ********************************************************************** 
  666.  
  667. Dick
  668.  
  669.   Tom suggested recompiling PMREXX (in the toolkit?). That seemed
  670. a bit severe. I was hoping that /Q would get me there. The association
  671. of the *.wav to play.cmd worked so well I wondered why it didn't ship
  672. / install that way. I guess using it with *.AVI will generate more
  673. pain.
  674.  
  675. e ilsley
  676. ********************************************************************** 
  677.  
  678.   The question concerning an undocumented / parameter was not without
  679. some background the cmdref.inf doesn't say anything about XCOPY and /?
  680.  
  681. e ilsley
  682. ********************************************************************** 
  683.  
  684. [Reference to append at 21:07 on 94/04/21 by PER518 at HONE82 ] 
  685.  
  686. > That seemed a bit severe.
  687.  
  688. Well, this question has come up a lot (internally, not on this
  689. conference), and that's the only answer I've ever seen.
  690.  
  691. Tom Bridgman
  692. NetDoor Development
  693. (BITNET:  MRTOM at YKTVMV  InterNet:  MRTOM @ WATSON.IBM.COM)
  694. ********************************************************************** 
  695.  
  696. [Reference to append at 18:40 on 94/04/21 by MRTOM at YKTVMV ] 
  697.  
  698. To: Tom Bridgman - Append created on 94/04/21 at 14:32 PST
  699.  
  700.    > You have to modify PMREXX and recompile. I think the  <
  701.    > source code comes with the toolkit?          <
  702.  
  703. Yes, the source for PMREXX is in the toolkit and can be found on
  704. Devcon 3.
  705.  
  706. Dick Goran                       CIS 72200,347
  707. "REXX Reference Summary Handbook"            1-800-REXXOS2
  708.  
  709.      If you see this line, FORBROWSE didn't steal it!
  710. ********************************************************************** 
  711.  
  712. [Reference to append at 21:53 on 94/04/21 by MRTOM at YKTVMV ] 
  713.  
  714. Tom thanks for taking the comment in the tone it was intended. The
  715. cfors have been very hot lately. It is nice to know that others have
  716. gone looking for this. Maybe it might make it in as a pgm enhancement
  717. or whatever they are called these days. The rexx extensions for mm
  718. are neat. With a little luck and a few of the rexx extensions almost
  719. anything is possible.
  720.  
  721. e ilsley
  722. ********************************************************************** 
  723.  
  724. [Reference to append at 20:57 on 94/04/21 by DEV4672 at HONE81 ] 
  725.  
  726. Dick,
  727. That's the solution I was looking for. Thanks.
  728.  
  729. With some help from some other folks on this forum,
  730. I had come up with the following solution in the meantime,
  731. but I like your's much better:
  732.  
  733. /* Get cursor position & screen size */
  734. Parse value SysCurPos()     with CurRow CurCol
  735. Parse value SysTextScreenSize() with SizRow SizCol
  736.  
  737. If Address()=CMD then      /* If running command processor...    */
  738.  
  739. If 0<=CurRow & CurRow<=60 ,   /* then check if cursor position and   */
  740.  & 0<=CurCol & CurCol<=132 ,  /* screen size is within 60x132 screen, */
  741.  & 0<=SizRow & SizRow<=60 ,   /* and, if so, assume program is not   */
  742.  & 0<=SizCol & SizCol<=132   /* running in PM environment       */
  743.  then  PM=No
  744. else   PM=Yes
  745.  
  746. If PM=Yes Then Return(RxMessageBox("PM mode","PM?",Ok,Information))
  747. Say "Not running in PM mode"
  748. Return
  749. /* End program */
  750.  
  751. Chris Makris, INOVA Health System, Fairfax, VA
  752. OS/2 Accredited, CIS: 73173,1732
  753. ********************************************************************** 
  754.  
  755. [Reference to append at 16:55 on 94/04/21 by GREGC at LEXVM2 ] 
  756.  
  757. To: Gregory Czaja - Append created on 94/04/21 at 14:07 PST
  758.  
  759.    > I think, Quercus' Personal REXX has a library     <
  760.    > function returning the session type.          <
  761.  
  762. Page 53: <g>
  763.  
  764.   DOSSESSIONTYPE()
  765.  
  766.      Returns a number indicating the type of session the
  767.      function was invoked in.
  768.  
  769.         0 -  full-screen.
  770.         2 -  VIO window
  771.         3 -  PM session
  772.         4 -  detached session
  773.  
  774. Dick Goran                       CIS 72200,347
  775. "REXX Reference Summary Handbook"            1-800-REXXOS2
  776.  
  777.      If you see this line, FORBROWSE didn't steal it!
  778. ********************************************************************** 
  779.  
  780. [Reference to append at 21:35 on 94/04/21 by PER518 at HONE82 ] 
  781.  
  782. Most (but not all) of the nonPM OS/2 commands quietly began supporting
  783. "/?" for brief on-line help in 2.0.  This still appears to be
  784. undocumented in 2.11.  The brief help often is incomplete, as well.
  785.  
  786. Tom Bridgman
  787. NetDoor Development
  788. (BITNET:  MRTOM at YKTVMV  InterNet:  MRTOM @ WATSON.IBM.COM)
  789. ********************************************************************** 
  790.  
  791. [Reference to append at 15:33 on 94/04/21 by INOV004 at HONE82 ] 
  792.  
  793. If you were to use VX-REXX you might be able to determie that info
  794. (not a real simple task though)  I think there is a different
  795. class for a session started FS than there is for a window session.
  796. I can look into it for you....and see what I can come up with.
  797.  
  798. Scott E. Trosien -- Ford Motor Co. by day, HAK Systems by night.
  799. *** A feature is just a bug with seniority ***
  800. ********************************************************************** 
  801.  
  802. [Reference to append at 13:59 on 94/04/22 by MRTOM at YKTVMV ] 
  803.  
  804. What do you think Tom can we get them to sneek in a /Q
  805. quiet mode? :-)
  806.  
  807. e ilsley
  808. ********************************************************************** 
  809.  
  810. That is something Rick McGuire will have to answer.
  811.  
  812. Tom Bridgman
  813. NetDoor Development
  814. (BITNET:  MRTOM at YKTVMV  InterNet:  MRTOM @ WATSON.IBM.COM)
  815. ********************************************************************** 
  816.  
  817.  
  818. ΓòÉΓòÉΓòÉ 9. Help, Dick ΓòÉΓòÉΓòÉ
  819.  
  820. * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * 
  821. * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
  822.  
  823. Dick,
  824. I echo a network with a pretty quiet OS/2 conference.  The following was
  825. just posted and I don't think it will get a decent answer.  I hate to see
  826. folks with honest programming questions not get a response, so I thought I
  827. see if I could prevail on you one more time.  I'll post any response with
  828. the OS2BBS header...<should confuse some folks no end...>
  829.  
  830. Date: 04-19-94 (17:49)      os2 Number: 637 / 637 (Echo)
  831.  To: ALL
  832. From: TIMOTHY GRANT          Read: 04-20-94 (17:15)
  833. Subj: VX-REXX CONTAINERS
  834.  
  835.   I have been messing about with VX-REXX, and would like to know
  836.   if it is possible to set the width of a field in a container to
  837.   something other than what the system defaults it to.  It seems
  838.   that my containers waste an awful lot of space for unecessary white
  839.   space.
  840.  
  841.   Also, does anyone know of a way to get the REXX elapsed time functions
  842.   to work under VX-REXX?  It appears that my Timer Trigger Events reset
  843.   the elapsed time counter.  This is really not very desirable, as I would
  844.   like to get some exact timings.
  845.  
  846. Stand Fast,
  847.     tjg.
  848.  
  849. .. German word for Constipation...Farfrompoopin.
  850.  
  851. Ken Prevo
  852. ********************************************************************** 
  853.  
  854. I wouldn't place my bet on the timer to get exact timing.  You are running
  855. under a multi-tasking OS you know.  As a matter of fact, somewhere in the
  856. manual, they warn you against doing that.
  857.  
  858. Don't know about changing the width.  Ask over at the VX-REXX forum.
  859.  
  860. Kim Cheung, DEV4661, (818)288-7774
  861. ********************************************************************** 
  862.  
  863. [Reference to append at 23:02 on 94/04/20 by WZ01343 at HONE82 ] 
  864.  
  865. >   I have been messing about with VX-REXX, and would like to know
  866. >   if it is possible to set the width of a field in a container to
  867. >   something other than what the system defaults it to.  It seems
  868. >   that my containers waste an awful lot of space for unecessary white
  869. >   space.
  870.  
  871. Right now there is no way to set the field widths other than what the
  872. container defaults to.
  873.  
  874. >   Also, does anyone know of a way to get the REXX elapsed time functions
  875. >   to work under VX-REXX?  It appears that my Timer Trigger Events reset
  876. >   the elapsed time counter.  This is really not very desirable, as I would
  877. >   like to get some exact timings.
  878.  
  879. This is not a VX-REXX problem.  If you read the online documentation
  880. for the TIME function (type "help rexx time" at a command prompt),
  881. you'll see that the elapsed time clock is kind of like environment
  882. variable inheritance -- your procedure "inherits" the elapsed time
  883. clock from the calling procedure, but if you reset it, it doesn't reset
  884. it in the caller.  What you need to do is set the elapsed time clock
  885. outside of an event, in the Main section of your program.
  886.  
  887. Eric Giguere, WATCOM
  888. ********************************************************************** 
  889.  
  890.  
  891. ΓòÉΓòÉΓòÉ 10. REXX Symposium Info (long append) ΓòÉΓòÉΓòÉ
  892.  
  893. * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * 
  894. * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
  895.  
  896. Ref:
  897.  
  898.           Rexx Symposium for Developers and Users
  899.                  1-4 May 1994
  900.                Boston, Massachusetts
  901.  
  902.      * * * * * * * * * * * * * * *
  903.                 * * * * *
  904.  
  905.                Program as of 20 April
  906.            ___________________
  907.      Doug Benson, Lotus              Ami Pro and Rexx
  908.      Tom Brawn, IBM           Rexx for AIX and Netware,
  909.                        Object Rexx Demonstration
  910.      Anders Christensen   Techniques for Performance Tuning Rexx
  911.                  Interpreters---A Case Study of Regina
  912.      Ian Collier, Oxford         New Features in Rexx/imc
  913.      James Crosskey, IBM       Current IBM Views of Rexx and
  914.                           Forum with Audience
  915.      Mike Cowlishaw, IBM Interesting Corners of the Rexx Language
  916.      Hal German, GTE       Choosing a Command Language --an
  917.                      Application-centric Approach
  918.      Eric Giguere, WATCOM         WATCOM VX-Rexx for OS/2
  919.      Klaus Hansjakob, IBM          IBM Rexx Compiler News
  920.      Mark Hessling, Griffith     Using Rexx as a Database Tool
  921.       University
  922.      Stefan Kent, Gpf                   Gpf/Rexx
  923.      Lee Krystek, Boole             Network Automation
  924.       and Babbage               Operations in Unix
  925.      Luc Lafrance, Simware      How Simware Implemented Rexx
  926.                          on Multiple Platforms
  927.      Alan Matthews,      Using Rexx and Notrix for Enterprise
  928.       Percussion Software  Data Integration Through Lotus Notes
  929.      Neil Milsted, iX            Open-Rexx for NT, Etc.
  930.      David Moskowitz     Rexx-Enabling Your OS/2 Applications
  931.      Patrick Mueller, IBM      Adventures in Object Oriented
  932.                          Programming with ROX
  933.      Simon Nash            Object Rexx Class Hierarchy
  934.      Scott Ophof                   Rexx Language
  935.      Edmond Pruul           Rexx, Reuse, and Portability
  936.      David Shriver, IBM             Rexx for CICS/ESA
  937.      Timothy Sipples, IBM       Working (and Playing!) with
  938.                        Rexx and OS/2 Multimedia
  939.      Hobart Spitz              Converting JCL to Rexx
  940.      Ed Spire, Workstation Group     X-Based GUI Xedit Editor
  941.                               ANSI Report
  942.      Giveaways and Announcements
  943.  
  944.           Rexx Symposium for Developers and Users
  945.                  1-4 May 1994
  946.                Boston, Massachusetts
  947.  
  948.      The  Rexx  Symposium  provides  a  forum for information and
  949.      ideas and an opportunity to interact personally with  others
  950.      interested in using and enjoying programming in Rexx.
  951.  
  952.      The  Symposium  consists  of  plenary  sessions and parallel
  953.      sessions for  papers,  status  reports,  and  review  talks.
  954.      Presentations  focus  on  using  Rexx  on  a wide variety of
  955.      computing platforms and operating systems.   Of  particular
  956.      interest  are  unique  applications, Rexx tools and function
  957.      libraries,  Rexx  interfaces  with  other  languages,  user
  958.      support, and education.  Originator Mike Cowlishaw and other
  959.      implementers  will  be  present  and  participate  in  the
  960.      sessions.
  961.  
  962.      Special hotel rates have been negotiated for this  Symposium
  963.      if  reservations  are  made through the Omni Parker House in
  964.      Boston by 15 March 1994.  For  lodging  call  the  Omni  at
  965.      800-THE-OMNI  or 617-227-8600 (fax 617-227-2120) and ask for
  966.      the Rexx Symposium rate:
  967.  
  968.             Lodging/Night
  969.             US$92  single
  970.             US$109 double
  971.  
  972.      Symposium registration is required:
  973.  
  974.             Conference
  975.             US$200 includes a dinner, breaks, Proceedings
  976.             US$75  for full-time students in degree
  977.                programs at accredited institutions
  978.  
  979.      The registration fee is due in advance, payable in  cash  or
  980.      check,  net  US$200  in  US  funds.   To  register  for the
  981.      Symposium and make travel arrangements, please contact:
  982.  
  983.             Village Travel
  984.             Rexx Symposium
  985.             69 Town and Country Village
  986.             Palo Alto, CA  94301  USA
  987.             1-800-245-3260
  988.             1-415-326-0510  fax 1-415-326-0245
  989.  
  990.      Please  send  questions  to  any  member  of  the  program
  991.      committee:
  992.  
  993.             Cathie Dager:  cathie@slac.stanford.edu
  994.             Forrest Garnett:  garnett@vnet.ibm.com
  995.             Pat Ryall:  ryall@aol.com
  996.  
  997.      Also  please  note all are welcome at the initial meeting of
  998.      the Rexx  Language  Association  (RexxLA),  to  be  held  in
  999.      conjunction  with  the Symposium.  Those with an interest in
  1000.      international standards now being  formulated  may  wish  to
  1001.      attend  the public meeting of ANSI Committee X3J18 scheduled
  1002.      for 5 to 7 May at the same hotel.
  1003.  
  1004.                             20th April 1994
  1005.  
  1006.    Rexx Symposium            1-4 May, 1994
  1007.    Omni Parker House          Boston, Massachusetts
  1008.    Registration $200, $75 students   Village Travel 1-800-245-3260
  1009.    Room Reservations:  A.S.A.P.!    1-800-THE-OMNI
  1010.     (a problem? call Cathie...)
  1011.  
  1012. ========================================
  1013.  
  1014.  Ian M. Collier
  1015.  imc@comlab.ox.ac.uk
  1016.  Oxford University
  1017.  D.Phil. Student
  1018.  
  1019. Rexx/imc -- a Rexx interpreter for Unix
  1020.  
  1021. Since 1989 I have been working on a Rexx interpreter for Unix in my
  1022. spare time (what little I get).  It was first released to the public in
  1023. August 1992 and has had many improvements since then.  In my
  1024. presentation I will demonstrate (or talk about) the most recent
  1025. enhancements and some of the language extensions that I have added to
  1026. the interpreter, several of which have been influenced by the work of
  1027. the X3.J18 standardization committee.  I hope to show some of the ways
  1028. in which Rexx/imc can interface with its environment; this will include
  1029. the use of Unix-specific built-in functions, the writing of external
  1030. function libraries, and the application interface with programs such as
  1031. THE (an editor based on KEDIT written by Mark Hessling).  If time (and
  1032. inclination) allows, I will take a brief look at the internals of the
  1033. interpreter, showing the basic blocks of which it is built, and possibly
  1034. giving a brief explanation of how it performs a task such as evaluating
  1035. a Rexx expression.
  1036.  
  1037. Some subjects to be discussed:
  1038.  
  1039.  - Improvements since the last release
  1040.  - Language extensions and Unix-specific features in Rexx/imc
  1041.  - How to write an external function
  1042.  - Interfacing with application programs
  1043.  - How does it work?
  1044. ========================================
  1045.  
  1046.  Hallett German
  1047.  hhg1@gte.com
  1048.  GTE Laboratories, Inc.
  1049.  Technical Staff
  1050.  
  1051. Choosing a command language -- an application-centric approach
  1052.  
  1053. This paper suggests one approach that novice command language users
  1054. could use in developing an application.  This includes looking at the
  1055. data, simple benchmarks, and other criteria.  Emphasis will be on Rexx
  1056. and Perl.  This is derived from the research done for the author's last
  1057. two books for Van Nostrand Reinhold.
  1058.  
  1059. Some key points:
  1060.  
  1061.  - Discussing an application development approach
  1062.  - Comparing Command languages
  1063.  - Discussing other factors to look at
  1064. ========================================
  1065.  
  1066.  Klaus Hansjakob
  1067.  hansjako@vabvm1.vnet.ibm.com
  1068.  IBM
  1069.  Project Leader Rexx Compiler Development
  1070.  
  1071. News from the IBM Rexx Compiler
  1072.  
  1073. The IBM Compiler for Rexx/370 improves performance of Rexx programs in
  1074. the CMS, MVS and VSE environment.  This presentation covers packaging
  1075. compiled Rexx, including features introduced after release 2 of the
  1076. Compiler.  Alternate Library support (added after release 2):
  1077. Previously, to run compiled Rexx programs the Rexx/370 Library was
  1078. required.  Now you can distribute compiled Rexx programs and not require
  1079. the Rexx/370 Library.  While the performance of programs is only
  1080. improved when the Rexx/370 Library is installed, the advantages are:
  1081. Continue on the next panel. 
  1082.  
  1083.  
  1084.  - maintenance is simplified;
  1085.  - code is unreadable with editor or browse program;
  1086.  - code compaction is possible;
  1087.  - load module format is enabled for compiled Rexx programs.
  1088.  
  1089. COPYRIGHT compiler directive (added after release 2): Add a copyright to
  1090. your compiled Rexx programs.
  1091.  
  1092. CMS function packages: Function packages contain programs invoked
  1093. frequently.  Writing these functions in Rexx is simple, putting them
  1094. into a function package ensures optimal performance.  Sample glue code
  1095. for a function package with functions written in compiled Rexx is
  1096. presented.
  1097. ========================================
  1098.  
  1099.  Stefan Kent
  1100.  Gpf
  1101.  
  1102. Gpf/REXX
  1103.  
  1104. Gpf/REXX is a visual Presentation Manager programming tool.  It uses OS/2
  1105. REXX and allows you to use REXX to write PM programs.
  1106. ========================================
  1107.  
  1108.  Lee D. Krystek
  1109.  lee@boole.com
  1110.  Boole and Babbage
  1111.  Software Manager
  1112.  
  1113. Using Rexx, in a Unix Environment, to Manage Network Operations.
  1114.  
  1115. When constructing our Network Management and Control Product, we needed
  1116. to provide a way to allow users to construct dialogs to control any
  1117. foreign system they might need to interface to through that foreign
  1118. system's console.  We selected Rexx as this tool, but before we could
  1119. use it, we had to augment the language to give it the capability to be
  1120. started automatically, connect to those foreign systems, and manipulate
  1121. our network relational database system.
  1122.  
  1123. A few highlights:
  1124.  
  1125.  - Overview of Command/Post product.
  1126.  - The auto-operations requirement.
  1127.  - Why Rexx?
  1128.  - Auto-triggering
  1129.  - External Access
  1130.  - Database Inteface
  1131.  - Some Examples
  1132.  - Questions
  1133. ========================================
  1134.  
  1135.  Luc Lafrance
  1136.  lafrance@dev.simware.com
  1137.  Simware
  1138.  Ottawa, Ontario
  1139.  
  1140. How Simware Implemented Rexx on Multiple Platforms
  1141.  
  1142. Simware has ported Rexx from Microsoft Windows to the Macintosh and
  1143. later to NetWare.  A2B and REXXWARE, the current Simware products that
  1144. make use of Rexx, have completely different sets of features and BIFs
  1145. but yet share a common kernel of code.  This talk will cover the aspects
  1146. of Rexx and the tools and techniques that allowed a high level of code
  1147. sharing.
  1148. ========================================
  1149.  
  1150.  Alan Matthews
  1151.  dbenua@panix.com
  1152.  Percussion Software
  1153.  Technical Director
  1154.  
  1155. Using Rexx and Notrix for enterprise data integration through
  1156.  Lotus Notes
  1157.  
  1158. The growth of Lotus Notes creates a new phenomenon among desktop users.
  1159. Lotus Notes provides a new way of storing and viewing information within
  1160. the desktop environment.  However, manipulating large amounts of data
  1161. within Lotus Notes poses a big challenge for Notes administrators,
  1162. database designers and application developers.  The work can be complex
  1163. and involve many hours of valuable programming time via C and the Lotus
  1164. Notes API.  This programming challenge grows even greater when these
  1165. same users begin demanding access from Notes to information stored in
  1166. enterprise databases -- SQL databases, hierarchical databases, or flat
  1167. files.
  1168.  
  1169. Now, using the power of Rexx and Notrix, developers can build programs
  1170. within Notes that import and export complex data between Lotus Notes
  1171. databases; between Notes and enterprise databases; to access external
  1172. bulletin boards; or to satisfy other data mani pulation problems.
  1173. Notrix is built upon Rexx so that technology solutions can be
  1174. implemented quickly inhouse, thus saving thousands of dollars in
  1175. consulting and technical support fees.
  1176.  
  1177. Some highlights:
  1178.  - Lotus Notes:  Why should you be using it anyway
  1179.  - Lotus Notes:  Enterprise Integration Issues
  1180.  - Rexx and Notrix:  Advantages and Functional Overview
  1181.  - Opening Notes to the Enterprise via Rexx and Notrix
  1182. ========================================
  1183.  
  1184.  Neil Milsted
  1185.  76050.3673@compuserve.com
  1186.  iX Corporation
  1187.  Developer
  1188.  
  1189. Open-Rexx for NT etc.
  1190.  
  1191. This talk will cover Open-Rexx for NT.  It is a complete implementation
  1192. of Rexx that runs under NT.  It also provides many utilities and
  1193. functions that are commonly provided on other platforms, such as CMS and
  1194. OS/2.
  1195.  
  1196. Highlight of the talk is a demonstration of Open-Rexx running under NT.
  1197. ========================================
  1198.  
  1199.  Patrick J. Mueller
  1200.  pmuellr@vnet.ibm.com
  1201.  IBM Cary, NC
  1202.  Staff Programmer
  1203.  
  1204. Adventures in Object Oriented Programming with ROX
  1205.  
  1206. Object oriented programming is one of the hottest topics in the
  1207. programming community today.  IBM is developing an object oriented
  1208. language with its roots in Rexx, which should be available sometime this
  1209. year.  But what about 'classic' Rexx; it currently has no object
  1210. oriented facilities built-in.  Is there a way to provide some object
  1211. oriented capabilities to 'classic' Rexx?  Yes!
  1212.  
  1213. The author has developed a function package called Rexx Object
  1214. eXtensions (ROX) for IBM's implementation of Rexx on OS/2.  The function
  1215. package provides some object oriented capabilities including:
  1216.  
  1217.  Smalltalk-like class model
  1218.   classes
  1219.   methods (written as Rexx macros)
  1220.   inheritance
  1221.   instance variables
  1222.  multiple inheritance
  1223.  objects can be created, and sent messages from other methods or
  1224.   from ordinary Rexx programs
  1225.  extendable via C
  1226.  
  1227. Various aspects of ROX will be discussed, including:
  1228.  
  1229.  - sample usage
  1230.  - some implementation information
  1231.  - implications of poor performance
  1232.  - additional work items
  1233.  
  1234.  Timothy F. Sipples
  1235.  sip1@kimbark.uchicago.edu
  1236.  Researcher/Author
  1237.  
  1238. Working (or Playing!) with Rexx and OS/2 Multimedia
  1239.  
  1240. This presentation will explore the relationship between Rexx and
  1241. OS/2's MMPM/2 (multimedia) extensions.
  1242.  
  1243. Highlights will include:
  1244.  
  1245.  - background on OS/2's multimedia features
  1246.  - discussion of MMPM/2 MCI string interface available to Rexx
  1247.  - sample Rexx application(s) using OS/2's multimedia features
  1248.  - live sound and video demonstrations
  1249. ========================================
  1250.  
  1251.   Edmond A. Pruul
  1252.   p00146@psilink.com
  1253.   Afton Programming Lab
  1254.   System Designer
  1255.  
  1256. Reusable Design and Rexx Portability
  1257.  
  1258. The application owner and developer are interested in porting their
  1259. applications to new operating system environments.  The Rexx language
  1260. offers inherent advantages: readability, an active Standards
  1261. organization, available source code, good input-parsing functions, easy
  1262. source-level debugging; but no practical breakthrus have been identified
  1263. in the Rexx community.  The same problems that plague application
  1264. portability in general apply to Rexx programs also: unwieldy code for
  1265. several operating system environments; ownership conundrums; interface
  1266. confoundment; and many other problem, old and new.  Using Rexx as an
  1267. example of a language whose applications should port easily, reveals the
  1268. intractability of the portability problem.  Reusable Code is problematic
  1269. in startlingly similar ways.  Reusable Design is a promising paradigm
  1270. for a general attack on the Reusable Code problem.  A Rexx application,
  1271. being readable -- or accessible -- by the average programmer -- is a
  1272. possible stage to experiment, in a practical way, with Reusable Design.
  1273. The Reusable Design paradigm is based on the classic principles of
  1274. modularity in Computer Science.  It can include object based or object
  1275. oriented methods but the prime principle is semantic as well as
  1276. syntactic readability -- the actions of the Reusable function are clear
  1277. and concise to programmer.  Readability allows early planning by
  1278. potential reusers -- customers for a reusable function.  As the Rexx
  1279. Application developer rely more on reusable components, market forces
  1280. could encourage the proliferation of popular reusable components to
  1281. popular operating systems.
  1282. ========================================
  1283.  
  1284.  David Shriver
  1285.  dshriver@vnet.ibm.com
  1286.  IBM
  1287.  Technical Lead
  1288.  
  1289. Rexx for CICS/ESA
  1290.  
  1291. 'Rexx for CICS/ESA' provides support for the Rexx language under
  1292. CICS/ESA by allowing Rexx programs to be written and executed in a
  1293. CICS/ESA region.  Rexx programs under 'Rexx for CICS/ESA' have access to
  1294. most EXEC CICS commands, the CICS CEDA and CEMT transaction programs,
  1295. and DB2 databases via an EXEC SQL interface.  The 'Rexx Development
  1296. System for CICS/ESA' also provides a CICS-based text editor for Rexx
  1297. execs and datam as well as a hierarchical file system and a file list
  1298. utility.
  1299. Continue on the next panel. 
  1300.  
  1301.  
  1302. Highlights will include:
  1303.  
  1304.  - Overview/Functionality of Rexx for CICS/ESA
  1305.  - Productivity advantages of Rexx for CICS/ESA
  1306. ========================================
  1307.  
  1308.  Ed Spire
  1309.  ets@wrkgrp.com
  1310.  The Workstation Group
  1311.  
  1312. X-Based GUI XE Editor
  1313.  
  1314. uni-XEDIT is a Unix implementation of the VM/CMS System Product Editor,
  1315. XEDIT.  uni-XEDIT implements most features of its mainframe
  1316. counterpart, including an interface to uni-Rexx and the xedit commands
  1317. associated with that interface, such as EXTRACT, SET RESERVED, and READ.
  1318.  
  1319. uni-XEDIT was developed as an aid to those programming professionals and
  1320. other computer users who have been active in the IBM mainframe
  1321. environment, and now are faced with the daunting task of becoming
  1322. productive in the Unix environment.  Version 1 of uni-XEDIT uses the
  1323. "curses", the standard Unix terminal I/O access method, to present a
  1324. human interface that is identical to the 3270-based Xedit.  It virtually
  1325. eliminates the editor learning curve associated with vi or emacs, and
  1326. supports the portability of Rexx applications that have used Xedit as a
  1327. means of performing full screen I/O operations, making it much easier to
  1328. bring these applications over to Unix.
  1329.  
  1330. While uni-XEDIT has been well received, there has been some concern over
  1331. the longevity of its appeal.  In its original state, it could easily
  1332. become nothing more than a transition tool, which would be superceded by
  1333. more modern editors as familiarity with the new environment strengthens
  1334. and time elapses.  In order to remain competitive with the editors we
  1335. see and expect to see in the Unix environment, we judged that uni-XEDIT
  1336. needed to become a Graphic User Interface (GUI) product.  The superior
  1337. ease of use associated with pointing devices and graphic displays would
  1338. be added to the existing product, without damaging the intrinsic
  1339. functionality of Xedit.
  1340.  
  1341. This presentation will describe the design decisions that went into
  1342. uni-XEDIT Version 2's use of GUI capabilities, and extensions to the
  1343. product oriented towards them.  The programming techniques that were
  1344. used and the usability and support considerations pertaining to the
  1345. X-windows environment will also be discussed.
  1346. ========================================
  1347. ========================================
  1348. ********************************************************************** 
  1349.  
  1350.  
  1351. ΓòÉΓòÉΓòÉ 11. SYS2070 when trying to start a REXX program ΓòÉΓòÉΓòÉ
  1352.  
  1353. * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * 
  1354. * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
  1355.  
  1356. Some of our OS/2 2.1 -workstations give the error code SYS2070 when
  1357. trying to start a REXX program :
  1358.  SYS2070: A program in this session encountered a problem and
  1359.  cannot continue.
  1360.  EXPLANATION: The system delayed the loading of some of
  1361.  the application's code until it was needed. Now there
  1362.  is a problem loading the needed code segment.
  1363.  ACTION: If you purchased this program, contact the supplier
  1364.  of the program.  If you are the developer of this program,
  1365.  refer to the information in the register.
  1366.  
  1367. After booting the machine, REXX has worked and then stops working this
  1368. way ?. The Libpath doesn't seem to be the problem.
  1369.  
  1370.      Markku Vieri, Oy Tietokonepalvelu Ab, Finland
  1371.  
  1372. This append was created on the External IBMLink system by
  1373. Oy Tietokonepalvelu
  1374. ********************************************************************** 
  1375.  
  1376.  
  1377. ΓòÉΓòÉΓòÉ 12. "Icon-izing" a cmd window ΓòÉΓòÉΓòÉ
  1378.  
  1379. * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * 
  1380. * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
  1381.  
  1382. Is there any rexx call which will cause the current cmd window to be iconized?
  1383.  
  1384. Mike McDermott
  1385. Internet - mikem@vnet.ibm.com
  1386. IBM IPnet - mikemcd@gila.boulder.ibm.com   Neither IBM nor Pennant Systems
  1387. IBM VNET - MIKEMCD at BOULDER        know I have these opinions!
  1388. ********************************************************************** 
  1389.  
  1390. To: Mike McDermott - Append created on 94/04/21 at 09:52 PST
  1391.  
  1392.    > Is there any rexx call which will cause the current  <
  1393.    > cmd window to be iconized?               <
  1394.  
  1395. Can you be more specific. What do you mean by "iconized". each object
  1396. is represented by some type of icon.
  1397.  
  1398. Dick Goran                       CIS 72200,347
  1399. "REXX Reference Summary Handbook"            1-800-REXXOS2
  1400.  
  1401.      If you see this line, FORBROWSE didn't steal it!
  1402. ********************************************************************** 
  1403.  
  1404. I think Mike means, can a REXX program force the window it's running
  1405. in to be minimized.  The answer is (if that is the question), not
  1406. without writing an external function in C.
  1407.  
  1408. Tom Bridgman
  1409. NetDoor Development
  1410. (BITNET:  MRTOM at YKTVMV  InterNet:  MRTOM @ WATSON.IBM.COM)
  1411. ********************************************************************** 
  1412.  
  1413. In <940421204354.os2rexx.cforum.ibmpc.mrtom@yktvmv.vnet.ibm.com>, mrtom@yktvmv.vnet writes:
  1414. >I think Mike means, can a REXX program force the window it's running
  1415. >in to be minimized.  The answer is (if that is the question), not
  1416. >without writing an external function in C.
  1417. >
  1418. >Tom Bridgman
  1419. >NetDoor Development
  1420. >(BITNET:  MRTOM at YKTVMV  InterNet:  MRTOM @ WATSON.IBM.COM)
  1421.  
  1422. Yes, that's what I meant, thanks for the answer.
  1423.  
  1424. (Sent that in too early this morning, my brain hadn't warmed up yet.)
  1425.  
  1426. Mike McDermott
  1427. Internet - mikem@vnet.ibm.com
  1428. IBM IPnet - mikemcd@gila.boulder.ibm.com   Neither IBM nor Pennant Systems
  1429. IBM VNET - MIKEMCD at BOULDER        know I have these opinions!
  1430. ********************************************************************** 
  1431.  
  1432.  
  1433. ΓòÉΓòÉΓòÉ 13. Line Stealer ΓòÉΓòÉΓòÉ
  1434.  
  1435. * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * 
  1436. * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
  1437.  
  1438. Hi Dick, I've tried to post several appends regarding this but Canadian
  1439. appends were not making it through to the US Master ...  can you give me
  1440. a call or indicate the correct Nevada number ?  Thanks. 1-(905) 316-5445
  1441.  
  1442. > Dick Goran                       CIS 72200,347
  1443. > "REXX Reference Summary Handbook"       .---->   1-800-REXXOS2
  1444.  
  1445.                        Wrong Number ?
  1446.  
  1447. I was trying to find out if you were using the ICONF VM code to post
  1448. your appends when this happened or if you were using the offline readers
  1449. such as FORABROWS and the TOOLS VM code ?
  1450.  
  1451. Norval Oswald - Canadian IBMLink, ICONF, Link2000 Devl and Supp.
  1452. ********************************************************************** 
  1453.  
  1454.  
  1455. ΓòÉΓòÉΓòÉ 14. Memory leaks within REXX calls out of Smalltalk ΓòÉΓòÉΓòÉ
  1456.  
  1457. * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * 
  1458. * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
  1459.  
  1460. We are running Digitalk's Smalltalk VPM 2.0 32 bit on OS/2 2.1 GA.
  1461. As database we are using ES DBM 1.0.
  1462. Using Theseus2 we are observing a lot of memory leaks. The
  1463. memory not being freed has VPM as owner and REXX and SQL0 as source.
  1464.  
  1465. The call used within SmallTalk is outlined below.
  1466. The call is used mainly to pass a string that contains sql
  1467. queries to the rexx start api call.
  1468. The problem noticed is that memory objects are not being freed after the
  1469. completion of the call.
  1470. Mainly SQL0 and REXX are shown as the source of the memory object
  1471. allocation after this call (using Theseus).
  1472.  
  1473. rexxsaa: aString
  1474.  
  1475.  Γöÿreply
  1476.  returnCode
  1477.  result
  1478.  instore
  1479.  string
  1480.  stringAddress
  1481.  Γöÿ
  1482.  
  1483.  string := aString asAsciiZ.
  1484.  stringAddress := PMAddress copyToNonSmalltalkMemory: string.
  1485.  
  1486.  returnCode := PMStructure new: 8.
  1487.  
  1488.  instore := PMStructure new: 8.
  1489.  instore uLongAtOffset: 0
  1490.      put: (PMLong new
  1491.            uLongAtOffset: 0
  1492.            put: string size) contents.
  1493.  instore uLongAtOffset: 4
  1494.      put: stringAddress contents.
  1495.  
  1496.  reply := self
  1497.    rexxStart: 0
  1498.    argList: nil
  1499.    programName: 'VPMREXX.CMD' asAsciiZ asParameter
  1500.    instore: instore asParameter
  1501.    envName: '' asAsciiZ asParameter
  1502.    callType: 2 "RXFUNCTION" "0" "RXCOMMAND"
  1503.    exits: nil
  1504.    returnCode: returnCode asParameter
  1505.    result: result asParameter.
  1506.  
  1507.  stringAddress free.
  1508.  reply = 0
  1509.  ifTrue:
  1510.   ╨½^((PMStructure new: (result uLongAtOffset: 0)
  1511.   ) fillFromAddress:
  1512.    (PMAddress fromAddress:  (result uLongAtOffset: 4)
  1513.    )
  1514.   ) contents asString
  1515.   !
  1516.  ifFalse:
  1517.   ╨½^reply
  1518.   !
  1519.  
  1520. What do we have to do in order to get that memory freed again?
  1521. Thanks
  1522. Paul Klaeger
  1523. ********************************************************************** 
  1524.  
  1525. I think that REXX is allocating the result string from it's memory,
  1526. but you aren't freeing it.  The result string is implemented as an
  1527. RXSTRING.  Note this is an OS/2 memory object, so you'll need to
  1528. free it with the equivalent of a DosFreeMem() call in Smalltalk ...
  1529. alternatively, you can allocate the space BEFORE you make the call,
  1530. and set the result pointer to this memory.  Still need to free it
  1531. though ...
  1532.  
  1533. Patrick Mueller  | IBM Software Solutions, Cary NC; 919-469-7242, tie 883
  1534.          | internet: pmuellr@vnet.ibm.com   vnet: pmuellr@carvm3
  1535. ********************************************************************** 
  1536.  
  1537. Patrick
  1538. Thanks for your advice.
  1539. We have found the Rexx Leak. It was our mistake. The rxString address
  1540. being returned was not being freed as you said. After freeing it all
  1541. the REXX memory leakage has stopped.
  1542.  
  1543. We still have SQLO leak. We will investigate further.
  1544.  
  1545. Thanks again for the info.
  1546. Paul Klaeger
  1547. ********************************************************************** 
  1548.  
  1549.  
  1550. ΓòÉΓòÉΓòÉ 15. Recreating Icons ΓòÉΓòÉΓòÉ
  1551.  
  1552. * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * 
  1553. * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
  1554.  
  1555. To:Dick Goran
  1556. Dick:   I vaguely recall at quite some time back you put up code for
  1557. a REXX routine to build either icons or objects. This was OBVIOUSLY in
  1558. a different forum(OS2MISC I think, but the memory is usually the 2nd
  1559. thing to go.....(No <G> here!!!!.....well, maybe just a smirk!!).
  1560. I just re-installed all of the applets on my system(previously deleted
  1561. for lack of disk space) and REALLY don't wnat to go through recreating
  1562. all of those critters by hand. Can you/will you help????
  1563.  
  1564. Totally off of the OS/2 subject: I also have some recollection of you
  1565. mentioning a role in the movie "Indecent Proposal" ?? I finally got
  1566. around to watching most of that on cable the other night but couldn't
  1567. see your name in the credits. Nom de stage, perhaps?????
  1568.  
  1569. Regards,
  1570. Jim Allen   Honda of America Mfg., Inc.
  1571. Team OS/2   T.I.P.A.
  1572. ********************************************************************** 
  1573.  
  1574. To: Jim Allen - Append created on 94/04/21 at 14:10 PST
  1575.  
  1576. Taking your items in order of priority: <g>
  1577.  
  1578.    > I finally got around to watching most of that on    <
  1579.    > cable the other night but couldn't see your name in  <
  1580.    > the credits.                      <
  1581.  
  1582. By having the dialogue that Redford and I did get cut, and since I was
  1583. not a SAG member PRIOR to the film (just AFTRA), they cut my lines, my
  1584. pay and my credits with one swipe of the blade.
  1585.  
  1586. I did battle with Paramount and its then President, Sherry Lansing,
  1587. and one the SAG fight but it was too late for credits and got srewed
  1588. for the pay. (P.S. I posted an append here re: "Indecent Proposal"
  1589. being on HBO this week and next:
  1590.  
  1591.      OS2REXX CFORUM appended at 22:10:47 on 94/04/20 GMT
  1592.      Subject: Forum owner on HBO
  1593.  
  1594.    > I vaguely recall at quite some time back you put up  <
  1595.    > code for a REXX routine to build either icons or    <
  1596.    > objects.                        <
  1597.    > Can you/will you help????               <
  1598.  
  1599. I'll be happy to if I can but I'm not sure what you are referring to.
  1600. The only thing that comes to mind might be Mike Lamb's ICONRES.CMD
  1601. (part of the CRTOBJ.ZIP file) which builds a folder containing the
  1602. icons in PMWP.DLL, WPCONFIG.dll & WPPRTMRI.DLL.
  1603.  
  1604. However, if you do a selective intsall of the applets, the
  1605. Productivity folder should be rebuilt with the appropriate objects &
  1606. icons in it.
  1607.  
  1608. Dick Goran                       CIS 72200,347
  1609. "REXX Reference Summary Handbook"            1-800-REXXOS2
  1610.  
  1611.      If you see this line, FORBROWSE didn't steal it!
  1612. ********************************************************************** 
  1613.  
  1614. Dick:
  1615. Glad to see you've got your priorities straight<BG>!
  1616. Re your latter point, I DID selective install and it didn't. Thus my
  1617. question. I'll try again, but probably not until Mon....early tee time!
  1618.  
  1619. Regards,
  1620. Jim Allen   Honda of America Mfg., Inc.
  1621. Team OS/2   T.I.P.A.
  1622. ********************************************************************** 
  1623.  
  1624.  
  1625. ΓòÉΓòÉΓòÉ 16. REXX HLLAPI ΓòÉΓòÉΓòÉ
  1626.  
  1627. * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * 
  1628. * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
  1629.  
  1630. > Originally appended to OS2REXX CFORUM at 14:48:09 on 94/04/04 GMT
  1631.  
  1632. You can use "RESERVE" to lock out the user before the wait and "RELEASE"
  1633. after the wait is over.
  1634.  
  1635. Maurice Cartier
  1636. Procor Ltd, Oakville, Ontario..................IBMMail(CAPCO9CB)
  1637. ********************************************************************** 
  1638.  
  1639.  
  1640. ΓòÉΓòÉΓòÉ 17. Deleting Objects from Worksplace without the objectid ΓòÉΓòÉΓòÉ
  1641.  
  1642. * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * 
  1643. * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
  1644.  
  1645. Is it possible to delete objects from the OS/2 desktop without
  1646. knowing their objectid?  If so, does anyone have some sample
  1647. code they could append to the forum.  Thanks!
  1648.  
  1649. Cynthia Berry
  1650. Twentieth Century Services
  1651. 816-340-7973
  1652. ********************************************************************** 
  1653.  
  1654. If the object maps to a physical object (such as a file or program (not
  1655. program reference object, or a folder) then deleting the actual object
  1656. will cause WPS to delete the WPS object.  Otherwise, I don't think this
  1657. is possible.
  1658.  
  1659. (Note that if you go this route, you have to use DEL with the /F option,
  1660. otherwise if DELDIR is active, WPS just updates the object to point to
  1661. the DELETE directory.)
  1662.  
  1663. Tom Bridgman
  1664. NetDoor Development
  1665. (BITNET:  MRTOM at YKTVMV  InterNet:  MRTOM @ WATSON.IBM.COM)
  1666. ********************************************************************** 
  1667.  
  1668. [Reference to append at 20:10 on 94/04/21 by STW1CYC at HONE82 ] 
  1669.  
  1670. To: Cynthia Berry - Append created on 94/04/21 at 14:34 PST
  1671.  
  1672.    > Is it possible to delete objects from the OS/2     <
  1673.    > desktop without knowing their objectid?        <
  1674.  
  1675. Yes, but unfortunately it requires a mouse and the Desktop. (Sorry,
  1676. couldn't resist <g>).
  1677.  
  1678. You might want to take a look at DeskMan/2 and repost your question
  1679. there. DeskMan/2 will allow you to assign an OBJECTID to any object
  1680. (they get its handle via SOM) and they may be able to offer some other
  1681. suggestions.
  1682.  
  1683. Dick Goran                       CIS 72200,347
  1684. "REXX Reference Summary Handbook"            1-800-REXXOS2
  1685.  
  1686.      If you see this line, FORBROWSE didn't steal it!
  1687. ********************************************************************** 
  1688.  
  1689. Thanks!  I appreciate your response...even though it wasn't what I
  1690. was hoping for.
  1691.  
  1692. Cynthia Berry
  1693. Twentieth Century Services
  1694. 816-340-7973
  1695. ********************************************************************** 
  1696.  
  1697.  
  1698. ΓòÉΓòÉΓòÉ 18. IBMer Note & File Transfer Access ΓòÉΓòÉΓòÉ
  1699.  
  1700. * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * 
  1701. * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
  1702.  
  1703.    \********************************************************/
  1704.    \*                            */
  1705.    \*     Note to All IBMers visiting this forum     */
  1706.    \*                            */
  1707.    \********************************************************/
  1708.  
  1709. If you would like to be able to send and receive Profs notes and
  1710. files via OS2BBS, please send a note to IBMLINK at ATLVM1 requesting
  1711. that access.
  1712.  
  1713. I have been told by Dennis Johnson HONE81(AM00035) that there is an
  1714. interdivisional charge for this access; however, he assured me that
  1715. it is just a minimal paper transaction.
  1716.  
  1717. Dick Goran, owner OS2REXX CFORUM            CIS 72200,347
  1718.  
  1719.      If you see this line, FORBROWSE didn't steal it!
  1720. ********************************************************************** 
  1721.  
  1722.  
  1723. ΓòÉΓòÉΓòÉ 19. OS/2 2.1 System Settings ΓòÉΓòÉΓòÉ
  1724.  
  1725. * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * 
  1726. * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
  1727.  
  1728. This is a repeat of a previous append from 2 weeks ago.  Apparently
  1729. appends from Canada weren't crossing the border (so much for free
  1730. trade!).
  1731.  
  1732. I am customizing the OS/2 2.1 desktop and have successfully changed the
  1733. the settings on the WP_DESKTOP object, but when I try to change the
  1734. the same keywords (CCVIEW, HIDEBUTTON, MINWIN) in the 'System' object
  1735. (WP_SYSTEM), then it doesn't work (using SysSetObjectData). I know
  1736. I am targetting the correct object because I can change the Title
  1737. successfully.  Strangely, even though I can't see the changes in the
  1738. settings notebook Window tab, if I query the object settings with
  1739. Deskman/2, I see the new values (CCVIEW=YES; , etc.).  Is it possible
  1740. that the Window tab settings in WP_SYSTEM have different key names?
  1741. Or are they marked not changeable?
  1742.  
  1743. Thanks for any ideas,
  1744.  
  1745. Mike McVarish - LAN Specialist, Workers Compensation Board
  1746.  
  1747. Append copied from OS2REXX  CFORUM  on OS2BBS
  1748.  
  1749. Append moved from OS2WPS  CFORUM  on OS2BBS
  1750. ********************************************************************** 
  1751.  
  1752. <WP_SYSTEM> is a very special object.
  1753.  
  1754. Although it  seems to behave  like any other object,  it's one of  a dual
  1755. nature.  It has it's own settings, like CCVIEW, HIDEBUTTON, MINWIN, etc.,
  1756. and you  can set and  query them but  they will  NOT be reflected  in its
  1757. Settings pages! (Although the object will obey them).
  1758.  
  1759. This is where the second nature, the Mr. Hyde, comes to show.  The values
  1760. displayed in the Settings are the GLOBAL SYSTEM values.  Those are stored
  1761. not as  the object's  instance data but  rather placed in  the OS2.INI.
  1762. Look under PM_ControlPanel - you will find them there, unless the objects
  1763. displays the system defaults.  As soon  as you change anything,  an entry
  1764. gets created in the OS2.INI file.
  1765.  
  1766. Obviously, since the same (or similar) Settings pages are used to display
  1767. a different set of values, the settings  for the System object are simply
  1768. not displayed...
  1769.  
  1770. Now, on the subject  how to set those system-wide  settings:  configure a
  1771. system the way you want it to be,  use whatever method you prefer to read
  1772. the PM_ControlPanel  values and apply them  to the system(s) you  want to
  1773. configure (DeskMan/2 can do the Save/Restore part, either through REXX or
  1774. interactively but a REXX program will do, too).
  1775. |
  1776. |Forgot to mention that the global settings take after you reboot.
  1777. |
  1778. Gregory Czaja, Lexington 8-545-4977  GregC at LEXGate 1994/04/22  10:00
  1779. ********************************************************************** 
  1780.  
  1781. Thanks for the thorough explanation.  I am going to try to use INICOPY
  1782. to copy over the PM_Control_Panel section to another workstation.
  1783.  
  1784. Mike McVarish - LAN Specialist, Workers Compensation Board
  1785. ********************************************************************** 
  1786.  
  1787.  
  1788. ΓòÉΓòÉΓòÉ 20. Lost my VX-REXX CFORUM ΓòÉΓòÉΓòÉ
  1789.  
  1790. * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * 
  1791. * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
  1792.  
  1793. This is probably the wrong forum to ask this but I am too lazy to switch
  1794. forum.  Somehow I lost the VX-REXX forum from by ForBrows download
  1795. list.  When I do a Conference, Download, and List, VX-REXX doesn't get
  1796. listed anymore (it had been).  Anybody know how I get it back?
  1797.  
  1798. Kim Cheung, DEV4661, (818)288-7774
  1799. ********************************************************************** 
  1800.  
  1801. To: Kim Cheung - Append created on 94/04/22 at 09:01 PST
  1802.  
  1803.    > When I do a Conference, Download, and List, VX-REXX  <
  1804.    > doesn't get listed anymore (it had been). Anybody   <
  1805.    > know how I get it back?                <
  1806.  
  1807. Select Conference (or F4) and then select List Available Fora and
  1808. select VX-REXX.CFO.
  1809.  
  1810. Dick Goran                       CIS 72200,347
  1811. "REXX Reference Summary Handbook"            1-800-REXXOS2
  1812.  
  1813.      If you see this line, FORBROWSE didn't steal it!
  1814. ********************************************************************** 
  1815.  
  1816.  
  1817. ΓòÉΓòÉΓòÉ 21. Changing the Screen Resolution via REXX ΓòÉΓòÉΓòÉ
  1818.  
  1819. * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * 
  1820. * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
  1821.  
  1822. Is it possible to change the screen resolution via REXX.  I thought that the Sys
  1823. call might do this...but, the documentation doesn't seem to indicate this.
  1824.  
  1825. To change the screen resolution manual you would go into 'System Setup' then int
  1826. 'System' program and select the screen tab.  We would like to automate this if a
  1827. all possible.  I am open to other suggestions if SysIni won't work.  Thanks!
  1828.  
  1829. Cynthia Berry
  1830. Twentieth Century Services
  1831. 816-340-7973
  1832. ********************************************************************** 
  1833.  
  1834. To: Cynthia Berry - Append created on 94/04/22 at 09:05 PST
  1835.  
  1836.    > To change the screen resolution manual you would go  <
  1837.    > into 'System Setup' then int 'System' program and   <
  1838.    > select the screen tab.                 <
  1839.  
  1840. I am not familiar with a "screen" tab in the system notebook settings.
  1841. The only way that I know of to change screen resolution is via
  1842. DSPINSTL (or SETVGA for regression from SVGA).
  1843.  
  1844. I don't know of any way in REXX to change the screen resolution.
  1845.  
  1846. Twentieth Century Services
  1847. 816-340-7973
  1848.  
  1849. Dick Goran                       CIS 72200,347
  1850. "REXX Reference Summary Handbook"            1-800-REXXOS2
  1851.  
  1852.      If you see this line, FORBROWSE didn't steal it!
  1853. ********************************************************************** 
  1854.  
  1855. You only get the Screen tab in the System Settings Notebook if you
  1856. have installed a video driver that supports multiple resolutions.
  1857. XGA, for example, will give you a one page Screen section.
  1858. XGA/2, on the other hand, will give you a two page Screen section that
  1859. includes the choice of what monitor is attached in addition to
  1860. the resolution settings. A reboot is required to see the results.
  1861. As far as access to the settings, there are .DSC and .DGS files that
  1862. are installed along with OS/2 that might have the answer. I know the
  1863. .DSC files are text, I fear the .DGS are binary.
  1864.  
  1865. (Note, the use of the term 'video driver'. Although your 'card' may
  1866. support multiple resolutions, such as SVGA, SVGA requires a different
  1867. video driver for each resolution. Hence, no page and DSPINST is
  1868. required.)  JASII
  1869. ********************************************************************** 
  1870.  
  1871. To: Jerry A. Stegenga - Append created on 94/04/23 at 22:58 PST
  1872.  
  1873.    > You only get the Screen tab in the System Settings   <
  1874.    > Notebook if you have installed a video driver that   <
  1875.    > supports multiple resolutions.             <
  1876.  
  1877. Thanks. I have never played with one of those.
  1878.  
  1879. Dick Goran                       CIS 72200,347
  1880. "REXX Reference Summary Handbook"            1-800-REXXOS2
  1881.  
  1882.      If you see this line, FORBROWSE didn't steal it!
  1883. ********************************************************************** 
  1884.  
  1885.  
  1886. ΓòÉΓòÉΓòÉ 22. REXX Reference Summary Handbook and Indelible Blue ΓòÉΓòÉΓòÉ
  1887.  
  1888. * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * 
  1889. * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
  1890.  
  1891. Dick,
  1892.  Can you help me out here?  We just received 5 copies of the handbook
  1893. ordered from Indelible Blue.  When we ordered, we specifically said
  1894. "REV 2" and gave the proper ISBN.  What we received were 5 copies of
  1895. REV 1.  Are you still distributing through Indelible Blue?  Should we
  1896. have gotten Rev 2 from them, or do we now have to go directly through
  1897. you?
  1898.  
  1899. Thanks for any information.
  1900.  
  1901. -Scott Samuelson- Washington Public Power Supply System (509)372-5197
  1902. ********************************************************************** 
  1903.  
  1904. To: Scott Samuelson - Append created on 94/04/22 at 09:10 PST
  1905.  
  1906.    > Are you still distributing through Indelible Blue?   <
  1907.    > Should we have gotten Rev 2 from them, or do we now  <
  1908.    > have to go directly through you?            <
  1909.  
  1910. Indelible Blue has the second edition on hand. We also drop shipped
  1911. some to them in San Francisco for the Technical Interface Conference.
  1912. They should not have shipped the first edition. (I didn't know they
  1913. had any left.)
  1914.  
  1915. If you have any problem with them exchanging them, please let me know.
  1916. You may have to check with Katy Ansardi at Indelible after she returns
  1917. from SF.
  1918.  
  1919. Dick Goran                       CIS 72200,347
  1920. "REXX Reference Summary Handbook"            1-800-REXXOS2
  1921.  
  1922.      If you see this line, FORBROWSE didn't steal it!
  1923. ********************************************************************** 
  1924.  
  1925. Dick,
  1926.  
  1927. >Indelible Blue has the second edition on hand. We also drop shipped
  1928. >some to them in San Francisco for the Technical Interface Conference.
  1929. >They should not have shipped the first edition. (I didn't know they
  1930. >had any left.)
  1931. >
  1932. >If you have any problem with them exchanging them, please let me know.
  1933. >You may have to check with Katy Ansardi at Indelible after she returns
  1934. >from SF.
  1935.  
  1936. Thanks for the info... The ball is now back in our purchasing depts
  1937. court.  If we have any problems, I'll let you know.
  1938.  
  1939. -Scott Samuelson- Washington Public Power Supply System (509)372-5197
  1940. ********************************************************************** 
  1941.  
  1942.  
  1943. ΓòÉΓòÉΓòÉ 23. SysCreateObject hangs ΓòÉΓòÉΓòÉ
  1944.  
  1945. * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * 
  1946. * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
  1947.  
  1948. Hi,
  1949.  When I run the following CMD the SysCreateObject hangs.
  1950. What am I doing wrong. I have OS/2 2.1.
  1951.  
  1952. /*  REXX command */
  1953. call RxFuncAdd 'SysLoadFuncs', 'RexxUtil', 'SysLoadFuncs'
  1954. call SysLoadFuncs
  1955. trace results
  1956. rc = 0
  1957. rc=SysCreateObject("WPFolder","Test","<WP_DESKTOP>")
  1958. if rc then
  1959.  Say 'Test object has been sucessfully created. RC = ' rc
  1960.  else
  1961.  Say 'object had problems being created. RC = ' rc
  1962.  
  1963.  Regards, Eugene
  1964. ********************************************************************** 
  1965.  
  1966. As far as I can see, you are doing nothing wrong... This is on 2.1GA:
  1967.  
  1968.  D:\myprogs> testfold
  1969.    5 *-*  rc = 0;
  1970.     >>>   "0"
  1971.    6 *-*  rc = SysCreateObject('WPFolder', 'Test', '<WP_DESKTOP>');
  1972.     >>>   "1"
  1973.    7 *-*  If rc;
  1974.     >>>   "1"
  1975.    7 *-*  Then;
  1976.    8 *-*   Say 'Test object has been sucessfully created. RC = ' rc;
  1977.     >>>    "Test object has been sucessfully created. RC =  1"
  1978. Test object has been sucessfully created. RC =  1
  1979.  
  1980. Have you any problems creating folders form Templates?
  1981.  
  1982. Gregory Czaja, Lexington 8-545-4977  GregC at LEXGate 1994/04/22  13:09
  1983. ********************************************************************** 
  1984.  
  1985. Hi Gregory,
  1986.      As it semmed noone else was having this problem, including
  1987. yourself, I recreated the desktop and now all is OK.
  1988. Thanks, Eugene.
  1989. ********************************************************************** 
  1990.  
  1991. [Reference to append at 17:45 on 94/04/22 by 75419871 at EHONE ] 
  1992.  
  1993. To: Eugene - Append created on 94/04/22 at 21:26 PST
  1994.  
  1995.    > When I run the following CMD the SysCreateObject    <
  1996.    > hangs. What am I doing wrong. I have OS/2 2.1.     <
  1997.  
  1998. Your example ran, unchanged on my system. However, I will offer a
  1999. couple of comments:
  2000.  
  2001. The statement rc = 0 is unnecessary since the return code from
  2002. SysCreateObject() will cause the variable rc to be set to some value.
  2003.  
  2004. The test "if rc" would be  wrong unless rc is assigned a value of 0
  2005. or 1. A better way of testing would be "if rc = 1 then".
  2006.  
  2007. Dick Goran                       CIS 72200,347
  2008. "REXX Reference Summary Handbook"            1-800-REXXOS2
  2009.  
  2010.      If you see this line, FORBROWSE didn't steal it!
  2011. ********************************************************************** 
  2012.  
  2013.  
  2014. ΓòÉΓòÉΓòÉ 24. .ICO files into a .DLL ΓòÉΓòÉΓòÉ
  2015.  
  2016. * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * 
  2017. * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
  2018.  
  2019. Can anyone tell me how to create an icon resource file?  Do I need
  2020. extra software packages to put multiple .ico files into one dll?
  2021. Any help would be appreciated.
  2022.  
  2023. Rex A. Desierto
  2024. Caremark
  2025. ********************************************************************** 
  2026.  
  2027. The toolkit is required to compile your resource file into the DLL or EXE,
  2028. but there is nothing extra needed for multiple icons per file.  The .RC
  2029. file should look something like this...
  2030.  
  2031. ...
  2032. ICON  100  myIconFile.ICO
  2033. ICON  102  myOtherIconFile.ICO
  2034. ICON  103  myLastIconFile.ICO
  2035. ...
  2036.  
  2037. The elipses denote other stuff in your resource file and the numbers are
  2038. usually #define constants, and there are other options described in the
  2039. toolkit doc that you might want to consider.
  2040.  
  2041. After the file is built simply use the resource compiler to bind your
  2042. resources to your DLL.  It's no different than an executable module.  You
  2043. may now reference your icons by their resource id (that's the number next    )
  2044. to it.
  2045.  
  2046. Joe Wyatt
  2047.  
  2048. P.S.  This seems a little misplaced.  If there are any further
  2049. questions on this you might want to try the toolkit forum or the pm        forum.
  2050. programming.
  2051. ********************************************************************** 
  2052.  
  2053. >After the file is built simply use the resource compiler to bind your
  2054. >resources to your DLL.  It's no different than an executable module.  You
  2055. >may now reference your icons by their resource id (that's the number next
  2056. >to it.
  2057.  
  2058. Is there a way to now directly access those icons using Rexx? If not How
  2059. could I make doing so possible?
  2060.  
  2061. Al Brown, Brown & Associates Consulting
  2062. Voice: (402)291-1410  Fax: (402)291-1623
  2063. ********************************************************************** 
  2064.  
  2065. The way to access an icon in a DLL is to use the parameter:
  2066. ICONRESOURCE= x icondll; where x is the number or handle of the
  2067. particular icon in the DLL and icondll is the filename of your .DLL
  2068. which should be located somewhere in your LIBPATH.  The only way I know
  2069. of to keep track of what numbers belong to what icons is to hold on to
  2070. the .RC file, unless there is an app that lets you view icons in a .DLL
  2071. resource, but I haven't seen one.
  2072.  
  2073. By the way, Joe, I tried your hints, but I ran into some problems, so
  2074. I asked for more assistance on the OS2PMprog (?) Forum.  As I stated
  2075. in that forum, I am more of a REXX type person which is why I started
  2076. asking around here first.
  2077.  
  2078. Thanks,
  2079. Rex A. Desierto
  2080. Caremark
  2081. ********************************************************************** 
  2082.  
  2083. [Reference to append at 03:06 on 94/04/28 by WZ01038 at HONE80 ] 
  2084.  
  2085. REXX cannot directly access the resources in the DLL.  However
  2086. if the DLL is being created to house REXX functions or procedures
  2087. there could be another added to give REXX access to them.  I'm not
  2088. quite sure why you would want or need to, but it can be done.  Would
  2089. you like to give a few more details so that someone here might be
  2090. able to steer you on to a more straight forward path?
  2091. ********************************************************************** 
  2092.  
  2093. >REXX cannot directly access the resources in the DLL.  However
  2094. >if the DLL is being created to house REXX functions or procedures
  2095. >there could be another added to give REXX access to them.  I'm not
  2096. >quite sure why you would want or need to, but it can be done.  Would
  2097. >you like to give a few more details so that someone here might be
  2098. >able to steer you on to a more straight forward path?
  2099.  
  2100. I'm looking for a simple method to gather a large number of Icons together
  2101. for a project I'm working on using Vispro.  Since some of the Icons would
  2102. be standard and shipped with the project it would be much handier to put
  2103. them together in a .dll and access them from there than have to ship a
  2104. couple hundred little files along with the app.
  2105.  
  2106. I just thought that someone was saying that there was a way to access these
  2107. in Rexx and it peaked my intrest.<G>
  2108.  
  2109. Al Brown, Brown & Associates Consulting
  2110. Voice: (402)291-1410  Fax: (402)291-1623
  2111. ********************************************************************** 
  2112.  
  2113. To: Al Brown - Append created on 94/04/29 at 13:02 PST
  2114.  
  2115.    > I just thought that someone was saying that there was <
  2116.    > a way to access these in Rexx and it peaked my     <
  2117.    > intrest.<G>                      <
  2118.  
  2119. It can be done using C++ Al. I can't tell you how as I have my C++
  2120. comiler installed but haven't begun using it yet. However, you MUST
  2121. know the resource ID in ther DLL to reference it. There is no way to
  2122. search the IDs. Here is a modified version of one of Mike Lamb's
  2123. original programs, contained in CRTOBJ that, that copies the icons
  2124. from a DLL to a separate folder:
  2125.  
  2126. /* ICONRES.CMD: Sample code using REXXUTIL's SysCreateObject function  */
  2127. /* Routine will create a folder containing many icons available in    */
  2128. /* installed DLLs on an OS/2 V2 system. Shows how to use the setup    */
  2129. /* string parm: ICONRESOURCE                       */
  2130. /* Mike Lamb: MIKELAMB/KGNVMC / 30NC/370 Neighborhood Rd         */
  2131. /* ISSC MHV - Solution Center / Kingston NY 12401            */
  2132. /* Version 1.0                              */
  2133.  
  2134. /*------------------------------------------------------------------------*/
  2135. /*                                     */
  2136. /*             Build folder for icons             */
  2137. /*                                     */
  2138. /*------------------------------------------------------------------------*/
  2139.  
  2140. /*---------------*/
  2141. /* Abstract icon */
  2142. /*---------------*/
  2143. icon_class   = 'WPAbstract'
  2144. icon_location = '<ICN_FOLDER>'
  2145. icon_option  = 'REPLACE'
  2146.  
  2147. /*--------*/
  2148. /* Folder */
  2149. /*--------*/
  2150. wpf_class   = 'WPFolder'
  2151. wpf_location = '<WP_DESKTOP>'
  2152. wpf_title   = 'ICONRESOURCE'x2c(A)'Icon Folder'
  2153. wpf_option  = 'REPLACE'
  2154. wpf_string  =,
  2155.   'DETAILSFONT=8.Helv;'        ΓòæΓòæ,
  2156.   'DETAILSVIEW=MINI;'         ΓòæΓòæ,
  2157.   'ICONFONT=2.System VIO;'       ΓòæΓòæ,
  2158.   'ICONPOS=38 90;'           ΓòæΓòæ,
  2159.   'ICONVIEW=FLOWED,NORMAL;'      ΓòæΓòæ,
  2160.   'ICONVIEWPOS=00,00,100,100;'     ΓòæΓòæ,
  2161.   'OBJECTID=' ΓòæΓòæ icon_location ΓòæΓòæ ';' ΓòæΓòæ,
  2162.   'OPEN=ICON;'             ΓòæΓòæ,
  2163.   'TREEFONT=14.System;'        ΓòæΓòæ,
  2164.   'TREEVIEW=LINES,NORMAL;'       ΓòæΓòæ,
  2165.   ''
  2166.  
  2167. call CHAROUT 'CON', 'Removing: ICONRESOURCE Icon Folder'
  2168. call SysDestroyObject icon_location
  2169. If RESULT = 1 Then
  2170.   call LINEOUT 'CON', '  ...  Object destroyed!'
  2171. Else
  2172.   call LINEOUT 'CON', '  ...  Not destroyed! Return code = ' ΓòæΓòæ RESULT
  2173. call SysSleep 5           /* give message a chance to be seen */
  2174.  
  2175. call CHAROUT 'CON', 'Building: ICONRESOURCE Icon Folder'
  2176. call SysCreateObject wpf_class,,
  2177.            wpf_title,,
  2178.            wpf_location,,
  2179.            wpf_string,,
  2180.            wpf_option
  2181. If RESULT = 1 Then
  2182.   call LINEOUT 'CON', '  ...  Object created!'
  2183. Else
  2184.   call LINEOUT 'CON', '  ...  Not created! Return code = ' ΓòæΓòæ RESULT
  2185.  
  2186. /*------------------------------------------------------------------------*/
  2187. /*                                     */
  2188. /*              Put icons in folder              */
  2189. /*                                     */
  2190. /*------------------------------------------------------------------------*/
  2191. /* WPCONFIG 1-13 WPPRTMRI 3-16 19-23 */
  2192. fn = 'PMWP'
  2193. Do i = 1 to 75
  2194.   If i<5 Γòæ i=13 Γòæ (i>15 & i<21) Γòæ i=22 Γòæ (i>23 & i<30) Γòæ i=32 Γòæ i=33,
  2195.      Γòæ i=44 Γòæ i=46 Γòæ i=48 Γòæ i=52 Γòæ i=53 Γòæ (i>55 & i<73) Then
  2196.    Call BldObj
  2197. End
  2198.  
  2199. fn = 'WPCONFIG'
  2200. Do i = 1 to 13
  2201.   Call BldObj
  2202. End
  2203.  
  2204. fn = 'WPPRTMRI'
  2205. Do i = 3 to 23
  2206.   If ( i < 17 ) Γòæ ( i > 18 ) Then
  2207.    Call BldObj
  2208. End
  2209.  
  2210. Say '';Say 'All done, to remove drag folder to shredder...'
  2211.  
  2212. Exit
  2213.  
  2214. /*--------------*/
  2215. /* Build Object */
  2216. /*--------------*/
  2217. BldObj:
  2218.  
  2219. j = RIGHT( i, 2, '0' )
  2220. icon_title = fn ΓòæΓòæ '-' ΓòæΓòæ j
  2221. icon_string =,
  2222.       'ICONRESOURCE='  ΓòæΓòæ j  ΓòæΓòæ ' ' ΓòæΓòæ fn ΓòæΓòæ ';'  ΓòæΓòæ,
  2223.       'OBJECTID=<ICN-' ΓòæΓòæ fn ΓòæΓòæ '-' ΓòæΓòæ j  ΓòæΓòæ '>;' ΓòæΓòæ,
  2224.       ''
  2225.  
  2226. call CHAROUT 'CON', 'Building: ' ΓòæΓòæ icon_title
  2227. result = SysCreateObject(icon_class,,
  2228.              icon_title,,
  2229.              icon_location,,
  2230.              icon_string,,
  2231.              icon_option )
  2232. If RESULT = 1 Then
  2233.   call LINEOUT 'CON', '  ...  Object created!'
  2234. Else
  2235.   call LINEOUT 'CON', '  ...  Not created! Return code = ' ΓòæΓòæ RESULT
  2236. Return
  2237.  
  2238. Dick Goran                       CIS 72200,347
  2239. "REXX Reference Summary Handbook"            1-800-REXXOS2
  2240.  
  2241.      If you see this line, FORBROWSE didn't steal it!
  2242. ********************************************************************** 
  2243.  
  2244.  
  2245. ΓòÉΓòÉΓòÉ 25. folder.cmd ΓòÉΓòÉΓòÉ
  2246.  
  2247. * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * 
  2248. * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
  2249.  
  2250. Here's a little .CMD file I find useful.  I usually work from the OS/2
  2251. command line prompt, but sometimes I need to open up the WPS
  2252. folder that corresponds to a directory.  Rather than opening up the
  2253. Drives folder and searching down the tree, I just use the following
  2254. command file.  Just type "folder" to open the folder for the current
  2255. directory, "folder .." for the parent dir, "folder d:\tmp", etc. etc.
  2256.  
  2257. Eric Giguere, WATCOM
  2258.  
  2259. /* folder.cmd -- Opens the WPS folder for the given directory.
  2260.  * You can use relative paths.  If no directory specified, opens
  2261.  * the folder for the current directory.
  2262.  */
  2263.  
  2264. call RXFuncAdd 'SysLoadFuncs', 'REXXUTIL', 'SysLoadFuncs'
  2265. call SysLoadFuncs
  2266.  
  2267. call setlocal
  2268. dir = arg(1)
  2269. if( dir \= '' )then call directory( dir )
  2270. dir = directory()
  2271. call endlocal
  2272.  
  2273. /* Yes, twice... */
  2274.  
  2275. call SysSetObjectData dir, 'OPEN=DEFAULT;'
  2276. call SysSetObjectData dir, 'OPEN=DEFAULT;'
  2277.  
  2278. exit 0
  2279. ********************************************************************** 
  2280.  
  2281. Eric
  2282.  
  2283.   Thank you. I wanted to do that for some time. Would you have any
  2284. complaint if I were to put a copy of that in our U group news?
  2285.  
  2286. TIA
  2287.  
  2288. e ilsley
  2289. ********************************************************************** 
  2290.  
  2291. Go right ahead and do what you want with it.  I hereby put it in the
  2292. public domain.  (Seems silly to say so for such an obvious little
  2293. program...)
  2294.  
  2295. Eric Giguere, WATCOM
  2296. ********************************************************************** 
  2297.  
  2298. Thanks Eric, PS I really like this thing. I'm a command line nut but
  2299. some things do really work better with a folder.
  2300.  
  2301. e ilsley
  2302. ********************************************************************** 
  2303.  
  2304. Eric
  2305.  
  2306.   I have noticed that the open folder does not appear to want to
  2307. open another view or sort. Arrange does work. Is this a WPS buglet ?
  2308. Do you think it worth reporting?
  2309.  
  2310. e ilsley
  2311. ********************************************************************** 
  2312.  
  2313.  
  2314. ΓòÉΓòÉΓòÉ 26. Hidden password ΓòÉΓòÉΓòÉ
  2315.  
  2316. * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * 
  2317. * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
  2318.  
  2319. OK,  I'm sure this will be a headslapper (e.g. Wow! I could've had a V-8)
  2320. BUT  I'm trying to log on to multiple "things" (LAN, CICSWP, IBMLINK),
  2321. but I just want to type my password once.  I've got the password input
  2322. hidden, but here's the killer snippet:
  2323.  
  2324. ----------------------------------------
  2325. LanLogon = "LOGON "||UserId||" /p:"||PassWd   /* Set up the LAN logon strng*/
  2326. LanLogon                     /* Logon to the LAN      */
  2327. ----------------------------------------
  2328. If my UserID were George and my Password were Jones, when the second
  2329. line executed, you would see:
  2330.  
  2331. C:\>LOGON GEORGE /p:JONES
  2332.  
  2333. Well, gee!  That's not very secure.  How do I eliminate that part from
  2334. showing?
  2335.  
  2336. Gary Pool  MO Dept. Social Services
  2337. * EPM *  Program not working?  Rexx! Go lay down!  Bad Boy!
  2338. ********************************************************************** 
  2339.  
  2340. You can use '@Echo OFF' before LOGON, or simply:
  2341.  
  2342.   '@'LanLogon
  2343.  
  2344. Gregory Czaja, Lexington 8-545-4977  GregC at LEXGate 1994/04/25  16:00
  2345. ********************************************************************** 
  2346.  
  2347. >You can use '@Echo OFF' before LOGON, or simply:
  2348. >
  2349. >   '@'LanLogon
  2350.  
  2351. SLAP!! (No wonder I'm bald -- from all these head-slappers!)
  2352.  
  2353. Gary Pool  MO Dept. Social Services
  2354. * EPM *  Quickly, Gregory, to the REXXMOBILE!
  2355. ********************************************************************** 
  2356.  
  2357.  
  2358. ΓòÉΓòÉΓòÉ 27. Setting Read position ΓòÉΓòÉΓòÉ
  2359.  
  2360. * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * 
  2361. * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
  2362.  
  2363. Is there a way to move the read position to a particular
  2364. line number within a file without having to loop through
  2365. the file?  I know I can use the STREAM command with SEEK
  2366. to skip over x number of characters but can I somehow skip
  2367. over x number of lines?
  2368.  
  2369. Thanks.
  2370.  
  2371. Russell Baker
  2372. Blue Cross & Blue Shield of MD, Inc.
  2373. (410) 998-5499
  2374. ********************************************************************** 
  2375.  
  2376. No.  Under OS/2 or DOS there is no way, in any language, to find line
  2377. X without counting X-1 CRLF sequences (unless you know that the file
  2378. consists only of non-blank, fixed-length lines).
  2379.  
  2380. Tom Bridgman
  2381. NetDoor Development
  2382. (BITNET:  MRTOM at YKTVMV  InterNet:  MRTOM @ WATSON.IBM.COM)
  2383. ********************************************************************** 
  2384.  
  2385. Rats.  Thanks Tom.
  2386.  
  2387. Russell Baker
  2388. Blue Cross & Blue Shield of MD, Inc.
  2389. (410) 998-5499
  2390. ********************************************************************** 
  2391.  
  2392.  
  2393. ΓòÉΓòÉΓòÉ 28. WATCOM SQL ΓòÉΓòÉΓòÉ
  2394.  
  2395. * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * 
  2396. * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
  2397.  
  2398. I've just posted an announcement concerning WATCOM SQL for OS/2
  2399. (which includes a REXX interface) in the VX-REXX forum.
  2400.  
  2401. Eric Giguere, WATCOM
  2402. ********************************************************************** 
  2403.  
  2404.  
  2405. ΓòÉΓòÉΓòÉ 29. REXX program stops ΓòÉΓòÉΓòÉ
  2406.  
  2407. * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * 
  2408. * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
  2409.  
  2410. Does anybody know what it means when a REXX program gets to a
  2411. particular line and simply stops?  No error code.  No crash.  Nothing.  Just stops for no reason.
  2412.  
  2413. For instance, I have a line that says:
  2414.  
  2415.   rc = PipeRead(pipe, var)
  2416.   if rc \= 0 then say "Error with rc = "rc
  2417.  
  2418. When my program gets to the PipeRead line, it simply stops.
  2419. The error message line mply was never executed.
  2420.  
  2421. This one happens to be a VX-REXX program, but the offending line
  2422. is not VX-REXX related.
  2423. Thanks.
  2424.  
  2425. Kim Cheung, DEV4661, (818)288-7774
  2426. ********************************************************************** 
  2427.  
  2428. To: Kim Cheung - Append created on 94/04/27 at 11:30 PST
  2429.  
  2430.    > When my program gets to the PipeRead line, it simply  <
  2431.    > stops. The error message line mply was never      <
  2432.    > executed.                       <
  2433.  
  2434. It means that you have never returned from the PipeRead() function. I
  2435. don't know whose function that is, but it appears you are waiting on a
  2436. named pipe.
  2437.  
  2438. Dick Goran                       CIS 72200,347
  2439. "REXX Reference Summary Handbook"            1-800-REXXOS2
  2440.  
  2441.      If you see this line, FORBROWSE didn't steal it!
  2442. ********************************************************************** 
  2443.  
  2444. Dick
  2445.   Quercus Systems REXXLIB package has a NMPIPE_READ. Could this be
  2446. what Kim is attempting?
  2447.  
  2448. e ilsley
  2449. ********************************************************************** 
  2450.  
  2451. [Reference to append at 18:37 on 94/04/27 by DEV4672 at HONE82 ] 
  2452.  
  2453. I get it.  I get it.  Dick, you are right: it didn't return.
  2454.  More properly stated: It hasn't returned Γûáyet.  The termination message is not from that thread.  Another
  2455. thread had a problem and sn't returned Γûácrashed out, causing the main program to stopped.  That poor
  2456. thread listed above was still 't returned Γûáwaiting patiently.
  2457.  
  2458. Well come to the confusing world of multi-threading programming.
  2459.  
  2460. Thanks for the inspiration.
  2461.  
  2462. Kim Cheung, DEV4661, (818)288-7774
  2463. ********************************************************************** 
  2464.  
  2465. [Reference to append at 19:39 on 94/04/27 by PER518 at HONE81 ] 
  2466.  
  2467. To: e ilsley - Append created on 94/04/27 at 20:22 PST
  2468.  
  2469.    > Quercus Systems REXXLIB package has a NMPIPE_READ.   <
  2470.    > Could this be what Kim is attempting?         <
  2471.  
  2472. Only Kim can answer that. BTW, REXXLIB is fully documented in our
  2473. Handbook.
  2474.  
  2475. Dick Goran                       CIS 72200,347
  2476. "REXX Reference Summary Handbook"            1-800-REXXOS2
  2477.  
  2478.      If you see this line, FORBROWSE didn't steal it!
  2479. ********************************************************************** 
  2480.  
  2481.  
  2482. ΓòÉΓòÉΓòÉ 30. Refusing a drag and drop ΓòÉΓòÉΓòÉ
  2483.  
  2484. * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * 
  2485. * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
  2486.  
  2487. The application I am writing accepts a filename as a parameter
  2488. and therefore can be used with drag and drop. However, we don't
  2489. want anything other than a plain TEXT file dropped on us.
  2490.  
  2491. Can someone put up a REXX code fragment that would disallow
  2492. any other objects from being dragged on to this EXE ? Thanks
  2493.  
  2494. Bill Dickenson
  2495. ********************************************************************** 
  2496.  
  2497. Do you mean in regular REXX, or other REXX?  In VX-REXX, it's
  2498. very easy to do what you want. q 
  2499. Kim Cheung, DEV4661, (818)288-7774
  2500. ********************************************************************** 
  2501.  
  2502. [Reference to append at 18:08 on 94/04/27 by IL81656 at HONE82 ] 
  2503.  
  2504. To: Bill Dickenson - Append created on 94/04/27 at 20:06 PST
  2505.  
  2506.    > Can someone put up a REXX code fragment that would   <
  2507.    > disallow any other objects from being dragged on to  <
  2508.    > this EXE ?                       <
  2509.  
  2510. It is no different than chevking / validating the parameter in command
  2511. line mode. Here's an example (assumes no imbedded spaces in name):
  2512.  
  2513.   /* */
  2514.   parse arg file_name .
  2515.   if UPPER( RIGHT( FILESPEC( 'N', file_name), 4 ) ) <> '.TXT' then
  2516.    do
  2517.      say file_name 'is not a valid file name'
  2518.      exit
  2519.    end
  2520.   else
  2521.    do
  2522.      say 'Processing' file_name
  2523.    end
  2524.   exit
  2525.  
  2526. Dick Goran                       CIS 72200,347
  2527. "REXX Reference Summary Handbook"            1-800-REXXOS2
  2528.  
  2529.      If you see this line, FORBROWSE didn't steal it!
  2530. ********************************************************************** 
  2531.  
  2532. Dick,
  2533.  
  2534. I think Bill wants to ensure that the data file object has a
  2535. type of "Plain Text" assigned to it. I do not know how this can be done
  2536. but perhaps a WPS expert can answer if the Type setting of a WPDataFile
  2537. object can be queried?
  2538.  
  2539. Maurice Cartier: IBMMail(CAPCO9CB)
  2540. Procor Ltd, Oakville, Ontario
  2541. ********************************************************************** 
  2542.  
  2543. Bill,
  2544.  
  2545. You may want to peruse the OS2WPS bulletin questions under the title
  2546. of Adding ASSOCTYPEs.  I was interested in finding out via REXX whether
  2547. "Plain Text" was associated with the E.EXE program.  It looks like
  2548. the answer is you can do it in "C" but not REXX.
  2549.  
  2550. Russell Baker
  2551. Blue Cross & Blue Shield of MD, Inc.
  2552. (410) 998-5499
  2553. ********************************************************************** 
  2554.  
  2555. [Reference to append at 14:42 on 94/04/28 by XXPCOR02 at TORVMCOP ] 
  2556.  
  2557. To: Maurice Cartier - Append created on 94/04/28 at 12:18 PST
  2558.  
  2559.    > I think Bill wants to ensure that the data file    <
  2560.    > object has a type of "Plain Text" assigned to it.   <
  2561.  
  2562. You're probably right. I didn't think of that.
  2563.  
  2564. It can be accomplished using the SysGetEA() function with an EA name
  2565. of '.TYPE'. Of course this presuposes that a TYPE has been assigned to
  2566. the file.
  2567.  
  2568. Dick Goran                       CIS 72200,347
  2569. "REXX Reference Summary Handbook"            1-800-REXXOS2
  2570.  
  2571.      If you see this line, FORBROWSE didn't steal it!
  2572. ********************************************************************** 
  2573.  
  2574. [Reference to append at 17:23 on 94/04/28 by MDBC028 at HONE81 ] 
  2575.  
  2576. To: Russell Baker - Append created on 94/04/28 at 12:43 PST
  2577.  
  2578.    > I was interested in finding out via REXX whether    <
  2579.    > "Plain Text" was associated with the E.EXE program.  <
  2580.    > It looks like the answer is you can do it in "C" but  <
  2581.    > not REXX.                       <
  2582.  
  2583. Unless I am still missing something here, the ".TYPE" extended
  2584. attribute can be assigned to a file via the SysPutEA() function and
  2585. interrogated via the SysGetEA() function.
  2586.  
  2587. REXXLIB, from Quercus, has a function that will return all of the EAs
  2588. assocaited with a file. It is the function that I used in LISTEA.CMD
  2589. (available here in the Software Library) to get the EAs.
  2590.  
  2591. Dick Goran                       CIS 72200,347
  2592. "REXX Reference Summary Handbook"            1-800-REXXOS2
  2593.  
  2594.      If you see this line, FORBROWSE didn't steal it!
  2595. ********************************************************************** 
  2596.  
  2597. [Reference to append at 14:42 on 94/04/28 by XXPCOR02 at TORVMCOP ] 
  2598.  
  2599. That is exactly what I wanted. I'll root thru the SysEA stuff and
  2600. see if I can make it so.
  2601.  
  2602. Thanks to everyone who responded.
  2603. Bill Dickenson
  2604. ********************************************************************** 
  2605.  
  2606.  
  2607. ΓòÉΓòÉΓòÉ 31. Controlling full screen DOS session ΓòÉΓòÉΓòÉ
  2608.  
  2609. * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * 
  2610. * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
  2611.  
  2612. Does anybody know why is it that when I start a full screen DOS
  2613. session from my REXX program ╨áit gets started in the background?
  2614.  
  2615. The parameters I am using is this:
  2616.  
  2617.    classname='WPProgram'
  2618.    title='CFG4P.EXE'
  2619.    location='<WP_NOWHERE>'            /* place
  2620. in invisible folder   */ gram ╨á    program='EXENAME=CFG4P.EXE;'         /* DOS program
  2621. name       */ */ gram ╨á    type='PROGTYPE=VDM;MAXIMIZED=YES;'     /* type of DOS
  2622. session (windowed) */ */ gram ╨á    startup='STARTUPDIR='HomeDir';'         /* startup
  2623. directory      */  gram ╨á    open='OPEN=DEFAULT;'              /* open
  2624. now          */ /  gram ╨á    settings='SET DOS_FILES=99;' ΓòæΓòæ,         /* required
  2625. DOS settings     */ ram ╨á     'SET DOS_HIGH=1;'
  2626.    window='SET CCVIEW=NO;'
  2627.  
  2628.    call SysCreateObject classname, title, location,,
  2629.      programΓòæΓòætypeΓòæΓòæstartupΓòæΓòæsettingsΓòæΓòæopenΓòæΓòæwindow, 'REPLACE'
  2630.  
  2631. If that's the way things work, is there anyway I can switch to
  2632. that process from the program? ╨áIf this is a windowed process, I can always get the window list
  2633. and issue a SetFocus to it m? ╨ábut since it's a full screen DOS session, I couldn't do that.
  2634.  
  2635. Is there anyway to switch to a full screen DOS session?
  2636.  
  2637. p.s.: I can't start this up windowed.  For some reason, the keyboard
  2638. gets locked if I do that. ╨á
  2639. Thanks.
  2640.  
  2641. Kim Cheung, DEV4661, (818)288-7774
  2642. ********************************************************************** 
  2643.  
  2644. 1. this is BAD (broken as designed) behavior,
  2645.  
  2646. 2. create your  session with an object  ID and issue  a SysSetObjectData
  2647.   call  on it  with  another "OPEN=DEFAULT;".   Performing OPEN  twice
  2648.   should the switch,
  2649.  
  2650. 3. or  write yourself  a  small program  and  use WinSwitchToProgram  to
  2651.   switch to the started session,
  2652.  
  2653. 4. DeskMan/2 WPS Extensions have a "fix" for this problem and will force
  2654.   the opened view to the foreground,
  2655.  
  2656. 5. remember  to limit  yourself to  lines narrower  than 80  characters,
  2657.   otherwise your posts will look like this one:
  2658.  
  2659.    location='<WP_NOWHERE>'
  2660. in invisible folder   */ gram ╨½╨½╨½╨á╨½╨½
  2661.      /* DOS program
  2662. name       */ */ gram ╨½╨½╨½╨á╨½╨½
  2663.  /* type of DOS
  2664. session (windowed) */ */ gram ╨½╨½╨½╨á╨½╨½
  2665.      /* startup
  2666. directory      */  gram ╨½╨½╨½╨á╨½╨½
  2667.     /* open
  2668. now          */ /  gram ╨½╨½╨½╨á╨½╨½
  2669.       /* required
  2670. DOS settings     */ ram ╨½╨½╨½╨á╨½╨½
  2671.    window='SET CCVIEW=NO;'
  2672.  
  2673. 6. whoever  wrote the  VM frontend  for  this BBS  deserves the  capital
  2674.   punishment for allowing this to happen,
  2675.  
  2676. 7. have a nice day !-)
  2677.  
  2678. Gregory Czaja, Lexington 8-545-4977  GregC at LEXGate 1994/04/27  15:59
  2679. ********************************************************************** 
  2680.  
  2681. Thanks for responding, Greg.
  2682.  
  2683. >1. this is BAD (broken as designed) behavior,
  2684. >
  2685.  
  2686.   Do you mean OS/2's design or my program design??
  2687.  
  2688. >2. create your  session with an object  ID and issue  a SysSetObjectData
  2689. >  call  on it  with  another "OPEN=DEFAULT;".   Performing OPEN  twice
  2690. >  should the switch,
  2691. >
  2692.  
  2693.   Something is missing here.  "Performing OPEN twice should the switch," ???
  2694.  
  2695. >3. or  write yourself  a  small program  and  use WinSwitchToProgram  to
  2696. >  switch to the started session,
  2697.  
  2698.   I assume you mean like I have to go down the task list and
  2699. so forth and find the PID C  and then issue WinSwitchToProgram?  If that's the case, let
  2700. me try out the ybautil.dll. ^aΓòÆ╨á  They have some REXX interface like that.
  2701.  
  2702. >4. DeskMan/2 WPS Extensions have a "fix" for this problem and will force
  2703. >  the opened view to the foreground,
  2704.  
  2705.   I have DeskMan/2, can you be more specifc about the "fix"??
  2706.  
  2707. >5. remember  to limit  yourself to  lines narrower  than 80  characters,
  2708. >  otherwise your posts will look like this one:
  2709.  
  2710.   You have no idea how long I've been scraching my head as to
  2711. why some of my appends dll. ^aΓòÆ╨á  get garbled up.  So that's the reason.
  2712.  
  2713. Thanks again.
  2714.  
  2715. Kim Cheung, DEV4661, (818)288-7774
  2716. ********************************************************************** 
  2717.  
  2718. [Reference to append at 19:22 on 94/04/27 by DEV4661 at HONE82 ] 
  2719.  
  2720. To: Kim Cheung - Append created on 94/04/27 at 20:25 PST
  2721.  
  2722. KIM, KIM, KIM!
  2723.  
  2724. Please find out what is causing all kinds of unreadable characters in
  2725. your appends. Please look back at the append you posted and referenced
  2726. in this append (Shift-S if your in Forbrows) and look at what I am
  2727. referring to.
  2728.  
  2729. It appears that the same same string, '0410 04A4 0318'x, is insertted
  2730. whereever you should have a CR/LF ('0D0A'x).
  2731.  
  2732.    > Does anybody know why is it that when I start a full  <
  2733.    > screen DOS session from my REXX program it gets    <
  2734.    > started in the background?               <
  2735.  
  2736. Just issue the call to SysCreateObject() twice in succession and the
  2737. session will pop to the foreground.
  2738.  
  2739. Dick Goran                       CIS 72200,347
  2740. "REXX Reference Summary Handbook"            1-800-REXXOS2
  2741.  
  2742.      If you see this line, FORBROWSE didn't steal it!
  2743. ********************************************************************** 
  2744.  
  2745. [Reference to append at 22:36 on 94/04/27 by DEV4661 at HONE81 ] 
  2746.  
  2747. 1. I mean WPS' design (obviously :-), not yours.
  2748.  
  2749. 2. "Performing OPEN twice should the switch,"  - >force< is the missing
  2750.   word,
  2751.  
  2752. 3. Yes, walk the window list and WinSwitchToProgram. It assumes that:
  2753.   - your program creates an entry in the window list (it does),
  2754.   - it has a unique title (has it ?),
  2755.  
  2756. 4. You have it already ?-) Lucky you!  Version 1.5 just premiered at the
  2757.   SanFran  Technical  Interchange.   Except  for  many  fixes  and
  2758.   enhancements,  the  DeskMan/2  package will  include  "DeskMan/2  WPS
  2759.   Extensions for OS/2" The Extensions, (except for this little "fix" to
  2760.   the open  problem) contain  a bunch of  other functions:  additional
  2761.   open and close items, a "minimize on use" function, setup strings for
  2762.   customization   of   folder   menus   (optional   removal   of
  2763.   Sort/Find/Arrange/Shut  down/Lock up/System  setup), setting  "always
  2764.   maintain sort  order" and  the specific  sort order  and the  default
  2765.   view, as  well, setup strings for  setting or overriding  the default
  2766.   object  style (delete/copy/move/shadow/new/drop/  drag/settings)  for
  2767.   all or  selected objects on the  system and disabling  the associated
  2768.   WPS functions, and last, but not least, a setup string for performing
  2769.   the  close  of selected  object  view's  from  the command  line  (as
  2770.   companion to the OPEN=... setup string).
  2771.   The GUI adds  also an "extended drag  and drop" support where  you can
  2772.   use the  mouse and single  click to perform  move, copy or  shadow the
  2773.   same way you do move now.
  2774.   The upgrade to version 1.5 will be  made available, free of charge, to
  2775.   all current owners  of DeskMan/2 package.  Evan will  post the details
  2776.   in the DevTech forum as soon as he comes back from SF.
  2777.  
  2778. 5. yes, that's the  reason - it happened again, toward  the bottom, when
  2779.   you went over the right margin...
  2780.  
  2781. Gregory Czaja, Lexington 8-545-4977  GregC at LEXGate 1994/04/28  09:00
  2782. ********************************************************************** 
  2783.  
  2784. [Reference to append at 03:46 on 94/04/28 by DEV4672 at HONE81 ] 
  2785.  
  2786. Dick,
  2787.  
  2788. Okay, your tip on switching to the full screen DOS session works.
  2789.  However, once it started, let say the user do a ctrl-esc to go back to the desktop and later
  2790. on, he forgets that he started that DOS session and click a start button for
  2791. that program again.  I want to be able to switch back to the existing session.
  2792. I tried sending a SetFocus command to that window (oops, that's a VX-REXX
  2793. command), but nothing happens.  Also, if he terminates the front end on the
  2794. desktop without exiting that DOS program, I want to be able to force stop that
  2795. session.  If it were a windowed DOS session, I can place keystrokes in the
  2796. clip board, and paste them onto that DOS session to close it.  But with full
  2797. screen DOS, what do I do?  Can I send a Alt-Home to it?  No, no, if I can do
  2798. that, I could have sent other keystrokes.  What do I do?
  2799.  
  2800. p.s.: By the way, I changed the right margin for EPM to 80 and turned wrapping
  2801. on, let see if I got rid of the garbage characters.  This is crazy.
  2802.  
  2803. Thanks.
  2804.  
  2805. Kim Cheung, DEV4661, (818)288-7774
  2806. ********************************************************************** 
  2807.  
  2808. [Reference to append at 13:56 on 94/04/28 by GREGC at LEXVM2 ] 
  2809.  
  2810. >Gregory Czaja, Lexington 8-545-4977  GregC at LEXGate 1994/04/28  09:00
  2811.  
  2812. >4. You have it already ?-) Lucky you!  Version 1.5 just premiered at the
  2813.  
  2814. Greg,
  2815.  
  2816. I got that because the original version never did work for me.  This one is a
  2817. pre-release version.  I didn't spend any time looking at it yet.  May be I'll
  2818. get the final copy.
  2819.  
  2820. Boy, if Evan can do all that with DeskMan, you would think that he can replace
  2821. the window list with a icon list.  It's terrible that with all the graphical
  2822. stuff in WPS, that every time you hit ctrl-esc, you have to search thorugh a
  2823. text list (looks too much like Windows).
  2824.  
  2825. p.s.: By the way, I tried Dick's suggestion about calling SysCreateObject
  2826. twice  and it does work.  Then I don't have to do the WinSwitch.
  2827.  
  2828. Regards.
  2829.  
  2830. Kim Cheung, DEV4661, (818)288-7774
  2831. ********************************************************************** 
  2832.  
  2833. | fingers faster than brain. Sorry...
  2834.  
  2835. > Boy, if Evan  can do all that with  DeskMan, you would think  that he
  2836. > can replace the window  list with a icon  list.
  2837.  
  2838. Voice your request in the DevTech CFORUM - I think, it can be done.
  2839.  
  2840. > It's terrible that with  all the graphical stuff in WPS,  that every
  2841. > time you hit ctrl-esc,  you have to search  thorugh text list (looks
  2842. > too much like Windows).
  2843.  
  2844. Did you try VUEMan/2 (part of DeskMan/2 package)? You won't ever need a
  2845. window list again...
  2846.  
  2847. Gregory Czaja, Lexington 8-545-4977  GregC at LEXGate 1994/04/28  16:31
  2848. ********************************************************************** 
  2849.  
  2850. [Reference to append at 16:24 on 94/04/28 by DEV4661 at HONE82 ] 
  2851.  
  2852. To: Kim Cheung - Append created on 94/04/28 at 12:32 PST
  2853.  
  2854.    > Okay, your tip on switching to the full screen DOS   <
  2855.    > session works.                     <
  2856.  
  2857. I loked back and can't find the append you are referring to. Perhaps
  2858. someone else suggested a full screen vs. a windowed OS/2 session. If
  2859. you mean my comment about calling SysCreateObject() twice (btw, it
  2860. really should be one call to SysCreateObject() and one call to
  2861. SysSetObjectData() ), that will work with either a full screen or
  2862. windowed session.
  2863.  
  2864.    > However, once it started, let say the user do a    <
  2865.    > ctrl-esc to go back to the desktop and later on, he  <
  2866.    > forgets that he started that DOS session and click a  <
  2867.    > start button for that program again. I want to be   <
  2868.    > able to switch back to the existing session.      <
  2869.  
  2870. rather tahn using SysCreateObject() eavh time, build the object once,
  2871. assign it an OBJECTID (any valid string preceeded by "<' and followed
  2872. by '>'). Then begin the session with two successive calls to
  2873. SysSetObjectData().
  2874.  
  2875.    > p.s.: By the way, I changed the right margin for EPM  <
  2876.    > to 80 and turned wrapping on, let see if I got rid of <
  2877.    > the garbage characters. This is crazy.         <
  2878.  
  2879. I would suggest that you set the right margin for something less than
  2880. 80 as most fonts will not allow a full 80 characters to be seen on a
  2881. line. Try 76 as the right margin.
  2882.  
  2883. Dick Goran                       CIS 72200,347
  2884. "REXX Reference Summary Handbook"            1-800-REXXOS2
  2885.  
  2886.      If you see this line, FORBROWSE didn't steal it!
  2887. ********************************************************************** 
  2888.  
  2889. [Reference to append at 20:44 on 94/04/28 by GREGC at LEXVM2 ] 
  2890.  
  2891. Vueman/2:  Never did spent enough time to figure out what it does.
  2892. I remember started that once or twice and couldn't figure out what
  2893. it was for and I didn't follow up on it.  May be I should.
  2894.  
  2895. Kim Cheung (DEV4661) (818)288-7774
  2896. ********************************************************************** 
  2897.  
  2898. [Reference to append at 23:36 on 94/04/28 by DEV4672 at HONE82 ] 
  2899.  
  2900. Dick,
  2901.  
  2902.    > However, once it started, let say the user do a    <
  2903.    > ctrl-esc to go back to the desktop and later on, he  <
  2904.    > forgets that he started that DOS session and click a  <
  2905.    > start button for that program again. I want to be   <
  2906.    > able to switch back to the existing session.      <
  2907.  
  2908. >rather tahn using SysCreateObject() eavh time, build the object once,
  2909. >assign it an OBJECTID (any valid string preceeded by "<' and followed
  2910. >by '>'). Then begin the session with two successive calls to
  2911. >SysSetObjectData().
  2912.  
  2913. The SysSetObjectData() idea didn't seem to work.  It doesn't switch me to the
  2914. DOS session.
  2915.  
  2916. Kim Cheung, DEV4661, (818)288-7774
  2917. ********************************************************************** 
  2918.  
  2919. To: Kim Cheung - Append created on 94/04/30 at 12:28 PST
  2920.  
  2921.    > The SysSetObjectData() idea didn't seem to work. It  <
  2922.    > doesn't switch me to the DOS session.         <
  2923.  
  2924. Try the following (it assumes PKUNZIP is pathed):
  2925.  
  2926. /* Build & Start DOS forground session */
  2927. wpp_class     = 'WPProgram'
  2928. wpp_location   = '<WP_NOWHERE>'
  2929. wpp_object_id   = '<KIMSPROG>'
  2930. wpp_title     = 'Kim''s^DOS Session'
  2931. wpp_setup_string = ,
  2932.   'OBJECTID=' ΓòæΓòæ wpp_object_id ΓòæΓòæ ';'         ΓòæΓòæ,
  2933.   'EXENAME=pkunzip;'                  ΓòæΓòæ,
  2934.   'PROGTYPE=VDM;'                   ΓòæΓòæ,
  2935.   ''
  2936.  
  2937. call SysCreateObject wpp_class,,
  2938.            wpp_title,,
  2939.            wpp_location,,
  2940.            wpp_setup_string,,
  2941.            'REPLACE'
  2942. if RESULT = 1 then
  2943.   do
  2944.    say wpp_title 'was successfully created'
  2945.   end
  2946. else
  2947.   do
  2948.    say wpp_title 'was not created, return code = '  ΓòæΓòæ,
  2949.      RESULT
  2950.    say wpp_setup_string
  2951.    exit
  2952.   end
  2953.  
  2954. call SysSetObjectData wpp_object_id, 'OPEN=DEFAULT;'
  2955. call SysSetObjectData wpp_object_id, 'OPEN=DEFAULT;'
  2956. exit
  2957.  
  2958. Dick Goran                       CIS 72200,347
  2959. "REXX Reference Summary Handbook"            1-800-REXXOS2
  2960.  
  2961.      If you see this line, FORBROWSE didn't steal it!
  2962. ********************************************************************** 
  2963.  
  2964. Hot dog!  This works.  Dick, I was doing more or less the same thing
  2965. before but it didn't work.  Apparently the difference is I had that
  2966. open=default with the create rather than create first, than use the
  2967. open=default later.  I can now switch back and forth.
  2968.  
  2969. There is another minor problem though.  How I force close that process?
  2970. With windowed DOS session, I can simply paste some key strokes over to
  2971. it, or invoke the Close option on the system menu.  But how do I do that
  2972. with full screen DOS session?
  2973.  
  2974. Thanks for the help.
  2975.  
  2976. Kim Cheung (DEV4661) (818)288-7774
  2977. ********************************************************************** 
  2978.  
  2979. To: Kim Cheung - Append created on 94/05/06 at 18:05 PST
  2980.  
  2981.    > There is another minor problem though. How I force   <
  2982.    > close that process? With windowed DOS session, I can  <
  2983.    > simply paste some key strokes over to it, or invoke  <
  2984.    > the Close option on the system menu. But how do I do  <
  2985.    > that with full screen DOS session?           <
  2986.  
  2987. I know rhat here is some 3rd party softwarte around that will send key
  2988. strokes to another session; however, I am not aware of the names of
  2989. those packages.
  2990.  
  2991. A simple way to handle it to invoke a .BAT file to launch your DOS
  2992. program rather than the program itself. Have an EXIT command be the
  2993. last statement in the.BAT file and it will close all by itself.
  2994.  
  2995. Dick Goran                       CIS 72200,347
  2996. "REXX Reference Summary Handbook"            1-800-REXXOS2
  2997.  
  2998.      If you see this line, FORBROWSE didn't steal it!
  2999. ********************************************************************** 
  3000.  
  3001. Dick,
  3002. Sorry if I didn't make myself clear.  You see, I am writing a front
  3003. end GUI program that controls the execution of a number of DOS packages.
  3004. Let say the user started one of the package in full screen mode and do
  3005. a ctrl-esc back to the desktop and do other things.  Then he decided
  3006. to shut the GUI frontend down (and forgot to shut down the DOS program)
  3007. Right now all I can do is to pop up a message box and tell him that he
  3008. should switch back to the DOS program and terminate it first before he
  3009. can terminate the GUI front end.  That's clumsy.  It would be nice if I
  3010. can shut that program down for him.  I am doing that with all the
  3011. windowed sessions, but I haven't been able to force close a full screen
  3012. session.
  3013. Thanks.
  3014.  
  3015. Kim Cheung (DEV4661) (818)288-7774
  3016. ********************************************************************** 
  3017.  
  3018. [Reference to append at 20:11 on 94/05/06 by DEV4661 at HONE81 ] 
  3019.  
  3020. >  How I force close that process?
  3021.  
  3022. You send it a CLOSE=DEFAULT or CLOSE=RUNNING setup string through PerfSET
  3023. (this new setup string is supported by DeskMan/2 WPS Extensions in 1.5).
  3024.  
  3025. Alternatively, you can use some of the packages available around to kill
  3026. the process, by name or PID.
  3027.  
  3028. Gregory Czaja, Lexington 8-545-4977  GregC at LEXGate 1994/05/09  09:41
  3029. ********************************************************************** 
  3030.  
  3031. [Reference to append at 01:19 on 94/05/07 by DEV4672 at HONE82 ] 
  3032.  
  3033. > I know rhat here is some 3rd party softwarte around that will send key
  3034. > strokes to another session; however, I am not aware of the names of
  3035. > those packages.
  3036.  
  3037. VX-REXX from Watcom is one 3rd party package that will do this.
  3038.  
  3039. Peter Ricciardiello, UT Carrier Corporation, Syracuse, NY
  3040. ********************************************************************** 
  3041.  
  3042.  
  3043. ΓòÉΓòÉΓòÉ 32. This append created as a test for modification by owner ΓòÉΓòÉΓòÉ
  3044.  
  3045. * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * 
  3046. * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
  3047.  
  3048. Original line 1
  3049. Add line 2
  3050.  
  3051. Dick Goran, owner OS2REXX
  3052.  
  3053.  
  3054. ********************************************************************** 
  3055.  
  3056.  
  3057. ΓòÉΓòÉΓòÉ 33. (no subject) ΓòÉΓòÉΓòÉ
  3058.  
  3059. * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * 
  3060. * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
  3061.  
  3062. Kim Cheung, DEV4661, (818)288-7774
  3063. ********************************************************************** 
  3064.  
  3065.  
  3066. ΓòÉΓòÉΓòÉ 34. April, 1994 Winners - REXX Reference Summary Handbook ΓòÉΓòÉΓòÉ
  3067.  
  3068. * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * 
  3069. * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
  3070.  
  3071.        REXX Reference Summary Handbook Drawing
  3072.            Winners for April, 1994
  3073.  
  3074. The following IDs / Appends are the April winners of a
  3075. complimentary copy of the "REXX Reference Summary Handbook". Would
  3076. the owner of each ID noted below please send me a Note with your
  3077. mailing address.
  3078.  
  3079.    appended at 17:02:23 on 94/04/28 GMT (by MDBC028 at HONE81)
  3080.    appended at 03:07:06 on 94/04/28 GMT (by WZ01038 at HONE80)
  3081.   * appended at 14:01:51 on 94/04/05 GMT (by MRTOM at YKTVMV)
  3082.    appended at 14:26:04 on 94/04/05 GMT (by POOLMWV at HONE83)
  3083.  
  3084. Runners-up were:
  3085.  
  3086.    appended at 17:27:54 on 94/04/21 GMT (by HOAM013 at HONE81)
  3087.  
  3088. If the 3 winners do not claim their Handbook by the end of the
  3089. current month, the runners-up will become eligible to receive a
  3090. copy.
  3091.  
  3092. * Note: Tom Bridgman has graciouly asked me to include the next
  3093.     winning append since he already has a copy of the Handbook,
  3094.     therefore Steve Pool has moved up.
  3095.  
  3096. Full deatils of the drawing are posted at least once each month in the
  3097. OS2REXX CFORUM.
  3098.  
  3099. Dick Goran, owner of the OS2REXX CFORUM
  3100.  
  3101.      If you see this line, FORBROWSE didn't steal it!
  3102. ********************************************************************** 
  3103.  
  3104.  
  3105. ΓòÉΓòÉΓòÉ 35. REXX Reference Summary Handbook Drawing ΓòÉΓòÉΓòÉ
  3106.  
  3107. * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * 
  3108. * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
  3109.  
  3110. To: ALL
  3111.  
  3112.         REXX Reference Summary Handbook Drawing
  3113.  
  3114.   Beginning in May, 1994 and continuing each month until I announce
  3115.   its demise, I will select 3 IDs at random from all of the appends
  3116.   in the OS2REXX CFORUM for the previous month. The appender of each
  3117.   of the selected appends will receive a complimentary copy of the
  3118.   REXX Reference Summary Handbook. Everyone's posts are eligible for
  3119.   the drawing. There are no exclusions because of whom you work for
  3120.   or who you are related to. Specious appends will not be eligible
  3121.   for consideration.
  3122.  
  3123.   Winners will be posted here in the OS2REXX CFORUM sometime after
  3124.   the 1st of each month. Decision of the judges (me) is final. The
  3125.   winners will be responsible for notifying C F S Nevada, Inc. of
  3126.   their mail address. Books will be mailed first class mail, prepaid,
  3127.   to anywhere in the world.
  3128.  
  3129.   Actual selection of the winning IDs will be accomplished with a
  3130.   REXX program that has no prejudice or bias. A copy of the program
  3131.   will be sent to any TALKLink ID on request.
  3132.  
  3133. Dick Goran, owner of the OS2REXX CFORUM
  3134.  
  3135.      If you see this line, FORBROWSE didn't steal it!
  3136. ********************************************************************** 
  3137.  
  3138.  
  3139. ΓòÉΓòÉΓòÉ 36. Printing to printer object ΓòÉΓòÉΓòÉ
  3140.  
  3141. * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * 
  3142. * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
  3143.  
  3144. I have a VX-Rexx project that I'm working on which requires Rexx
  3145. controlled printing to a selected printer.  Under VX-Rexx I can
  3146. have the user select a desktop printer to be used, but I don't
  3147. know how to direct the output to the selected printer.  The
  3148. VX-Rexx function that I'm using to list the available printers
  3149. is ListPrinters which returns a compound variable containing the
  3150. list of printers.  Each entry in the stem variable returned is
  3151. in the format:  QueueName;PhysicalName;DriverName
  3152.  
  3153. My question is what do I use in the "lineout" statement to direct
  3154. the output to the correct place?
  3155. ----------------------------------------
  3156. -= Gene Baral =-                 -= Team OS/2 =-
  3157. IBAX Healthcare Systems - Longwood, FL
  3158. ********************************************************************** 
  3159.  
  3160.  
  3161. ΓòÉΓòÉΓòÉ 37. Parser ΓòÉΓòÉΓòÉ
  3162.  
  3163. * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * 
  3164. * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
  3165.  
  3166. Dick:
  3167.  
  3168. I thought that everyone might appreciate the following REXX code.
  3169. I have been converting some C utilities to REXX and I needed the
  3170. REXX code to parse the command line argument just like C does.
  3171. The following code does just that.
  3172.  
  3173. /* REXX */
  3174.  
  3175. call parsearg arg(1)
  3176.  
  3177. /* output the parsed arguments */
  3178. say 'The number of arguments was' arg.0'.'
  3179. do i = 1 to arg.0
  3180.   say arg.i
  3181.   end
  3182.  
  3183. exit
  3184.  
  3185. /*--------------------------------------------------------------------*/
  3186. /*  ParseArg:                             */
  3187. /* Parse a single argument line just like C would parse it using    */
  3188. /*   double quotes as argument delimiters.  Put the separate     */
  3189. /*   arguments into the stem array ARG.               */
  3190. /*--------------------------------------------------------------------*/
  3191.  
  3192. parsearg: procedure expose arg.
  3193.  
  3194. if arg() = 0 then do
  3195.   arg.0 = 0
  3196.   return
  3197.   end
  3198.  
  3199. part2 = arg(1)
  3200. i = 1
  3201. parse var part2 part1 '"' qarg '"' part2
  3202. do while qarg <> ''
  3203.   parse var part1 arg.i part1
  3204.   do while arg.i <> ''
  3205.    i = i + 1
  3206.    parse var part1 arg.i part1
  3207.    end
  3208.   arg.i = qarg
  3209.   i = i + 1
  3210.   parse var part2 part1 '"' qarg '"' part2
  3211.   end
  3212. parse var part1 arg.i part1
  3213. do while arg.i <> ''
  3214.   i = i + 1
  3215.   parse var part1 arg.i part1
  3216.   end
  3217. arg.0 = i - 1
  3218.  
  3219. return
  3220.  
  3221. Enjoy!
  3222.  
  3223. W. David Ashley, American Airlines 817-963-9716
  3224. ********************************************************************** 
  3225.  
  3226. >I thought that everyone might appreciate the following REXX code.
  3227.  
  3228. I don't know about everyone, but *I* sure did! <g>
  3229.  
  3230. Gary Pool  MO Dept. Social Services
  3231. * EPM *  The worst thing about censorship is ΓöéΓöéΓöéΓöéΓöéΓöéΓöéΓöéΓöéΓöé.
  3232. ********************************************************************** 
  3233.  
  3234.  
  3235. ΓòÉΓòÉΓòÉ 38. Parsing the REXX Command Line ΓòÉΓòÉΓòÉ
  3236.  
  3237. * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * 
  3238. * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
  3239.  
  3240. Dick:
  3241.  
  3242. I thought that everyone might appreciate the following REXX code.
  3243. I have been converting some C utilities to REXX and I needed the
  3244. REXX code to parse the command line argument just like C does.
  3245. The following code does just that.
  3246.  
  3247. /* REXX */
  3248.  
  3249. call parsearg arg(1)
  3250.  
  3251. /* output the parsed arguments */
  3252. say 'The number of arguments was' arg.0'.'
  3253. do i = 1 to arg.0
  3254.   say arg.i
  3255.   end
  3256.  
  3257. exit
  3258.  
  3259. /*--------------------------------------------------------------------*/
  3260. /*  ParseArg:                             */
  3261. /* Parse a single argument line just like C would parse it using    */
  3262. /*   double quotes as argument delimiters.  Put the separate     */
  3263. /*   arguments into the stem array ARG.               */
  3264. /*--------------------------------------------------------------------*/
  3265.  
  3266. parsearg: procedure expose arg.
  3267.  
  3268. if arg() = 0 then do
  3269.   arg.0 = 0
  3270.   return
  3271.   end
  3272.  
  3273. part2 = arg(1)
  3274. i = 1
  3275. parse var part2 part1 '"' qarg '"' part2
  3276. do while qarg <> ''
  3277.   parse var part1 arg.i part1
  3278.   do while arg.i <> ''
  3279.    i = i + 1
  3280.    parse var part1 arg.i part1
  3281.    end
  3282.   arg.i = qarg
  3283.   i = i + 1
  3284.   parse var part2 part1 '"' qarg '"' part2
  3285.   end
  3286. parse var part1 arg.i part1
  3287. do while arg.i <> ''
  3288.   i = i + 1
  3289.   parse var part1 arg.i part1
  3290.   end
  3291. arg.0 = i - 1
  3292.  
  3293. return
  3294.  
  3295. Enjoy!
  3296.  
  3297. W. David Ashley, American Airlines 817-963-9716
  3298. ********************************************************************** 
  3299.  
  3300.  
  3301. ΓòÉΓòÉΓòÉ 39. Defining a Printer in a folder ΓòÉΓòÉΓòÉ
  3302.  
  3303. * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * 
  3304. * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
  3305.  
  3306. Is it possible to define a printer in a folder using Rexx.  I can
  3307. define it on the desktop but cannot find a way to move it or delete
  3308. it and redefine it in the folder.  I need to keep the properties that
  3309. are defined with the printer intact.  Thanks for any help!
  3310.  
  3311. Beth Pearall
  3312. ********************************************************************** 
  3313.  
  3314.  
  3315. ΓòÉΓòÉΓòÉ 40. A dos rexx interpreter/compiler ΓòÉΓòÉΓòÉ
  3316.  
  3317. * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * 
  3318. * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
  3319.  
  3320. A short interruption.... I do not know where else to ask the
  3321. question...
  3322.  
  3323. I have a very simple question.  I need to run an OS/2 REXX script
  3324. on a strictly DOS machine (MS or PC Dos).  What is the  Rexx product name
  3325. and where can I get the package (internal IBM)?
  3326.  
  3327. If it is an internal tool please respond to my reader.
  3328. Any help would be appreciated.
  3329.  
  3330. Thanks in advance.
  3331.  
  3332.                          Leon Roberson
  3333. ********************************************************************** 
  3334.  
  3335. Since Leon was asking for an IBM internal package, I've answered
  3336. off-line.
  3337.  
  3338. Dave Rose
  3339. ********************************************************************** 
  3340.  
  3341. [Reference to append at 15:58 on 94/05/03 by LAVO at RALVMG ] 
  3342.  
  3343. To: Leon Roberson - Append created on 94/05/04 at 07:34 PST
  3344.  
  3345.    > What is the Rexx product name and where can I get the <
  3346.    > package (internal IBM)?                <
  3347.  
  3348. Personal REXX from Quercus Systems provides a complete interpreter for
  3349. REXX under DOS. It is available from most of the traditional OS/2
  3350. sources or directly from:
  3351.  
  3352.   Quercus Systems
  3353.   P.O. Box 2157
  3354.   Saratoga, CA 95070
  3355.   408-867-REXX (voice)
  3356.   408-867-7489 (FAX)
  3357.   408-867-7488 (BBS)
  3358.   CIS, PCVENA, Sec 11 (Charles Daney 75300,2450)
  3359.  
  3360. Dick Goran                       CIS 72200,347
  3361. "REXX Reference Summary Handbook"            1-800-REXXOS2
  3362.  
  3363.      If you see this line, FORBROWSE didn't steal it!
  3364. ********************************************************************** 
  3365.  
  3366.  
  3367. ΓòÉΓòÉΓòÉ 41. SysIni won't take filespec? ΓòÉΓòÉΓòÉ
  3368.  
  3369. * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * 
  3370. * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
  3371.  
  3372. I am trying to use SysIni to pull some PM scheme colors out of an old
  3373. INI file. The REXX online document says SysIni will take 'USER', 'SYSTEM'
  3374. 'BOTH' or a filespec.
  3375. However, I can't get it to work with a filespec...
  3376.  
  3377. Anybody know anything about this??
  3378.  
  3379. Thanks
  3380. Ed Childers
  3381. ********************************************************************** 
  3382.  
  3383. I use a filespec all the time.  Can you append the code fragment you're
  3384. trying to use?
  3385.  
  3386. Tom Bridgman
  3387. NetDoor Development
  3388. (BITNET:  MRTOM at YKTVMV  InterNet:  MRTOM @ WATSON.IBM.COM)
  3389. ********************************************************************** 
  3390.  
  3391. [Reference to append at 00:27 on 94/05/04 by ERC at TUCVM2 ] 
  3392.  
  3393. To: Ed Childers - Append created on 94/05/04 at 07:36 PST
  3394.  
  3395.    > However, I can't get it to work with a filespec...   <
  3396.  
  3397. Sysini() does work with a full file system name. It may be used with
  3398. any OS/2 format .INI file. There is a program in the Software Library
  3399. here, LISTINI.CMD that you can download (file name is LISTINI.ZIP) and
  3400. use as an example. It creates a readable file from any INI file.
  3401.  
  3402. Dick Goran                       CIS 72200,347
  3403. "REXX Reference Summary Handbook"            1-800-REXXOS2
  3404.  
  3405.      If you see this line, FORBROWSE didn't steal it!
  3406. ********************************************************************** 
  3407.  
  3408.  
  3409. ΓòÉΓòÉΓòÉ 42. Is there an OO-REXX beta? ΓòÉΓòÉΓòÉ
  3410.  
  3411. * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * 
  3412. * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
  3413.  
  3414. Someone on the internet claims there is some sort of
  3415. an announcement on COMPUSERVE about a beta program for
  3416. OBJECT REXX.
  3417.  
  3418. Anyone know if it is true? Any details?
  3419.  
  3420. Marvin Lichtenthal
  3421. marvinl@netcom.com
  3422. ********************************************************************** 
  3423.  
  3424. To: Marvin Lichtenthal - Append created on 94/05/04 at 07:41 PST
  3425.  
  3426.    > Anyone know if it is true? Any details?        <
  3427.  
  3428. Here's what I found after I read your append:
  3429.  
  3430.   #: 90504 S6/REXX/Other Language
  3431.     03-May-94  08:06:48
  3432.   Sb: #90314-Object REXX Beta
  3433.   Fm: The TEAMIBM Network 72370,250
  3434.   To: Byron Stephan 73443,711
  3435.  
  3436.   Byron,
  3437.  
  3438.   Object REXX (both OS/2 as well as Windows version) is currently under beta
  3439.   test. For further information, you may contact Tom Brown (IBM) at
  3440.   (607)-752-5166. His internet id is (tombrawn@vnet.ibm.com).
  3441.  
  3442.   Thanks.
  3443.  
  3444.   Amrish Desai (BTIG)
  3445.  
  3446.   From:  V$IAMRIS@internet.BCRVM1.ibm.com
  3447.  
  3448. Dick Goran                       CIS 72200,347
  3449. "REXX Reference Summary Handbook"            1-800-REXXOS2
  3450.  
  3451.      If you see this line, FORBROWSE didn't steal it!
  3452. ********************************************************************** 
  3453.  
  3454. [Reference to append at 08:58 on 94/05/04 by IL78711 at HONE82 ] 
  3455.  
  3456. >Someone on the internet claims there is some sort of
  3457. >an announcement on COMPUSERVE about a beta program for
  3458. >OBJECT REXX.
  3459. >
  3460. >Anyone know if it is true? Any details?
  3461.  
  3462. I too saw something about that.  I don't know if it has anything to do
  3463. with a file I downloaded from Pete Norloff's board called ROX.ZIP,
  3464. which was an object oriented REXX.  It kind of blew my mind, because
  3465. I have never done any OO programming.  You load up a DLL, and let's
  3466. see if I can strip something off an example that will give you a
  3467. ferinstance of how it works.
  3468.  
  3469. Well, I just looked and it's so complicated I think it would be easier
  3470. to just download it if you were interested.  I don't think it has
  3471. anything to do with IBM's version, however.
  3472.  
  3473. Gary Pool  MO Dept. Social Services
  3474. * EPM *  This is abuse.  Arguments are down the hall.
  3475. ********************************************************************** 
  3476.  
  3477. In <cforum.os2rexx.cfo#poolmwv@hone82#94/05/04#15:14:34>, poolmwv@hone82.rscs writes:
  3478. >I too saw something about that.  I don't know if it has anything to do
  3479. >with a file I downloaded from Pete Norloff's board called ROX.ZIP,
  3480. >which was an object oriented REXX.
  3481. >...
  3482. >Well, I just looked and it's so complicated I think it would be easier
  3483. >to just download it if you were interested.  I don't think it has
  3484. >anything to do with IBM's version, however.
  3485.  
  3486. Correct, ROX is NOT ObjectREXX.  Just a function package providing some
  3487. OO capabilities to 'classic' REXX.
  3488.  
  3489. Patrick Mueller  | IBM Software Solutions, Cary NC; 919-469-7242, tie 883
  3490.          | internet: pmuellr@vnet.ibm.com   vnet: pmuellr@carvm3
  3491. ********************************************************************** 
  3492.  
  3493. I want to add my impression of an Object REXX prototype that Rick McGuire
  3494. presented at the PSP Technical Interchange last week in San Francisco:
  3495.  
  3496.  1) Object REXX would make REXX more powerfull than a locomotive.
  3497.  2) Object REXX is easy.  In fact, I think the sooner that IBM delivers
  3498.   it, the quicker we would get users turned on to the object-oriented
  3499.   programming environment.
  3500.  3) I can't wait to get my hands on it to show all of our programmers
  3501.   how they should be doing their thing.  This will be a great tool
  3502.   for intructional use.
  3503.  4) Rick did an outstanding job presenting the information.  Thanks Rick.
  3504.  
  3505. Emilio A. Icaza, Louisiana State University
  3506. ********************************************************************** 
  3507.  
  3508. [Reference to append at 14:44 on 94/05/04 by DEV4672 at HONE81 ] 
  3509.  
  3510. Correction to contact for OO-REXX.  It looks like the contact for
  3511. this would be Tom Brawn rather than Tom Brown.  I have been receiving
  3512. numerous requests for this package which I have no association with.
  3513.  
  3514.             Thanks,
  3515.                Tom Brown
  3516. ********************************************************************** 
  3517.  
  3518.  
  3519. ΓòÉΓòÉΓòÉ 43. Timed OS/2 Shutdown ΓòÉΓòÉΓòÉ
  3520.  
  3521. * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * 
  3522. * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
  3523.  
  3524. We want to be able to gracefully shutdown OS/2 on machines that
  3525. are left cranking on a problem at night.  The task will finish after
  3526. the staff involved has left for the day, but sometimes we have problems
  3527. because the building control systems shut down the power during
  3528. certain hours for unoccupied areas.
  3529.  
  3530. I went thru the indispensible "REXX Reference Summary Handbook"
  3531. hoping someone might have coded a system function call to do this.
  3532. Not finding one, I scanned this forum for "Shutdown" but got no hits.
  3533. So that brings me to the "real" experts.  You guys.  I'm sure this
  3534. has been solved by someone lurking here.  If I find out how to
  3535. trigger a shutdown thru REXX I'll code the sysSleep statement myself <g>.
  3536.  
  3537. TIA.
  3538.  
  3539. Leo Tornow - Northwest Pipeline Corp.
  3540. ********************************************************************** 
  3541.  
  3542. >hoping someone might have coded a system function call to do this.
  3543.  
  3544. Leo,
  3545.  
  3546. I sent SHUTDOWN.ZIP (containing SHUTDOWN.EXE and SHUTDOWN.CMD) to your
  3547. IBMLink ID.
  3548.  
  3549. Ken Singer, Shell Oil, Houston
  3550. ********************************************************************** 
  3551.  
  3552. Thanks Ken.  You're a gentleman and a scholar.
  3553.  
  3554. Leo Tornow - Northwest Pipeline Corp.
  3555. ********************************************************************** 
  3556.  
  3557.  
  3558. ΓòÉΓòÉΓòÉ 44. REXX macro for EPM ΓòÉΓòÉΓòÉ
  3559.  
  3560. * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * 
  3561. * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
  3562.  
  3563. OK, don't beat me, I know I've asked for this before.  Why don't I
  3564. look it up and figure it out myself?  That's on my list of "fun"
  3565. things to do -- Not Urgent and Not Important.  Unfortunately, I never
  3566. have time to do the fun things.  Someone (Al?) said they were working
  3567. on such a beastie, but I never heard anything more.  Although my wish
  3568. is in the subject line, let me spell it out:
  3569.  
  3570. I would like to have an EPM macro that would Open a particular file.
  3571. (Acttually, I want it to do more than that, but I think if I have that
  3572. start, I can do the rest myself).
  3573.  
  3574. 1. How does one write a REXX CMD that uses EPM commands, like File Open?
  3575.  
  3576. 2. Once the macro is written, what are the step by step instructions to
  3577.   make it useable in EPM?
  3578.  
  3579. Are there any hard-workers out there who have this conquered?
  3580.  
  3581. Gary Pool  MO Dept. Social Services
  3582. * EPM *  This is your sysop. ΓêÜ╨┐╨¬╤â$ ╤Ås ╨á ΓòÜs╨ÿΓòÿ ╤ì╨¢ dΓòÿΓòÜg$.
  3583. ********************************************************************** 
  3584.  
  3585. You might want to ask in E-EDITOR CFORUM;  the real, live EPM developers
  3586. hang out over there.
  3587.  
  3588. Tom Bridgman
  3589. NetDoor Development
  3590. (BITNET:  MRTOM at YKTVMV  InterNet:  MRTOM @ WATSON.IBM.COM)
  3591. ********************************************************************** 
  3592.  
  3593. [Reference to append at 15:58 on 94/05/04 by POOLMWV at HONE82 ] 
  3594.  
  3595. Gary:
  3596. There are times I only look at your appends for the taglines<G>! I must
  3597. admit I have only one word about this one, though.  HUH ???<VBG>??
  3598.  
  3599. Regards,
  3600. Jim Allen   Honda of America Mfg., Inc.
  3601. Team OS/2   T.I.P.A.
  3602. ********************************************************************** 
  3603.  
  3604. [Reference to append at 15:58 on 94/05/04 by POOLMWV at HONE82 ] 
  3605.  
  3606. >OK, don't beat me, I know I've asked for this before.  Why don't I
  3607. >look it up and figure it out myself?  That's on my list of "fun"
  3608. >things to do -- Not Urgent and Not Important.  Unfortunately, I never
  3609. >have time to do the fun things.  Someone (Al?) said they were working
  3610. >on such a beastie, but I never heard anything more.  Although my wish
  3611. >is in the subject line, let me spell it out:
  3612.  
  3613. Gary, I was working on a tagline macro and got side tracked by other
  3614. business and stuff.  I'll try to get it back to the front burner, the macro
  3615. commands aren't particulary complicated it's just damned obscure. I know
  3616. excuses, excuses, I'll get back to work if I can't get it to work I'll post
  3617. the code fragments that I have and ya'll can clean it up.<BG>
  3618.  
  3619. Al Brown, Brown & Associates Consulting
  3620. Voice: (402)291-1410  Fax: (402)291-1623
  3621. ********************************************************************** 
  3622.  
  3623. [Reference to append at 15:58 on 94/05/04 by POOLMWV at HONE82 ] 
  3624.  
  3625. Example:
  3626.  1) Find out where EPMPATH points (standard: C:\OS2\APPS)
  3627.  2) in EPMPATH directory create file RxOpen.ERX with:
  3628.   /* My rexx for EPM */
  3629.   'OPEN C:\CONFIG.SYS'
  3630.  3) Bring up EPM.
  3631.  4) CTRL-I for command interface
  3632.  5) enter: RX RXOPEN
  3633.  
  3634. Quick reference entry in on-line EPM Help has some more info on commands.
  3635.  
  3636. Leshek
  3637. Pa. Hmm... quick reference doesn't work for me any more... ohh.. well...
  3638. ********************************************************************** 
  3639.  
  3640. [Reference to append at 16:33 on 94/05/04 by HOAM013 at HONE82 ] 
  3641.  
  3642. >admit I have only one word about this one, though.  HUH ???<VBG>??
  3643.  
  3644. This is your sysop. ΓêÜ╨┐╨¬╤â$ ╤Ås ╨á ΓòÜs╨ÿΓòÿ ╤ì╨¢ dΓòÿΓòÜg$.
  3645.  
  3646. Translation:
  3647.  
  3648. This is your sysop.  This is a user on drugs.
  3649.  
  3650. I admit the high ASCII characters look a little better without the
  3651. ASCII-EBCDIC conversion.
  3652.  
  3653. Gary Pool  MO Dept. Social Services
  3654. * EPM *  This score just in: Deep Space:9, Babylon:5
  3655. ********************************************************************** 
  3656.  
  3657. [Reference to append at 18:13 on 94/05/04 by WZ01038 at HONE80 ] 
  3658.  
  3659. >excuses, excuses, I'll get back to work if I can't get it to work I'll post
  3660. >the code fragments that I have and ya'll can clean it up.<BG>
  3661.  
  3662. Gee, does that mean I have to *think*? <g>
  3663.  
  3664. Gary Pool  MO Dept. Social Services
  3665. * EPM *  To err is Human.  To blame someone else is politics.
  3666. ********************************************************************** 
  3667.  
  3668. [Reference to append at 01:02 on 94/05/05 by LESHEK at LEXVMK ] 
  3669.  
  3670. > 1) Find out where EPMPATH points (standard: C:\OS2\APPS)
  3671. > 2) in EPMPATH directory create file RxOpen.ERX with:
  3672. >   /* My rexx for EPM */
  3673. >   'OPEN C:\CONFIG.SYS'
  3674. > 3) Bring up EPM.
  3675. > 4) CTRL-I for command interface
  3676. > 5) enter: RX RXOPEN
  3677. >
  3678. >Quick reference entry in on-line EPM Help has some more info on commands.
  3679.  
  3680. Well, that's certainly a starting point.  So I could do all of my Rexx
  3681. programming right there (including letting REXX do the work on the tagline
  3682. file and grabbing the tag), maybe writing out a temporary file with my
  3683. chosen tag line and then importing that temporary file.  Do I have a
  3684. grasp of what's going on or am I way off-base?
  3685.  
  3686. Gary Pool  MO Dept. Social Services
  3687. * EPM *  To err is human.  To really screw up it takes a computer!
  3688. ********************************************************************** 
  3689.  
  3690. ΓòæSimplified routine - should work with any EPM version
  3691.  
  3692. You really should pursue this in the E-EDITOR CFORUM.
  3693. ΓòæHaving said this here's a working example I've tried:
  3694.  
  3695. /* ADDTAG.ERX: Inserts 1 random line from a file into current file. */
  3696. 'EDIT' tag_file_name    /* Change this line */
  3697. 'EXTRACT /LAST'
  3698. tag = random( 1, last.1 )
  3699. tag
  3700. 'EXTRACT /getline'
  3701. 'QUIT'
  3702. call etkreplacetext getline.1
  3703.  
  3704. Instructions:
  3705.  
  3706. 1) You must be editing a file using EPM.
  3707. 2) Insert a blank line and position the cursor at the start of this line.
  3708. 3) CTRL-I to bring up command interface.
  3709. 4) RX ADDTAG
  3710.  
  3711. Maurice (EPM works for me!) Cartier: IBMMail(CAPCO9CB)
  3712. Procor Ltd, Oakville, Ontario
  3713. ********************************************************************** 
  3714.  
  3715. >ΓòæSimplified routine - should work with any EPM version
  3716. >
  3717. >You really should pursue this in the E-EDITOR CFORUM.
  3718. >ΓòæHaving said this here's a working example I've tried:
  3719.  
  3720. Thanks, Maurice!
  3721.  
  3722. Gary Pool  MO Dept. Social Services
  3723. * EPM *  Two Wrongs Don't Make A Right, But Three Lefts Do.
  3724. ********************************************************************** 
  3725.  
  3726. You're more than welcome. I enjoy your tag lines too. So keep those
  3727. post comin' :-)
  3728.  
  3729. Maurice Cartier: IBMMail(CAPCO9CB)
  3730. Procor Ltd, Oakville, Ontario
  3731. ********************************************************************** 
  3732.  
  3733. [Reference to append at 16:40 on 94/05/05 by POOLMWV at HONE81 ] 
  3734.  
  3735. >
  3736. >>excuses, excuses, I'll get back to work if I can't get it to work I'll po
  3737. >>the code fragments that I have and ya'll can clean it up.<BG>
  3738. >
  3739. >Gee, does that mean I have to *think*? <g>
  3740. >
  3741. Gary,
  3742.  
  3743. I posted to the BBS staff a package that I (finaly) finished up that is a
  3744. tagline macro for EPM.  Hopefully, they will get it posted very shortly.  I
  3745. did it with VISPRO-REXX and put a pretty interface on it.  It will allow
  3746. you to select a tagline from any number of tagline files and attach it to
  3747. an append.
  3748.  
  3749. Take a look at it and let me know what you think. Sorry it took so long for
  3750. me to get back to it.
  3751.  
  3752. Al Brown, Brown & Associates Consulting
  3753. Voice: (402)291-1410  Fax: (402)291-1623
  3754. ********************************************************************** 
  3755.  
  3756.  
  3757. ΓòÉΓòÉΓòÉ 45. SysIni to update PM_GloablWinodws31Settings ΓòÉΓòÉΓòÉ
  3758.  
  3759. * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * 
  3760. * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
  3761.  
  3762. I would like to use SysIni to update PM_GloablWindows31Settings and
  3763. have not been able to do this successfully.  Specifically, I am adding
  3764. a parameter to the global settings (KBD_CTRL_BYPASS=0) that wasn't
  3765. there previously.  Following is the code segment that would do this:
  3766.  
  3767. call RxFuncAdd 'SysLoadFuncs', 'RexxUtil', 'SysLoadFuncs'
  3768. call SysLoadFuncs
  3769.  
  3770. application= "WINOS2"
  3771. keyname= "PM_GlobalWindows31Settings"
  3772. value= "DPMI_MEMORY_LIMIT=64;PROGTYPE=PROG_31_STD;KBD_ALTHOME_BYPASS=1;KB
  3773. KBD_CTRL_BYPASS=0;VIDEO_SWITCH_NOTIFICATION=1;VIDEO_8514A_XGA_IOTRAP=0"
  3774. call SysIni 'USER', application, keyname, value
  3775.  
  3776. In my application the value field is all on one line (just fyi).  Can
  3777. you tell me is it possible to change the PM_GlobalWindows31Settings this
  3778. way?  If not can someone give me an idea as to how I might accomplish
  3779. this.  Thanks!
  3780.  
  3781. Cynthia Berry
  3782. Twentieth Century Services
  3783. 816-340-7973
  3784. ********************************************************************** 
  3785.  
  3786. To: Cynthia Berry - Append created on 94/05/04 at 21:34 PST
  3787.  
  3788.    > Can you tell me is it possible to change the      <
  3789.    > PM_GlobalWindows31Settings this way?          <
  3790.  
  3791. You almost had it right. each key name value must be terminated with a
  3792. nul ('00'x). You can adjust your call as follows:
  3793.  
  3794.   call SysIni 'USER', application, keyname, value ΓòæΓòæ '00'x
  3795.  
  3796. or you can add it to the value string.
  3797.  
  3798.    > In my application the value field is all on one line  <
  3799.    > (just fyi).                      <
  3800.  
  3801. You might find it easier to code it on many lines vs. one or two
  3802. lines. The following transformation of your value field is much more
  3803. readable and more easily changed if you chose to add, delete a line or
  3804. reorder the lines:
  3805.  
  3806.   value = ,
  3807.       "DPMI_MEMORY_LIMIT=64;"      ΓòæΓòæ,
  3808.       "PROGTYPE=PROG_31_STD;"      ΓòæΓòæ,
  3809.       "KBD_ALTHOME_BYPASS=1;"      ΓòæΓòæ,
  3810.       "KBD_CTRL_BYPASS=0;"       ΓòæΓòæ,
  3811.       "VIDEO_SWITCH_NOTIFICATION=1;"  ΓòæΓòæ,
  3812.       "VIDEO_8514A_XGA_IOTRAP=0;"    ΓòæΓòæ,
  3813.       ""
  3814.  
  3815. Dick Goran                       CIS 72200,347
  3816. "REXX Reference Summary Handbook"            1-800-REXXOS2
  3817.  
  3818.      If you see this line, FORBROWSE didn't steal it!
  3819. ********************************************************************** 
  3820.  
  3821. [Reference to append at 21:06 on 94/05/04 by STW1CYC at HONE81 ] 
  3822.  
  3823. Except for the terminating null, spotted by Dick, everything else looks
  3824. all right.
  3825.  
  3826. But you know that those values will be used for newly created objects
  3827. only (and after you reboot)?
  3828.  
  3829. Gregory Czaja, Lexington 8-545-4977  GregC at LEXGate 1994/05/05  08:13
  3830. ********************************************************************** 
  3831.  
  3832.  
  3833. ΓòÉΓòÉΓòÉ 46. Automatic "Enter" after Excuting Backup Command ΓòÉΓòÉΓòÉ
  3834.  
  3835. * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * 
  3836. * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
  3837.  
  3838.  I have written a CMD file in rexx to backup my RIPL desktops.
  3839. A problem I need to overcome is how do I automate an enter key after
  3840. the backup command? This CMD file will be a timed execute for weekly
  3841. backup.
  3842.  
  3843. Dale Radspinner
  3844. ********************************************************************** 
  3845.  
  3846. If you know that your BACKUP will take a single diskette, a
  3847.  
  3848.   Address CMD "@ECHO | BACKUP ...";
  3849.  
  3850. will do. Otherwise, prepare a file containing a few CR/LFs and do a
  3851.  
  3852.   Address CMD "@BACKUP ... <CRLF.INP";
  3853.  
  3854. Gregory Czaja, Lexington 8-545-4977  GregC at LEXGate 1994/05/06  12:14
  3855. ********************************************************************** 
  3856.  
  3857.  
  3858. ΓòÉΓòÉΓòÉ 47. DCF/2 1.1b Released! ΓòÉΓòÉΓòÉ
  3859.  
  3860. * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * 
  3861. * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
  3862.  
  3863. Proportional Software Corporation proudly
  3864. announces the release of DCF/2 Version 1.1b.  The
  3865. DCF/2, or Disk Compression Facility for OS/2, is
  3866. an on-the-fly disk compression capability for
  3867. OS/2 users to increase their existing disk space
  3868. without reformattin g their existing systems.
  3869.  
  3870. The DCF/2 supports all writeable OS/2 disk drives
  3871. including FAT, HPFS, LAN, floppies, and removable
  3872. media such as Bernoulli's and magneto-opticals.
  3873.  
  3874. The DCF/2 allow you to create dynamically
  3875. allocating compressed 'virtual disk units'.  This
  3876. means that you can create the size volume you
  3877. want, but move your files into it at your own
  3878. pace.
  3879.  
  3880. If you currently have FAT formatted disks, but
  3881. you want to exploit the more powerful OS/2 High
  3882. Performance File System (HPFS), you can put DCF/2
  3883. HPFS formatted virtual disk units out on your
  3884. existing FAT drives WITHOUT REFORMATTING!
  3885.  
  3886. To Download:
  3887.  
  3888. On the IBMLink OS2BBS:
  3889.  
  3890. The DCF21b.ZIP will be in the software library.
  3891. Append problems or queries/comments on the OS2DCF2
  3892. CFORUM.  Use the OS/2 version of PKUNZIP2.EXE to
  3893. unzip the file.
  3894.  
  3895. On CompuServe:
  3896.  
  3897. The DCF/2 Version 1.1b is available in the OS/2
  3898. Vendor Forum A (GO OS2AVEN) in library section 6.
  3899. The file name is DCF21B.ZIP (unzip it with the
  3900. OS/2 PKUNZIP2.EXE).  This version is fully
  3901. enabled, unprotected, and unlicensed.  If you are
  3902. an existing DCF/ 2 customer follow the online
  3903. instructions for automatic registration.
  3904.  
  3905. Technical support for unlicensed and unregistered
  3906. users is restricted to OS2AVEN and IBMLink OS2BBS
  3907. in the OS2DCF2 CFORUM.
  3908.  
  3909. Proportional Software
  3910. ********************************************************************** 
  3911.  
  3912.  
  3913. ΓòÉΓòÉΓòÉ 48. Can REXX delete an object which has no object identifier? ΓòÉΓòÉΓòÉ
  3914.  
  3915. * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * 
  3916. * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
  3917.  
  3918. We have created a printer object by dragging the printer template to
  3919. the desktop.  The object is now instantiated.  But according to all
  3920. the information we have read, that instance has no object ID.  We want
  3921. to run a REXX program that will destroy this object from the desktop (or
  3922. folder), but in order to do that, we need an object identifier.  Since it
  3923. doesn't have one, how can we do this?  We need some automated way to
  3924. delete objects.  Can anyone give me any suggestions?
  3925.  
  3926. Thanks, Andrea Krupa
  3927. ********************************************************************** 
  3928.  
  3929. You can look at the DeskMan/2 product (DEVTECH CFORUM here) to
  3930. delete objects without ObjectIDs..
  3931.  
  3932.  Bret Curran  -- Personal Systems Competency Center  1-800-547-1283
  3933.          IBMMAIL(USIB4CUR)  CIS: 71075,3156
  3934. ********************************************************************** 
  3935.  
  3936.  
  3937. ΓòÉΓòÉΓòÉ 49. SysCreateObject ΓòÉΓòÉΓòÉ
  3938.  
  3939. * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * 
  3940. * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
  3941.  
  3942. Where can I find documentation on the setup parm when using
  3943. SysCreateObject to create a program object?  Thanks.
  3944.  
  3945. Gerald F. Meazell
  3946. ********************************************************************** 
  3947.  
  3948. > Where can I find documentation on the setup parm when using
  3949. > SysCreateObject to create a program object?  Thanks.
  3950.  
  3951.  You can find it on the REXX Information INF File under the Information
  3952. Folder in you OS/2 desktop. (Search for REXXUtil Functions).
  3953.  
  3954.  Of course there is allways the REXX Reference Summary Handbook by Dick
  3955. Goran, he is a regular on this forum so he may tell you how to get it.
  3956.  
  3957. Carlos Mendoza (IBM Mexico)
  3958. ********************************************************************** 
  3959.  
  3960. [Reference to append at 17:17 on 94/05/09 by GFMZLL at MSNVM1 ] 
  3961.  
  3962. To: Gerald F. Meazell - Append created on 94/05/09 at 16:51 PST
  3963.  
  3964.    > Where can I find documentation on the setup parm when <
  3965.    > using SysCreateObject to create a program object?   <
  3966.  
  3967. Our Handbook, subtitled "Everything You Wanted To Know About Creating
  3968. Workplace Shell Objects With REXX, But Didn't Know Where To Look",
  3969. contains the most up-to-date source of all of the key name / value
  3970. pairs for manipulating WPS objects via REXX. Full details for the
  3971. handbook can be found here in the Software Library under REXXHB.TXT.
  3972.  
  3973. If you would like more info, let me know.
  3974.  
  3975. Dick Goran                       CIS 72200,347
  3976. "REXX Reference Summary Handbook"            1-800-REXXOS2
  3977.  
  3978.      If you see this line, FORBROWSE didn't steal it!
  3979. ********************************************************************** 
  3980.  
  3981.  
  3982. ΓòÉΓòÉΓòÉ 50. Reading OS/2 Error Messages ΓòÉΓòÉΓòÉ
  3983.  
  3984. * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * 
  3985. * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
  3986.  
  3987. If this question reveals I know little about REXX programming language
  3988. then good, because I don't.
  3989.  
  3990. I would like to be able to read an OS/2 error message in order to
  3991. run an IF statement. What I have set up looks like this:
  3992.  
  3993. "net share eecl5=e: riplbu eecl5"
  3994.  
  3995. and will sometimes return the following error code
  3996.  
  3997. 'NET2118: The netname has already been shared'
  3998. What kind of statement will read this error code?
  3999.  
  4000. Also, does anyone know of some redbook or other book which gives a lot
  4001. of extended examples using REXX commands. I am not a programmer so I
  4002. I have to be walked through each command and the context to which it
  4003. might be used.
  4004.  
  4005. Dale Radspinner
  4006. ********************************************************************** 
  4007.  
  4008. Whenever you issue host commands in REXX, the command's return code is
  4009. stored in a variable called RC.  You can then code something like:
  4010.  
  4011. 'NET blah blah blah'
  4012. Select
  4013.   When RC = 72 Then
  4014.     Do
  4015.      Say "My Message for RC=72";
  4016.     End;
  4017.   When RC = 22 Then
  4018.     Do
  4019.      Say "My Message for RC=22";
  4020.     End;
  4021.   Otherwise
  4022.     Do
  4023.      Say "My generic message for rc="RC;
  4024.     End;
  4025. End; /* Select */
  4026.  
  4027. Hope this helps...
  4028.  
  4029. Gerald F. Meazell
  4030. ********************************************************************** 
  4031.  
  4032. [Reference to append at 18:39 on 94/05/09 by IL44027 at HONE82 ] 
  4033.  
  4034. To: Dale Radspinner - Append created on 94/05/09 at 16:54 PST
  4035.  
  4036.    > I would like to be able to read an OS/2 error message <
  4037.    > in order to run an IF statement.            <
  4038.  
  4039. The easiest way to do this is to redirect STDERR to either a REXX data
  4040. queue or to a file. You can can retrieve the error info and parse it
  4041. to obtain the details. If you meed more specific information, I'd be
  4042. happy to try to help.
  4043.  
  4044.    > Also, does anyone know of some redbook or other book  <
  4045.    > which gives a lot of extended examples using REXX   <
  4046.    > commands.                       <
  4047.  
  4048. Below is a listing of REXx related books that are available. I
  4049. personally recommend "The REXX Language" bny Mike Cowlishaw and
  4050. "Programming In REXX" by Charles Daney. You might also want to
  4051. consider our Handbook as a keyboard-side companion.
  4052.  
  4053.  The REXX Language -- M. F. Cowlishaw
  4054.    In English:  ISBN 0-13-780735-X  Prentice-Hall, 1985
  4055.           ISBN 0-13-780651-5  (Second edition), 1990
  4056.           (May be ordered from Quercus Systems - see below)
  4057.    In German:   ISBN 3-446-15195-8  Carl Hanser Verlag, 1988
  4058.           ISBN 0-13-780784-8  P-H International, 1988
  4059.    In Japanese:  ISBN 4-7649-0136-6  Kindai-kagaku-sha, 1988
  4060.  
  4061.  Programming in REXX -- Charles Daney
  4062.    ISBN 0-07-015305-1, 300pp, McGraw Hill, 1992 (45.00 USD)
  4063.    May be ordered directly from:
  4064.      Quercus Systems
  4065.      P.O. Box 2157
  4066.      Saratoga, CA 95070
  4067.      408-867-REXX (voice)
  4068.      408-867-7489 (FAX)
  4069.      408-867-7488 (BBS)
  4070.      CIS, PCVENA, Sec 11 (Charles Daney 75300,2450)
  4071.  
  4072.  OS/2 REXX: From Bark To Byte - Jerry A. Stegenga II, advisor
  4073.    ISBN ?        316pp, IBM Doc # GG24-4199-00
  4074.  
  4075.  OS/2 2.1 REXX HANDBOOK BY HALLETTE GERMAN
  4076.    ISBN 0-442-01734-0  459pp, Van Nostrand - Rhenhold
  4077.  
  4078.  Modern Programming Using REXX -- Robert P. O'Hara and David R. Gomberg
  4079.    In English:  ISBN 0-13-597311-2  Prentice-Hall, 1985
  4080.           ISBN 0-13-579329-5  (Second edition), 1988
  4081.  
  4082.  Practical Usage of REXX -- Anthony S. Rudd
  4083.    ISBN 0-13-682790-X, Ellis Horwood (Simon & Schuster), 1990
  4084.  
  4085.  The REXX Handbook -- Edited by Gabe Goldberg and Phil Smith III
  4086.    ISBN 0-07-023682-8, 672pp, McGraw Hill, 1991
  4087.  
  4088.  REXX--Advanced Techniques for Programmers -- Peter C. Kiesel
  4089.    ISBN 0-07-034600-3, 256pp, McGraw Hill, 1992
  4090.  
  4091.  Portable/REXX for MS/DOS (Guide, Reference manual, Examples Reference,
  4092.    Reference Summary, and Learning to Program with Portable/REXX)
  4093.    Keith Watts, Kilowatt Software, 1991
  4094.  
  4095.            = = = = = = = = = =
  4096.  
  4097.  REXX Reference Summary Handbook - Dick Goran (C F S Nevada, Inc.)
  4098.    "Keyboard-side" reference for SAA REXX under OS/2. Includes
  4099.     REXXUTIL, PMREXX, RxWindow & REXXLIB external functions.
  4100.     Subtitled "Everything You Wanted To Know About Creating Workplace
  4101.     Shell Objects With REXX, But Didn't Know Where To Look".
  4102.  
  4103.     ISBN 0-9639854-1-8  120pp, C F S Nevada, Inc. (2nd edition)
  4104.     (IBM Pub. Order Number S246-0078-00 - PSP # IVL 1350 )
  4105.  
  4106.  Mastercard, VISA & Amex orders may be placed at 1-800-REXXOS2
  4107.  (1-800-739-9672). Price is 19.95 USD + S&H.
  4108.  
  4109.  Orders accompanied by a check payable to C F S Nevada, Inc. in U.S.
  4110.  dollars and drawn on a U.S. bank and can be mailed to:
  4111.  
  4112.     C F S Nevada, Inc.
  4113.     953 E. Sahara Avenue, Suite 9B
  4114.     Las Vegas, Nevada 89104-3012
  4115.  
  4116.  Inquiries may be directed to C F S Nevada, Inc. at:
  4117.  
  4118.     702-732-9616         voice
  4119.     702-732-3847         FAX
  4120.     72200,347          CompuServe
  4121.     72200.347@compuserve.com   Internet
  4122.     HONE81(DEV4672)       IBMLink / TALKLink
  4123.     1:209/705          FIDO
  4124.  
  4125. Dick Goran                       CIS 72200,347
  4126. "REXX Reference Summary Handbook"            1-800-REXXOS2
  4127.  
  4128.      If you see this line, FORBROWSE didn't steal it!
  4129.  
  4130. ********************************************************************** 
  4131.  
  4132.  
  4133. ΓòÉΓòÉΓòÉ 51. VX-Rexx 2.0A patch available ΓòÉΓòÉΓòÉ
  4134.  
  4135. * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * 
  4136. * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
  4137.  
  4138. Although I'm not affiliated with Watcom <g> I'm letting everyone
  4139. know that the VX-Rexx 2.0A patch (upgrade from VX-Rexx 2.00) is
  4140. now available on both Compuserve and the Watcom BBS.  The file
  4141. names are slightly different on each system due to naming stand-
  4142. ards on the hosts, but here they are:
  4143.  
  4144. CIS - (GO WATCOM, LIB 16)  VX20A.ZIP  1054631 bytes
  4145. Watcom BBS         VXRX20A.ZIP 1054631 bytes
  4146.  
  4147. also available is the application instruction file (1076 bytes)
  4148. as either VX20A.TXT (CIS) or VXRX20A.TXT (Watcom BBS)
  4149.  
  4150. ----------------------------------------
  4151. -= Gene Baral =-                 -= Team OS/2 =-
  4152. IBAX Healthcare Systems - Longwood, FL
  4153.