Jump to content

DosGetModName

From EDM2
Revision as of 14:37, 29 August 2016 by Martini (talk | contribs) (Created page with "image:legacy.png This function has been renamed to "DosQueryModuleName". [https://books.google.com.ec/books?id=u7WbsmbttwYC&pg=PT372&lpg...")
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)

This function has been renamed to "DosQueryModuleName". [1]

Description

This call returns the fully qualified drive, path, file name, and extension associated with a referenced module handle.

Syntax

 DosGetModName

    (ModuleHandle, BufferLength, Buffer) 

Parameters

ModuleHandle (HMODULE) - input
Handle of the dynamic link module being referenced.
BufferLength (USHORT) - input
Maximum length of the buffer, in bytes, where the name is stored.
Buffer (PCHAR) - output
Address of the buffer where the fully qualified drive, path, filename, and extension of the dynamic link module are stored.

Return Code

rc (USHORT) - return

Return code descriptions are:

  • 0 NO_ERROR
  • 6 ERROR_INVALID_HANDLE
  • 24 ERROR_BAD_LENGTH
  • 95 ERROR_INTERRUPT

Remarks

The handle returned by either a DosGetModHandle or a DosLoadModule request can be used with this call. An error is returned if the buffer is not large enough for the module name.

Example Code

C Binding

#define INCL_DOSMODULEMGR

USHORT  rc = DosGetModName(ModuleHandle, BufferLength, Buffer);

HMODULE          ModuleHandle;  /* Module handle */
USHORT           BufferLength;  /* Buffer length */
PCHAR            Buffer;        /* Buffer (returned) */

USHORT           rc;            /* return code */

MASM Binding

EXTRN  DosGetModName:FAR
INCL_DOSMODULEMGR   EQU 1

PUSH   WORD    ModuleHandle  ;Module handle
PUSH   WORD    BufferLength  ;Buffer length
PUSH@  OTHER   Buffer        ;Buffer (returned)
CALL   DosGetModName

Returns WORD

Related Functions