SCOUG Logo


Next Meeting: Sat, TBD
Meeting Directions


Be a Member
Join SCOUG

Navigation:


Help with Searching

20 Most Recent Documents
Search Archives
Index by date, title, author, category.


Features:

Mr. Know-It-All
Ink
Download!










SCOUG:

Home

Email Lists

SIGs (Internet, General Interest, Programming, Network, more..)

Online Chats

Business

Past Presentations

Credits

Submissions

Contact SCOUG

Copyright SCOUG



warp expowest
Pictures from Sept. 1999

The views expressed in articles on this site are those of their authors.

warptech
SCOUG was there!


Copyright 1998-2024, Southern California OS/2 User Group. ALL RIGHTS RESERVED.

SCOUG, Warp Expo West, and Warpfest are trademarks of the Southern California OS/2 User Group. OS/2, Workplace Shell, and IBM are registered trademarks of International Business Machines Corporation. All other trademarks remain the property of their respective owners.

The Southern California OS/2 User Group
USA

SCOUG-Programming Mailing List Archives

Return to [ 27 | April | 1999 ]

<< Previous Message << >> Next Message >>


Date: Tue, 27 Apr 1999 01:34:38 PST8PDT
From: Dallas Legan <dallasii@kincyb.com >
Reply-To: scoug-programming@scoug.com
To: scoug-programming@scoug.com
Subject: SCOUG-Programming: Perl progress

This is a preliminary report of some success/progress on
my PERL question.

1) I xcopied all of my l:/perl directory over to an HPFS
/perl directory (from ext2 FS). This went quite smooth.

2) exported the new /perl/lib to PERL5LIB
(in pdksh.exe :
export PERL5LIB='X:/perl/lib'
)

3) my copy of the Gregory Smith script ran a little further,
so after a a few modifications the following script ran
to completion:

#!c:/os2/apps/perl5
print "spot 1\n" ;
require DynaLoader;
print "spot 2\n" ;
require OS2::REXX;
print "spot 3\n" ;
$module = DynaLoader::dl_load_file("c:/OS2/DLL/REXXUTIL.DLL") or die
"load";
print "spot 4\n" ;
# $address = DynaLoader::dl_find_symbol($module, "RXPROCID") or die
# $address = DynaLoader::dl_find_symbol($module, "SYSCLS") or die
$address = DynaLoader::dl_find_symbol($module, "SYSDRIVEMAP") or die
"find";

# just chose SYSDRIVEMAP as a REXXUTIL.DLL routine that would
# return something, pretty arbitrary.

print "address is $address\n" ;
print "spot 5\n" ;
# $result = OS2::REXX::_call("RxProcId", $address) or die "REXX";
$result = OS2::REXX::_call("SysDriveMap", $address) or die "REXX";

# This apparently runs SysDriveMap

# This stuff below, while not really appropriate for SysDriveMap,
# runs, and shows enough that SysDriveMap ran, returning output
# somewhat like I would expect.

print "spot 6\n" ;
($pid, $ppid, $ssid) = split(/\s+/, $result);
print "spot 7\n" ;
print "pid=$pid, ppid=$ppid, ssid=$ssid\n";
print "spot 8\n" ;

The output was:

spot 1
spot 2
Hello Q:/perl/lib/auto/OS2/REXX/REXX_.dll
spot 3
spot 4
address is 527002353
spot 5
spot 6
spot 7
pid=C:, ppid=D:, ssid=E:
spot 8

('Hello' message added to one of the routines on suggestion
of Steve Levine.)

Maybe my understanding is crude, but it looks like
the significance of DynaLoader is that the .dll name and
routine inside it could be passed as variables to the PERL
script, vectoring the execution as would probably be usefull
in OOP.

Regards,
Dallas E. Legan II
(562) 862 - 4854 ext. '*'

L
E
G
A
N
@
A
C
M
.
O
R
G

=====================================================

To unsubscribe from this list, send an email message
to "steward@scoug.com". In the body of the message,
put the command "unsubscribe scoug-programming".

For problems, contact the list owner at
"rollin@scoug.com".

=====================================================


<< Previous Message << >> Next Message >>

Return to [ 27 | April | 1999 ]



The Southern California OS/2 User Group
P.O. Box 26904
Santa Ana, CA 92799-6904, USA

Copyright 2001 the Southern California OS/2 User Group. ALL RIGHTS RESERVED.

SCOUG, Warp Expo West, and Warpfest are trademarks of the Southern California OS/2 User Group. OS/2, Workplace Shell, and IBM are registered trademarks of International Business Machines Corporation. All other trademarks remain the property of their respective owners.