Makro EngFindImageProcAddress (winddi.h)
Fungsi EngFindImageProcAddress mengembalikan alamat fungsi dalam modul yang dapat dieksekusi.
Sintaks
void EngFindImageProcAddress(
h,
[in] procname
);
Parameter
h
Tangani ke gambar tempat fungsi dapat ditemukan. Handel ini diperoleh dengan memanggil EngLoadImage. Parameter ini dapat berupa NULL pada Windows NT 4.0 SP3 dan versi yang lebih baru, yang mencakup Windows 2000 dan versi sistem operasi yang lebih baru.
[in] procname
Penunjuk ke string yang menentukan nama fungsi yang akan ditemukan.
Mengembalikan nilai
Tidak ada
Keterangan
Driver sebelumnya harus memuat gambar ke mode kernel melalui panggilan ke EngLoadImage.
Fungsi yang diidentifikasi oleh lpProcName harus diekspor oleh modul yang dimuat. Ini dicapai dengan menggunakan kunci EXPORTS dalam modul . File DEF .
Driver tidak dapat memanggil EngFindImageProcAddress dengan hModule diatur ke NULL pada versi Windows NT 4.0 apa pun sebelum SP3. Akibatnya, driver harus melakukan pemeriksaan versi untuk memastikan bahwa sistem menjalankan versi tersebut atau Windows 2000 atau yang lebih baru. Secara khusus, jika nilai iEngineVersion yang diteruskan ke fungsi DrvEnableDriver driver lebih besar dari atau sama dengan DDI_DRIVER_VERSION_SP3, driver dapat memanggil EngFindImageProcAddress dengan nilai NULL untuk hModule.
Untuk mendapatkan alamat rutinitas layanan GDI yang baru untuk Windows 2000 dan versi sistem operasi yang lebih baru, driver dapat memanggil EngFindImageProcAddress dengan nama string fungsi dan hModule diatur ke NULL. Parameter lpProcName dapat berupa string teks yang setara dengan salah satu fungsi berikut saat hModule adalah 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 |
Persyaratan
Persyaratan | Nilai |
---|---|
Klien minimum yang didukung | Tersedia di Windows 2000 dan versi yang lebih baru dari sistem operasi Windows. |
Target Platform | Universal |
Header | winddi.h (termasuk Winddi.h) |
Pustaka | Win32k.lib |
DLL | Win32k.sys |