TIP: Click on subject to list as thread! ANSI
echo: os2prog
to: Keith Bennett
from: Leif Braeuer
date: 1994-12-15 01:39:48
subject: DLL Programming Questions? also TCP/IP

Hallo Keith!

Replying to a message of Keith Bennett to All:

 KB> I have some questions about DLL's and would greatly appreciate any
 KB> help anyone could offer...

 KB> -------
 KB> Q #1) What is the most thorough source of information regarding
 KB> programming considerations of DLL's?  (I have access to
 KB> Compuserve,Internet (ftp), and am willing to buy books.) -------
I would recommend CS (OS2DF2), because the response is much quicker. But to
gain most "throughput" you should post urgent questions in both.


 KB> I tried to test this program on a machine that did not have TCP/IP
 KB> installed and (of course) OS/2 failed to load the program, informing
 KB> me that it could not find the DLL's:

 KB> SYS1804: The system cannot find the file TCP32DLL.
You should try to use the TCP APIs with C-Function Pointers. These pointer
can be set with DosLoadModule() to load the DLL and then DosGetProcAddr.
The prototype can be used to define the function pointer variable.

I appended source for a ping:



Leif [Team OS/2]
Certified LAN Administrator

/* Load TCP/IP DLL and register entry addresses */
USHORT LoadTCPServices( void )
{
    int     rc = 0;
    int     rc1 = 0;
    CHAR    LoadError[100];
    HMODULE mh;
    HMODULE lh;

    if( ping == NULL )
    {
        rc = DosQueryModuleHandle( "FTPAPI", &mh );
        if( rc == 0 )
        {
            rc1 = DosQueryProcAddr( mh, 0, "PING", (PFN *) &ping );
        }
        if( rc || rc1 )
        {
            rc = DosLoadModule( LoadError, sizeof(LoadError),
"FTPAPI", &mh );
            rc1 = 1;
        }
        if( rc == 0 )
        {
            if( rc1 )
            {
                rc = DosQueryProcAddr( mh, 0, "PING", (PFN *)
&ping ););
            }
        }
    }
    return( rc );
}

--- FleetStreet 0.97wb

* Origin: (2:240/5200.13)
SEEN-BY: 12/2442 54/54 620/243 624/50 632/348 640/820 690/660 711/409 410 413
SEEN-BY: 711/430 807 808 809 934 942 949 712/353 623 713/888 800/1
@PATH: 240/5200 5002 5500 396/1 3615/50 229/2 12/2442 711/409 54/54 711/808
@PATH: 711/809 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™.