Jegyzet
Az oldalhoz való hozzáférés engedélyezést igényel. Próbálhatod be jelentkezni vagy könyvtárat váltani.
Az oldalhoz való hozzáférés engedélyezést igényel. Megpróbálhatod a könyvtár váltását.
A megfelelő Win32 függvény logikai burkolójaként szolgál. A Win32-implementáció VirtualAlloc fenntartja vagy véglegesíti a hívófolyamat virtuális címterében található oldalak egy régióját.
Szintaxis
HRESULT VirtualAlloc (
[in] void* pAddress,
[in] SIZE_T dwSize,
[in] DWORD flAllocationType,
[in] DWORD flProtect,
[in] EMemoryCriticalLevel dwCriticalLevel,
[out] void** ppMem
);
Paraméterek
pAddress
[in] Mutató a lefoglalni kívánt régió kezdőcímére.
dwSize
[in] A régió mérete bájtban.
flAllocationType
[in] A memóriafoglalás típusa.
flProtect
[in] Memóriavédelem a lefoglalandó lapok régiójában.
dwCriticalLevel
[in] Egy EMemoryCriticalLevel érték, amely egy foglalási hiba hatását jelzi.
ppMem
[kifelé] Mutasson a lefoglalt memória kezdőcímére, vagy null értékűre, ha a kérés nem teljesíthető.
Visszatérési érték
| HRESULT | Description |
|---|---|
| S_OK |
VirtualAlloc sikeresen visszaadott. |
| HOST_E_CLRNOTAVAILABLE | A közös nyelvi futtatókörnyezet (CLR) nincs betöltve egy folyamatba, vagy a CLR olyan állapotban van, amelyben nem tudja futtatni a felügyelt kódot, vagy nem tudja sikeresen feldolgozni a hívást. |
| HOST_E_TIMEOUT | A hívás túllépte az időkorlátot. |
| HOST_E_NOT_OWNER | A hívó nem rendelkezik a zárral. |
| HOST_E_ABANDONED | Egy esemény megszakadt, miközben egy blokkolt szál vagy szál várt rá. |
| E_FAIL | Ismeretlen katasztrofális hiba történt. Amikor egy metódus E_FAIL ad vissza, a CLR már nem használható a folyamaton belül. Az üzemeltetési módszerek későbbi hívásai HOST_E_CLRNOTAVAILABLE ad vissza. |
| E_OUTOFMEMORY | Nem volt elegendő memória a foglalási kérelem befejezéséhez |
Megjegyzések
A folyamat címterében egy régiót foglal le a meghívásával VirtualAlloc. A pAddress paraméter a kívánt memóriablokk kezdőcímét tartalmazza. Ez a paraméter általában null értékre van állítva. Az operációs rendszer nyilvántartást vezet a folyamat számára elérhető ingyenes címtartományokról. A pAddress null érték arra utasítja a rendszert, hogy fenntartsa a régiót bárhol, ahol látja. Másik lehetőségként megadhat egy adott kezdőcímet a memóriablokkhoz. A kimeneti paraméter ppMem mindkét esetben a lefoglalt memória mutatójaként lesz visszaadva. Maga a függvény egy HRESULT értéket ad vissza.
A Win32 VirtualAlloc függvény nem rendelkezik paraméterrel ppMem , és inkább a lefoglalt memóriára mutató mutatót adja vissza. További információt a Windows Platform dokumentációjában talál.
Követelmények
Platformok: Lásd: Rendszerkövetelmények.
Fejléc: MSCorEE.h
Könyvtár: Erőforrásként szerepel a MSCorEE.dll
.NET-keretrendszer verziók: 2.0 óta elérhető