Microsoft KB Archive/69805

From BetaArchive Wiki
< Microsoft KB Archive
Revision as of 18:58, 18 July 2020 by 3155ffGd (talk | contribs) (importing KB archive)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)

PRWIN9103026: One Cause of FatalExit 0x0403 ID Number: Q69805

3.00 WINDOWS buglist3.00 fixlist3.10

Summary:

PROBLEM ID: WIN9103026

SYMPTOMS When running an application under the debugging version of Windows version 3.0, Windows reports fatal exit 0x0403 “invalid ordinal reference.”

CAUSE An exported function in a Windows dynamic-link library (DLL) was declared with the RESIDENTNAME attribute in the DEF file associated with the DLL.

RESOLUTION Microsoft has confirmed this to be a problem in Windows version 3.0. Either of the following will resolve this problem:

- Do not associate the RESIDENTNAME attribute with any exported
  function other than the Windows exit procedure (WEP) of the DLL.
  The WEP MUST be declared with the RESIDENTNAME attribute.

  -or-

- The application can declare links to the functions of the DLL by
  using the IMPORTS section of its module definition file. When
  this is done, it is not necessary to use the IMPLIB utility.

  For example, a DLL's module definition file, DLL.DEF, contains
  the following text:

       EXPORTS
           zippo   @2      RESIDENTNAME
           harpo   @3      RESIDENTNAME

  An application can avoid this problem by using the following
  text in its module definition file, APP.DEF:

       IMPORTS
           zippo   = mydll.2
           harpo   = mydll.3

This problem was corrected in Windows version 3.1.

Additional reference words: 3.00 SR# G910108-2