EngFindImageProcAddress マクロ (winddi.h)

EngFindImageProcAddress 関数は、実行可能モジュール内の関数のアドレスを返します。

構文

void EngFindImageProcAddress(
        h,
  [in]  procname
);

パラメーター

h

関数が見つかるイメージを処理します。 このハンドルは 、EngLoadImage を呼び出すことによって取得されました。 このパラメーターは、Windows 2000 以降のオペレーティング システムバージョンを含む、Windows NT 4.0 SP3 以降のバージョンでは NULL にすることができます。

[in] procname

検索する関数の名前を指定する文字列へのポインター。

戻り値

なし

解説

ドライバーは、 以前に EngLoadImage の呼び出しを通じて、イメージをカーネル モードに読み込む必要があります。

lpProcName で識別される関数は、読み込まれたモジュールによってエクスポートする必要があります。 これを行うには、モジュールの で EXPORTS キーを使用します 。DEF ファイル。

ドライバーは、SP3 より前のバージョンの Windows NT 4.0 で hModuleNULL に設定された EngFindImageProcAddress を呼び出すことはできません。 そのため、ドライバーは、システムがそのバージョンまたは Windows 2000 以降を実行していることを確認するバージョン チェックを行う必要があります。 具体的には、ドライバーの DrvEnableDriver 関数に渡される iEngineVersion 値がDDI_DRIVER_VERSION_SP3以上の場合、ドライバーは hModuleNULL 値を使用して EngFindImageProcAddress を呼び出すことができます。

Windows 2000 以降のオペレーティング システムバージョンの新しい GDI サービス ルーチンのアドレスを取得するために、ドライバーは関数の文字列名と hModuleNULL に設定して EngFindImageProcAddress を呼び出すことができます。 lpProcName パラメーターは、hModuleNULL の場合、次のいずれかの関数に相当するテキスト文字列にすることができます。

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

要件

要件
サポートされている最小のクライアント Windows 2000 以降のバージョンの Windows オペレーティング システムで使用できます。
対象プラットフォーム ユニバーサル
Header winddi.h (Winddi.h を含む)
Library Win32k.lib
[DLL] Win32k.sys

こちらもご覧ください

DrvEnableDriver

EngLoadImage