VirtualBox

Changeset 53819 in vbox


Ignore:
Timestamp:
Jan 15, 2015 1:50:29 PM (10 years ago)
Author:
vboxsync
Message:

iprt/nt/nt.h: Added a bunch of Ldr APIs.

Location:
trunk
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • trunk/include/iprt/nt/nt.h

    r53719 r53819  
    22852285typedef NTSTATUS (NTAPI *PFNLDRUNREGISTERDLLNOTIFICATION)(PVOID);
    22862286
     2287NTSYSAPI NTSTATUS NTAPI LdrLoadDll(IN PWSTR pwszSearchPathOrFlags OPTIONAL, IN PULONG pfFlags OPTIONAL,
     2288                                   IN PCUNICODE_STRING pName, OUT PHANDLE phMod);
     2289typedef NTSTATUS (NTAPI *PFNLDRLOADDLL)(IN PWSTR pwszSearchPathOrFlags OPTIONAL, IN PULONG pfFlags OPTIONAL,
     2290                                        IN PCUNICODE_STRING pName, OUT PHANDLE phMod);
     2291NTSYSAPI NTSTATUS NTAPI LdrUnloadDll(IN HANDLE hMod);
     2292typedef NTSTATUS (NTAPI *PFNLDRUNLOADDLL)(IN HANDLE hMod);
     2293NTSYSAPI NTSTATUS NTAPI LdrGetDllHandle(IN PCWSTR pwszDllPath OPTIONAL, IN PULONG pfFlags OPTIONAL,
     2294                                        IN PCUNICODE_STRING pName, OUT PHANDLE phDll);
     2295typedef NTSTATUS (NTAPI *PFNLDRGETDLLHANDLE)(IN PCWSTR pwszDllPath OPTIONAL, IN PULONG pfFlags OPTIONAL,
     2296                                             IN PCUNICODE_STRING pName, OUT PHANDLE phDll);
     2297#define LDRGETDLLHANDLEEX_F_UNCHANGED_REFCOUNT  RT_BIT_32(0)
     2298#define LDRGETDLLHANDLEEX_F_PIN                 RT_BIT_32(1)
     2299/** @since Windows XP. */
     2300NTSYSAPI NTSTATUS NTAPI LdrGetDllHandleEx(IN ULONG fFlags, IN PCWSTR pwszDllPath OPTIONAL, IN PULONG pfFlags OPTIONAL,
     2301                                          IN PCUNICODE_STRING pName, OUT PHANDLE phDll);
     2302/** @since Windows XP. */
     2303typedef NTSTATUS (NTAPI *PFNLDRGETDLLHANDLEEX)(IN ULONG fFlags, IN PCWSTR pwszDllPath OPTIONAL, IN PULONG pfFlags OPTIONAL,
     2304                                               IN PCUNICODE_STRING pName, OUT PHANDLE phDll);
     2305/** @since Windows 7. */
     2306NTSYSAPI NTSTATUS NTAPI LdrGetDllHandleByMapping(IN PVOID pvBase, OUT PHANDLE phDll);
     2307/** @since Windows 7. */
     2308typedef NTSTATUS (NTAPI *PFNLDRGETDLLHANDLEBYMAPPING)(IN PVOID pvBase, OUT PHANDLE phDll);
     2309/** @since Windows 7. */
     2310NTSYSAPI NTSTATUS NTAPI LdrGetDllHandleByName(IN PCUNICODE_STRING pName OPTIONAL, IN PCUNICODE_STRING pFullName OPTIONAL,
     2311                                              OUT PHANDLE phDll);
     2312/** @since Windows 7. */
     2313typedef NTSTATUS (NTAPI *PFNLDRGETDLLHANDLEBYNAME)(IN PCUNICODE_STRING pName OPTIONAL, IN PCUNICODE_STRING pFullName OPTIONAL,
     2314                                                   OUT PHANDLE phDll);
     2315#define LDRADDREFDLL_F_PIN                      RT_BIT_32(0)
     2316NTSYSAPI NTSTATUS NTAPI LdrAddRefDll(IN ULONG fFlags, IN HANDLE hDll);
     2317typedef NTSTATUS (NTAPI *PFNLDRADDREFDLL)(IN ULONG fFlags, IN HANDLE hDll);
     2318NTSYSAPI NTSTATUS NTAPI LdrGetProcedureAddress(IN HANDLE hDll, IN ANSI_STRING const *pSymbol OPTIONAL,
     2319                                               IN ULONG uOrdinal OPTIONAL, OUT PVOID *ppvSymbol);
     2320typedef NTSTATUS (NTAPI *PFNLDRGETPROCEDUREADDRESS)(IN HANDLE hDll, IN PCANSI_STRING pSymbol OPTIONAL,
     2321                                                    IN ULONG uOrdinal OPTIONAL, OUT PVOID *ppvSymbol);
     2322#define LDRGETPROCEDUREADDRESSEX_F_DONT_RECORD_FORWARDER RT_BIT_32(0)
     2323/** @since Windows Vista. */
     2324NTSYSAPI NTSTATUS NTAPI LdrGetProcedureAddressEx(IN HANDLE hDll, IN ANSI_STRING const *pSymbol OPTIONAL,
     2325                                                 IN ULONG uOrdinal OPTIONAL, OUT PVOID *ppvSymbol, ULONG fFlags);
     2326/** @since Windows Vista. */
     2327typedef NTSTATUS (NTAPI *PFNLDRGETPROCEDUREADDRESSEX)(IN HANDLE hDll, IN ANSI_STRING const *pSymbol OPTIONAL,
     2328                                                      IN ULONG uOrdinal OPTIONAL, OUT PVOID *ppvSymbol, ULONG fFlags);
     2329#define LDRLOCKLOADERLOCK_F_RAISE_ERRORS    RT_BIT_32(0)
     2330#define LDRLOCKLOADERLOCK_F_NO_WAIT         RT_BIT_32(1)
     2331#define LDRLOCKLOADERLOCK_DISP_INVALID      UINT32_C(0)
     2332#define LDRLOCKLOADERLOCK_DISP_ACQUIRED     UINT32_C(1)
     2333#define LDRLOCKLOADERLOCK_DISP_NOT_ACQUIRED UINT32_C(2)
     2334/** @since Windows XP. */
     2335NTSYSAPI NTSTATUS NTAPI LdrLockLoaderLock(IN ULONG fFlags, OUT PULONG puDisposition OPTIONAL, OUT PVOID *ppvCookie);
     2336/** @since Windows XP. */
     2337typedef NTSTATUS (NTAPI *PFNLDRLOCKLOADERLOCK)(IN ULONG fFlags, OUT PULONG puDisposition OPTIONAL, OUT PVOID *ppvCookie);
     2338#define LDRUNLOCKLOADERLOCK_F_RAISE_ERRORS  RT_BIT_32(0)
     2339/** @since Windows XP. */
     2340NTSYSAPI NTSTATUS NTAPI LdrUnlockLoaderLock(IN ULONG fFlags, OUT PVOID pvCookie);
     2341/** @since Windows XP. */
     2342typedef NTSTATUS (NTAPI *PFNLDRUNLOCKLOADERLOCK)(IN ULONG fFlags, OUT PVOID pvCookie);
     2343
    22872344NTSYSAPI NTSTATUS NTAPI RtlExpandEnvironmentStrings_U(PVOID, PUNICODE_STRING, PUNICODE_STRING, PULONG);
    22882345NTSYSAPI VOID NTAPI     RtlExitUserProcess(NTSTATUS rcExitCode); /**< Vista and later. */
  • trunk/src/VBox/Runtime/r3/win/ntdll-mini-implib.def

    r53471 r53819  
    9292    NtYieldExecution                      ;;= _NtYieldExecution@0
    9393
    94     LdrInitializeThunk                    ;;= _LdrInitializeThunk@12
    95     LdrRegisterDllNotification            ;;= _LdrRegisterDllNotification@16
     94    LdrInitializeThunk                      ;;= _LdrInitializeThunk@12
     95    LdrRegisterDllNotification              ;;= _LdrRegisterDllNotification@16
     96    LdrLoadDll                              ;;= _LdrLoadDll@16
     97    LdrUnloadDll                            ;;= _LdrUnloadDll@4
     98    LdrGetDllHandle                         ;;= _LdrGetDllHandle@16
     99    LdrGetDllHandleEx                       ;;= _LdrGetDllHandleEx@20
     100    LdrGetDllHandleByMapping                ;;= _LdrGetDllHandleByMapping@8
     101    LdrGetDllHandleByName                   ;;= _LdrGetDllHandleByName@12
     102    LdrAddRefDll                            ;;= _LdrAddRefDll@8
     103    LdrGetProcedureAddress                  ;;= _LdrGetProcedureAddress@12
     104    LdrGetProcedureAddressEx                ;;= _LdrGetProcedureAddressEx@16
     105    LdrLockLoaderLock                       ;;= _LdrLockLoaderLock@12
     106    LdrUnlockLoaderLock                     ;;= _LdrUnlockLoaderLock@8
    96107
    97108    RtlAddAccessAllowedAce                ;;= _RtlAddAccessAllowedAce@16
Note: See TracChangeset for help on using the changeset viewer.

© 2024 Oracle Support Privacy / Do Not Sell My Info Terms of Use Trademark Policy Automated Access Etiquette