_PELDR_AddExportTable
include vxdldr.inc
LRESULT CDECL PELDR_AddExportTable(PHPEEXPORTTABLE phExportTable,
PSTR pszModuleName, ULONG cExportedFunctions, ULONG cExportedNames,
ULONG ulOrdinalBase, PVOID *pExportNameList,
PUSHORT pExportOrdinals, PVOID *pExportAddrs, PHLIST phList);
Adds an export table to the export table list. Uses C calling conventions.
- Returns PELDR_ERR_NOERROR if successful, otherwise returns PELDR_ERR_MEM_NOMEMORY which means there is insufficient memory to complete the request.
- phExportTable
- Address of an HPEEXPORTTABLE that receives the handle to the export table on successful return.
- pszModuleName
- Address of a null-terminated string containing the module name. For example: "VXDLDR.VXD".
- cExportedFunctions
- Number of exported functions.
- cExportedNames
- Number of exported names.
- ulOrdinalBase
- Base value for ordinal table.
- pExportNameList
- Address of an array of pointers to null-terminated strings. This list contains the exported names of the module.
- pExportOrdinals
- Address of an array of ordinals. This array must have a one to one correspondence with the exported name list.
- pExportAddrs
- Address of an array of exported addresses. This array is used during import resolution. The ordinal is an index into this array.
- phList
- Address of a list handle of export tables. This parameter is specified when a client restricts the export table list. If NULL, the global export table list is used. If the handle pointed to by phList is NULL, a new local export table list is created.
The pointers and data referenced by pszModuleName, pExportNameList, pExportOrdinals, pExportAddrs, and phList must remain valid until the export table is removed using _PELDR_RemoveExportTable.