Microsoft KB Archive/136681

From BetaArchive Wiki

DOC: LibraryProcedure DLL Prototype Incorrect

ID: Q136681



The information in this article applies to:


  • Microsoft Win32 Device Driver Kit (DDK) for Windows NT, version 3.51





SUMMARY

Setup provides LoadLibrary, FreeLibrary, and LibraryProcedure commands to provide a mechanism to add custom procedures to setup scripts.

The LibraryProcedure command provides a way to call an exported function in the specified DLL. This procedure is described in the Windows NT DDK documentation. Drill down to it by following this outline:


Programmers Guide   (2.3.5.1)
    Setup (part 1)
       Chapter 2 - Driver Installation
          GUI INF Script Language
             Using DLLs and External Programs
                DLLs in Install and Shell Sections 


The documentation states the DLL function called by LibraryProcedure must have the following prototype:


BOOL FunctionName(cArgs, lpszArgs[], *lpszTextOut)
            DWORD cArgs;
            LPSTR lpszArgs[];
            LPSTR *lpszTextOut); 


The correct prototype for this function is:


BOOL PASCAL FunctionName(cArgs, lpszArgs[], *lpszTextOut)
            DWORD cArgs;
            LPSTR lpszArgs[];
            LPSTR *lpszTextOut); 


This documentation error has been corrected in the Windows NT DDK version 4.0 documentation.

Additional query words: 3.51 4.00 SETUP LibraryProcedure Miniports

Keywords          : kbnetwork kbprg kbdocfix NDIS 
Version           : 3.51
Platform          : NT WINDOWS 
Issue type        : 

Last Reviewed: March 4, 1999