VBS 記憶體保護區中提供的 Vertdll API

記憶體保護區可用來建立受信任的執行環境。 這些 Vertdll API 可供 VBS 記憶體保護區中的開發人員使用。

Vertdll.dll導出的函式

Vertdll.dll所導出的下列 API 可在 VBS 記憶體保護區中呼叫。

API 標頭 描述
IsProcessorFeaturePresent processthreadsapi.h 判斷目前計算機是否支援指定的處理器功能。
LdrDisableThreadCalloutsForDll - 停用線程附加和中斷連結圖說文字至 DLL。
NtTerminateProcess
請參閱 TerminateProcess
processthreadsapi.h 終止指定的進程及其所有線程。
RtlCaptureContext winnt.h 擷取呼叫端內容中的內容記錄。
RtlGetLastNtStatus
請參閱 GetLastError
- 取得最後一個 NTSTATUS 值。
RtlLookupFunctionEntry winnt.h 搜尋使用中函式數據表中對應至指定PC值的專案。
RtlPcToFileHeader winnt.h 擷取包含指定計算機值的映像基位址。
RtlRaiseStatus
請參閱 RaiseException
- 只使用 dwExceptionCode 參數引發例外狀況。 RtlRaiseStatus叫用 RaiseException,傳遞 EXCEPTION_NONCONTINUABLE 以指出發生無法連續的例外狀況。
RtlTimeFieldsToTime wdm.h TIME_FIELDS 資訊轉換成系統時間值。
RtlUnhandledExceptionFilter
請參閱 UnhandledExceptionFilter
- 如果正在偵錯進程,應用程式定義的函式會將未處理的例外狀況傳遞給調試程式。
RtlUnwind winnt.h 起始過程調用框架的回溯。
RtlUnwindEx winnt.h 起始過程調用框架的回溯。
RtlVirtualUnwind winnt.h 擷取指定函式內容之前之函式的調用內容。
RtlGetSystemGlobalData - 取得系統全域數據區域的位址。
memcmp memory.h
string.h
比較兩個緩衝區中的字元。
memcpy memory.h
string.h
複製緩衝區之間的位元組。
memmove string.h 將某個緩衝區移到另一個緩衝區。
memset memory.h
string.h
將緩衝區設定為指定的字元。
OutputDebugStringW debugapi.h 將字串傳送至調試程式以顯示。
CallEnclave enclaveapi.h 呼叫記憶體保護區內的函式。
EnclaveGetEnclaveInformation winenclaveapi.h 取得目前執行記憶體保護區的相關信息。
GetCurrentProcess processthreadsapi.h 擷取目前進程的虛擬句柄。
TerminateEnclave enclaveapi.h 結束在記憶體保護區內執行的線程執行。
TerminateProcess processthreadsapi.h 終止指定的進程及其所有線程。
GetLastError errhandlingapi.h 擷取呼叫線程的最後一個錯誤碼值。
SetLastError errhandlingapi.h 設定呼叫線程的最後一個錯誤碼。
RaiseException errhandlingapi.h 在呼叫線程中引發例外狀況。
SetUnhandledExceptionFilter errhandlingapi.h 可讓應用程式取代進程每個線程的最上層例外狀況處理程式。
GetProcessHeap heapapi.h 擷取呼叫進程之預設堆積的句柄。
GetProcessHeaps heapapi.h 傳回使用中堆積的數目,並擷取呼叫進程之所有使用中堆積的句柄。
HeapAlloc heapapi.h 從堆積配置記憶體區塊。 配置的記憶體無法移動。
HeapCompact heapapi.h 傳回指定堆積中最大認可可用區塊的大小。
HeapCreate heapapi.h 建立私人堆積物件,供呼叫進程使用。
HeapDestroy heapapi.h 終結指定的堆積物件。 它會認可並釋放私人堆積物件的所有頁面,並使堆積的句柄失效。
HeapFree heapapi.h 釋放 HeapAllocHeapReAlloc 函式從堆積配置的記憶體區塊。
HeapLock heapapi.h 嘗試取得與指定堆積相關聯的重要區段對象或鎖定。
HeapReAlloc heapapi.h 從堆積重新配置記憶體區塊。 此函式可讓您調整記憶體區塊的大小,並變更其他記憶體區塊屬性。
堆積大小 heapapi.h 擷取 HeapAllocHeapReAlloc 函式從堆積配置的記憶體區塊大小。
HeapUnlock heapapi.h 釋放與指定堆積相關聯的重要區段對象或鎖定的擁有權。 它會反轉 HeapLock 函式的動作。
InitializeSListHead interlockedapi.h 初始化單向連結清單的前端。
InterlockedFlushSList interlockedapi.h 從單選連結清單中移除所有專案。
InterlockedPopEntrySList interlockedapi.h 從單向連結清單的前面移除專案。
InterlockedPushEntrySList interlockedapi.h 在單向連結清單的前面插入專案。
InterlockedPushListSList interlockedapi.h 在另一個單向連結清單的前面插入單一連結清單。
InterlockedPushListSListEx interlockedapi.h 在另一個單向連結清單的前面插入單一連結清單。
QueryDepthSList interlockedapi.h 擷取指定之單項連結清單中的項目數。
DisableThreadLibraryCalls libloaderapi.h 停用 指定 DLL 的DLL_THREAD_ATTACHDLL_THREAD_DETACH 通知。
GetModuleHandleExW libloaderapi.h 擷取指定模組的模組句柄,並遞增模組的參考計數,除非 指定GET_MODULE_HANDLE_EX_FLAG_UNCHANGED_REFCOUNT
GetProcAddress libloaderapi.h 從指定的 DLL 擷取匯出函式或變數的位址。
SetThreadStackGuarantee processthreadsapi.h 設定與呼叫線程或光纖相關聯的堆疊大小下限,此線程或光纖將在任何堆疊溢位例外狀況期間使用。
VirtualAlloc memoryapi.h 在呼叫程式的虛擬位址空間中保留、認可或變更頁面區域的狀態。
VirtualFree memoryapi.h 發行、取消認可或釋放,並在呼叫程式的虛擬位址空間內解除認可頁面的區域。
VirtualProtect memoryapi.h 變更呼叫程式虛擬位址空間中已認可頁面區域中的保護。
VirtualQuery memoryapi.h 擷取呼叫程式虛擬位址空間中某個頁面範圍的相關信息。
AcquireSRWLockExclusive synchapi.h 以獨佔模式取得精簡的讀取器/寫入器 (SRW) 鎖定。
AcquireSRWLockShared synchapi.h 取得共用模式中的精簡讀取器/寫入器 (SRW) 鎖定。
DeleteCriticalSection synchapi.h 釋放未擁有的重要區段物件所使用的所有資源。
DeleteSynchronizationBarrier synchapi.h 刪除同步處理屏障。
EnterCriticalSection synchapi.h 等候指定之重要區段對象的擁有權。 當呼叫線程被授與擁有權時,函式會傳回 。
EnterSynchronizationBarrier synchapi.h 導致呼叫線程在同步處理屏障等候,直到線程數目上限進入屏障為止。
InitializeConditionVariable synchapi.h 初始化條件變數。
InitializeCriticalSection synchapi.h 初始化重要區段物件。
InitializeCriticalSectionAndSpinCount synchapi.h 初始化重要區段物件,並設定重要區段的微調計數。
InitializeCriticalSectionEx synchapi.h 使用微調計數和選擇性旗標,初始化重要區段物件。
InitializeSRWLock synchapi.h 初始化精簡的讀取器/寫入器 (SRW) 鎖定。
InitializeSynchronizationBarrier synchapi.h 初始化新的同步處理屏障。
LeaveCriticalSection synchapi.h 釋放指定之重要區段對象的擁有權。
ReleaseSRWLockExclusive synchapi.h 釋放以獨佔模式取得的精簡讀取器/寫入器 (SRW) 鎖定。
ReleaseSRWLockShared synchapi.h 釋放以共用模式取得的精簡讀取器/寫入器 (SRW) 鎖定。
SetCriticalSectionSpinCount synchapi.h 設定指定之重大區段的微調計數。
SleepConditionVariableCS synchapi.h 在指定的條件變數上睡眠,並將指定的關鍵區段釋放為不可部分完成的作業。
SleepConditionVariableSRW synchapi.h 在指定的條件變數上睡眠,並將指定的鎖定釋放為不可部分完成的作業。
TryAcquireSRWLockExclusive synchapi.h 嘗試以獨佔模式取得精簡的讀取器/寫入器 (SRW) 鎖定。 如果呼叫成功,呼叫線程會取得鎖定的擁有權。
TryAcquireSRWLockShared synchapi.h 嘗試在共用模式中取得精簡的讀取器/寫入器 (SRW) 鎖定。 如果呼叫成功,呼叫線程會取得鎖定的擁有權。
TryEnterCriticalSection synchapi.h 嘗試在不封鎖的情況下進入重要區段。 如果呼叫成功,呼叫線程會取得重要區段的擁有權。
WaitOnAddress synchapi.h 等候位於指定位址的值變更。
WakeAllConditionVariable synchapi.h 喚醒所有等候指定條件變數的線程。
WakeByAddressAll synchapi.h 喚醒所有等候位址值變更的線程。
WakeByAddressSingle synchapi.h 喚醒一個正在等候位址值變更的線程。
WakeConditionVariable synchapi.h 喚醒等候指定條件變數的單一線程。
GetCurrentThread processthreadsapi.h 擷取呼叫線程的虛擬句柄。
GetCurrentThreadId processthreadsapi.h 擷取呼叫線程的線程標識碼。
TlsAlloc processthreadsapi.h 配置線程本機記憶體 (TLS) 索引。
TlsFree processthreadsapi.h 發行 TLS 索引,使其可供重複使用。
TlsGetValue processthreadsapi.h 針對指定的 TLS 索引,擷取呼叫線程 TLS 位置中的值。
TlsSetValue processthreadsapi.h 針對指定的 TLS 索引,將值儲存在呼叫線程的 TLS 位置中。
EnclaveGetAttestationReport winenclaveapi.h 取得記憶體保護區證明報告,其描述目前的記憶體保護區,並由負責記憶體保護區類型的授權單位簽署。
EnclaveSealData winenclaveapi.h 從未存取的數據產生加密的二進位大型物件(Blob)。
EnclaveUnsealData winenclaveapi.h 解密加密的二進位大型物件 (blob)。
EnclaveVerifyAttestationReport winenclaveapi.h 驗證目前系統上產生的證明報告。
WideCharToMultiByte stringapiset.h 地圖 UTF-16 (寬字元) 字串到新的字元字串。
MultiByteToWideChar stringapiset.h 地圖 字元字串到 UTF-16 (寬字元) 字串。
LdrResolveDelayLoadedAPI
請參閱 ResolveDelayLoadedAPI
- 找出指定匯入的目標函式,並將 import thunk 中的函式指標取代為函式實作的目標。

另請參閱