固定陣列
如果您的介面將具有特定數目元素的陣列指定為參數,則會使用固定陣列。 使用 MIDL 時,您可以使用以 C 定義固定陣列的方式定義固定陣列。您可以指定陣列的類型、名稱和大小。
下列範例示範如何定義固定陣列。
[
/*Attributes are defined here. */
]
interface MyInterface
{
const long ARRAY_SIZE = 1000;
MyRemoteProc(char achArray[ARRAY_SIZE]);
/* Other interface procedures are defined here. */
}
當用戶端程式將固定陣列傳遞至伺服器程式時,用戶端存根會將整個陣列傳送至伺服器存根。 伺服器存根會配置陣列的記憶體,並將它透過網路接收的陣列資料儲存到配置的記憶體中。 然後,它會將陣列傳遞至伺服器上的遠端程式。 伺服器可能會修改陣列中的資料。
當遠端程式終止時,伺服器存根會將陣列的內容傳回用戶端。 用戶端存根會將它從伺服器存根收到的資料複製到原始陣列。 然後,用戶端程式就可以使用資料,就如同從本機程序呼叫收到資料一樣。