/error switch

A /error kapcsoló határozza meg, hogy a létrehozott csonkok futásidőben milyen típusú hibaellenőrzést hajtanak végre.

Megjegyzés:

Ez a funkció elavult, és már nem támogatott. A /robust kapcsoló használata ajánlott.

 

midl /error { allocation | stub_data | ref | bounds_check | none | all }

Kapcsoló beállításai

Elosztása

Ellenőrzi, hogy midl_user_allocatenull értéket ad-e vissza, ami memóriakihasználtság-hibát jelez.

stub_data

Létrehoz egy csonkot, amely a kiszolgálóoldalon elfogja a nem fertőzött kivételeket, és propagálja őket az ügyfélnek.

Ref

Olyan kódot hoz létre, amely futtatáskor futtat egy ellenőrzést, így meggyőződhet arról, hogy a rendszer nem ad át NULL referenciamutatókat az ügyfélcsomópontnak, és RPC_X_NULL_REF_POINTER kivételt okoz, ha talál ilyet.

bounds_check

Ellenőrzi a megfelelő és változó tömbök méretét az átviteli hossz specifikációja alapján.

Nincs

Nem végez hibaellenőrzést.

Minden

Az összes hibaellenőrzést végrehajtja. A MIDL 5.0-s verziójával érvényes, ez egy alapértelmezett fordítókapcsoló.

Megjegyzések

A /error kapcsoló kiválasztja a létrehozott csonkfájlok által végrehajtott hibaellenőrzések számát. A MIDL 5.0-s verziójával érvényes, az alapértelmezett beállítás a /error all.

Az ellenőrzött enumerálási hibák (alapértelmezés szerint a MIDL minden verziójában) csonkítási hibák, amelyeket a hosszú enumerálási típusok (32 bites egész számok) és a rövid enumerálási típusok (az enum hálózati adatmegjelenítése) közötti konvertáláskor okoznak, valamint a számbavételben szereplő azonosítók száma meghaladja a 32 767-et.

A memóriahozzáférési hibaellenőrzés (a MIDL minden verziójában alapértelmezés szerint) olyan mutatókra vonatkozik, amelyek túllépik a puffer végét a tárolókódban, valamint olyan megfelelő tömbök esetében, amelyek mérete nullánál kisebb. A /error bounds_check jelző használatával ellenőrizze, hogy vannak-e más érvénytelen tömbkorlátok.

A /error allocation megadásakor a csonkok olyan kódot tartalmaznak, amely kivételt okoz , amikor midl_user_allocate 0 értéket ad vissza.

A /error stub_data beállítás megakadályozza, hogy az ügyféladatok összeomlanak a kiszolgálóval a házasság megszüntetése során, és hatékonyan biztosítson robusztusabb módszert a leválasztási művelet kezelésére.

A 2000.Windows-ra érvényes, az alapul szolgáló NDR marshaling motor végzi a legtöbb ilyen ellenőrzést. Ez azt jelenti, hogy ha a stubgenerálás egyik teljesen értelmezett módját (/Oi, /Oif) használja, a különböző hibaellenőrzési lehetőségek kiválasztása nem lesz jelentős hatással a teljesítményre.

Examples

midl /error allocation filename.idl

midl /error none filename.idl

Lásd még

Általános MIDL parancssori szintaxis

/Robusztus