| TIP: Click on subject to list as thread! | ANSI |
| echo: | |
|---|---|
| to: | |
| from: | |
| date: | |
| subject: | Dll |
FT>
> Is a DLL originally compiled for windows usable with an os/2 EXE ?
FT>
No.
Although Windows DLLs use the "New Executable" format, the same as
16-bit OS/2 DLLs, they cannot be used by 16-bit OS/2 applications, both
because the program loader prevents this, and because there are
significant architectural differences between DOS+Windows and 16-bit
OS/2.
DLLs in DOS+Windows have one data segment, shared across all "tasks"
using that DLL. Whereas in 16-bit OS/2 DLLs usually have a separate
copy of the data segment for each process using the DLL.
DLLs in DOS+Windows are initialised only once, when the DLL is first
loaded. Whereas in 16-bit OS/2 DLLs are usually initialised each
time that a new process starts using the DLL.
DOS+Windows program have to issue INT 21H instructions in order to call
low-level system services (such as opening a file). Whereas in 16-bit
OS/2 executing an INT 21H instruction will cause OS/2 to issue an
exception, which will usually terminate the process there and then.
16:16 huge pointer arithmetic works differently in DOS+Windows to how it
works in 16-bit OS/2. Many C++ run-time support libraries will be
completely stymied.
Solution #1 : Obtain the world-famous c't patch kit for Borland Pascal
7.0, and compile your DLL as a 16-bit OS/2 DLL.
Solution #2 : Buy a native OS/2 Pascal compiler, such as Speed Pascal
or Virtual Pascal, and use it to recompile the code as a
proper 32-bit OS/2 DLL.
> JdeBP <
___
X MegaMail 2.10 #0:
--- Maximus/2 3.01
* Origin: DoNoR/2,Woking UK (44-1483-725167) (2:440/4)SEEN-BY: 50/99 270/101 620/243 711/401 409 410 413 430 808 809 934 955 SEEN-BY: 712/407 515 517 628 713/888 800/1 @PATH: 440/4 141/209 270/101 712/515 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™.