可攜性宏
RPC 工具藉由將產生的存根檔案和標頭檔中的資料類型和函式傳回型別與每個平臺特有的定義關聯,來達成模型、呼叫和命名慣例獨立。 這些巨集定義可確保任何需要指定 __far 的資料類型和函式都會指定為物件。
下圖顯示 MIDL 編譯器套用至 RPC 元件之間的函式呼叫的巨集定義:
RPC 宏的定義如下。
定義 | 描述 |
---|---|
__RPC_API | 套用至存根對使用者應用程式所做的呼叫。 這兩個函式都位於相同的可執行程式中。 |
__RPC_FAR | 套用至指標的標準巨集定義。 此巨集定義應該會顯示為所有使用者提供函式簽章的一部分。 |
__RPC_STUB | 套用至從執行時間程式庫到存根的呼叫。 這些呼叫可視為私用。 |
__RPC_USER | 套用至執行時間程式庫對使用者應用程式進行的呼叫。 這些會跨越 DLL 與應用程式之間的界限。 |
RPC_ENTRY | 套用至應用程式所發出的呼叫,或套用至執行時間程式庫的存根。 此巨集定義會套用至所有 RPC 執行時間函式。 |
若要正確地與 Microsoft RPC 執行時間程式庫、存根和支援常式連結,某些使用者提供的函式也必須在函式定義中包含這些宏。 當您定義與記憶體管理、使用者定義系結控制碼和transmit_as屬性相關聯的函式時,請使用宏__RPC_API,並在定義與內容控制碼相關聯的內容執行常式時使用宏__RPC_USER。 將函式指定為:
-
__RPC_USER midl_user_allocate (...)
-
__RPC_USER midl_user_free (...)
-
__RPC_USER handletype_bind (...)
-
__RPC_USER handletype_unbind (...)
-
__RPC_USER 類型_to_local
-
__RPC_USER 類型_from_local
-
__RPC_USER type_to_xmit (...)
-
__RPC_USER 類型_from_xmit (...)
-
__RPC_USER 類型_free_local
-
__RPC_USER 類型_free_inst (...)
-
__RPC_USER 類型_free_xmit (...)
-
__RPC_USER coNtext_rundown (...)
注意
這些函式中的所有指標參數都必須使用宏 __RPC_FAR來指定。
規格需求
需求 | 值 |
---|---|
最低支援的用戶端 |
Windows 2000 專業版 [僅限傳統型應用程式] |
最低支援的伺服器 |
Windows 2000 Server [僅限傳統型應用程式] |
標頭 |
|