Compartilhar via


Macro EngFindImageProcAddress (winddi.h)

A função EngFindImageProcAddress retorna o endereço de uma função dentro de um módulo executável.

Sintaxe

void EngFindImageProcAddress(
        h,
  [in]  procname
);

Parâmetros

h

Manipule para a imagem na qual a função pode ser encontrada. Esse identificador foi obtido chamando EngLoadImage. Esse parâmetro pode ser NULL no Windows NT 4.0 SP3 e versões posteriores, que inclui o Windows 2000 e versões posteriores do sistema operacional.

[in] procname

Ponteiro para a cadeia de caracteres que especifica o nome da função a ser localizada.

Retornar valor

Nenhum

Comentários

Um driver deve ter carregado anteriormente a imagem no modo kernel por meio de uma chamada para EngLoadImage.

A função identificada por lpProcName deve ser exportada pelo módulo carregado. Isso é feito usando a chave EXPORTS no do módulo . Arquivo DEF .

Um driver não pode chamar EngFindImageProcAddress com hModule definido como NULL em qualquer versão do Windows NT 4.0 antes do SP3. Consequentemente, o driver deve fazer a verificação de versão para garantir que o sistema esteja executando essa versão ou o Windows 2000 ou posterior. Especificamente, se o valor iEngineVersion passado para a função DrvEnableDriver do driver for maior ou igual a DDI_DRIVER_VERSION_SP3, o driver poderá chamar EngFindImageProcAddress com um valor NULL para hModule.

Para obter o endereço de uma rotina de serviço GDI que é nova no Windows 2000 e versões posteriores do sistema operacional, o driver pode chamar EngFindImageProcAddress com o nome da cadeia de caracteres da função e hModule definido como NULL. O parâmetro lpProcName pode ser a cadeia de caracteres de texto equivalente a qualquer uma das seguintes funções quando hModule é NULL:

BRUSHOBJ_hGetColorTransform EngAlphaBlend
EngClearEvent EngControlSprites
EngCreateEvent EngDeleteEvent
EngDeleteFile EngDeleteSafeSemaphore
EngDeleteWnd EngDitherColor
EngGetPrinterDriver EngGradientFill
EngHangNotification EngInitializeSafeSemaphore
EngLockDirectDrawSurface EngLpkInstalled
EngMapEvent EngMapFile
EngMapFontFileFD EngModifySurface
EngMovePointer EngPlgBlt
EngQueryDeviceAttribute EngQueryPalette
EngQuerySystemAttribute EngReadStateEvent
EngRestoreFloatingPointState EngSaveFloatingPointState
EngSetEvent EngSetPointerShape
EngSetPointerTag EngStretchBltROP
EngTransparentBlt EngUnlockDirectDrawSurface
EngUnmapEvent EngUnmapFile
EngUnmapFontFileFD EngWaitForSingleObject
FONTOBJ_pfdg FONTOBJ_pjOpenTypeTablePointer
FONTOBJ_pQueryGlyphAttrs FONTOBJ_pwszFontFilePaths
HeapVidMemAllocAligned HT_Get8BPPMaskPalette
STROBJ_bEnumPositionsOnly STROBJ_bGetAdvanceWidths
STROBJ_fxBreakExtra STROBJ_fxCharacterExtra
VidMemFree XLATEOBJ_hGetColorTransform

Requisitos

Requisito Valor
Cliente mínimo com suporte Disponível no Windows 2000 e versões posteriores dos sistemas operacionais Windows.
Plataforma de Destino Universal
Cabeçalho winddi.h (inclua Winddi.h)
Biblioteca Win32k.lib
DLL Win32k.sys

Confira também

DrvEnableDriver

EngLoadImage