Rögzített tömbök
Ha az interfész adott számú elemet tartalmazó tömböt ad meg paraméterként, akkor rögzített tömböt használ. A MIDL használatakor a rögzített tömböket ugyanúgy definiálja, mint a C-ben. Megadhatja a tömb típusát, nevét és méretét.
Az alábbi példa bemutatja, hogyan definiálhat rögzített tömböt.
[
/*Attributes are defined here. */
]
interface MyInterface
{
const long ARRAY_SIZE = 1000;
MyRemoteProc(char achArray[ARRAY_SIZE]);
/* Other interface procedures are defined here. */
}
Amikor egy ügyfélprogram átad egy rögzített tömböt egy kiszolgálóprogramnak, az ügyfélcsomó az egész tömböt elküldi a kiszolgálói csonknak. A kiszolgálói csonk lefoglalja a tömb memóriáját, és a hálózaton keresztül kapott tömbadatokat a lefoglalt memóriába tárolja. Ezután átadja a tömböt a kiszolgáló távoli eljárásának. A kiszolgáló módosíthatja a tömb adatait.
A távoli eljárás leállásakor a kiszolgálói csonk visszaküldi a tömb tartalmát az ügyfélnek. Az ügyfél-csonk a kiszolgálói csonktól kapott adatokat az eredeti tömbbe másolja. Az ügyfélprogram ezután ugyanúgy használhatja az adatokat, mintha egy helyi eljáráshívásból kapta volna az adatokat.