TIP: Click on subject to list as thread! ANSI
echo: os2prog
to: All
from: Darin McBride
date: 1997-01-06 21:46:12
subject: writing REXX DLL`s

I have a couple of questions about REXX DLL's.

I have a DLL that _almost_ works.  As long as you only have _one_ session
running with it at a time.

The problem _seems_ to be something about the global variables I have, or
at least that's all I can figure out.  The only reason I doubt this is that
a DLL loaded by seperate processes should have its own global data space...
shouldn't it?

If so, then nothing should conflict between the two processes (instances of
the command interpreter, whether I use 4OS/2 2.52A or the Warp CMD.EXE).

If not, would I get a Sys3175 error when using a pointer that was created
in the first process ... in a second one?  Or how about a semaphore created
in the first process?

(I want to use a semaphore around global access, obviously.)

The DLL, as I said, seems to work in its own process, with no one else
running it.  As soon as I try to use a function in the second process which
uses the globals (i.e., the load/drop functions work fine in the second
process), the second process quits - the first one continues to work fine.

This is just plain annoying now.  

Any help would be very much appreciated.  (Code _can_ be posted, but please
specify what you want posted - there's over 36k of source here...)


--- Maximus/2 3.01
* Origin: Tanktalus' Tower BBS (PVT) (1:342/708)
SEEN-BY: 50/99 54/99 270/101 620/243 625/0 160 711/409 410 413 430 808 809
SEEN-BY: 711/934 955 712/311 407 505 506 517 623 624 704 841 713/317 800/1
@PATH: 342/5015 61 3615/50 396/1 270/101 712/624 711/808 934

SOURCE: echomail via fidonet.ozzmosis.com

Email questions or comments to sysop@ipingthereforeiam.com
All parts of this website painstakingly hand-crafted in the U.S.A.!
IPTIA BBS/MUD/Terminal/Game Server List, © 2025 IPTIA Consulting™.