Initialize_Conversation (CPI-C)

叫用程式會發出 Initialize_Conversation呼叫 (函式名稱 cminit) ,以取得 8 位元組的交談識別碼,並設定交談特性的初始值。

語法

  
CM_ENTRY Initialize_Conversation(   
  unsigned char FAR *conversation_ID,    
  unsigned char FAR *sym_dest_name,    
  CM_INT32 FAR *return_code            
);  

參數

conversation_ID
傳回的參數。 指定交談的識別碼。 後續的 CPI-C 呼叫會使用它。

sym_dest_name
提供的參數。 指定符號目的地名稱—與從組態檔載入或 由Set_CPIC_Side_Information 呼叫所定義的側邊資訊專案相關聯的名稱。

此參數是 8 位元組的 ASCII 字元字串。 允許的字元如下所示:

  • 大寫字母

  • 數位從 0 到 9

    此參數也可以設定為八個空格。 在此情況下,叫用程式必須在發出 Allocate之前發出下列呼叫:

  • Set_Mode_Name

  • Set_Partner_LU_Name

  • Set_TP_Name

    return_code
    從這個呼叫傳回的程式碼。 本主題稍後會列出有效的傳回碼。

傳回碼

CM_OK
主要傳回碼;已成功執行呼叫。

CM_PROGRAM_PARAMETER_CHECK
主要傳回碼; sym_dest_name 所指定的值與側邊資訊資料表中的符號目的地名稱不符,而且不是空格。

CM_PRODUCT_SPECIFIC_ERROR
主要傳回碼;發生產品特定的錯誤,並已記錄在產品錯誤記錄檔中。

狀態變更

交談處於 RESET 狀態。

如果 return_code CM_OK,交談就會變更為 INITIALIZE 狀態。 針對其他傳回碼,交談狀態會保持不變。

備註

初始值為 CPI-C 預設值,或衍生自與符號目的地名稱相關聯的側邊資訊。 如需初始值和側邊資訊的詳細資訊,請參閱CPI-C 程式的初始交談特性和側邊資訊。

Set_ 呼叫可以 變更初始值。

如果側邊資訊包含不正確值或 Set_ 呼叫會將交談特性設定為不正確值,則會在 Allocate 呼叫上傳回錯誤。

如果 CPI-C 應用程式嘗試叫用多個並行交談,則所有交談只會使用單一本機 APPC 邏輯單元 (LU) 。 這可防止跨兩個或多個相依 LU 6.2 RU 的並行交談,導致後續Initialize_Conversation (CMALLC) 呼叫等候第一個交談解除配置。

如果 CPI-C 應用程式需要叫用多個並行交談,則必須在主機整合伺服器與遠端系統之間使用獨立的 LU 6.2。

成功執行此呼叫時,CPI-C 會產生交談識別碼。 此識別碼是叫用程式針對此交談發出之所有其他 CPI-C 呼叫的必要參數。

在正常情況下,CPI-C 應用程式無法使用兩個不同的本機 APPC LU 叫用兩個並行交談。 登錄機碼可供使用,當 set 強制 CPI-C 在每個Initialize_Conversation (cminit) 呼叫上發出新的TP_STARTED動詞。 這是強制每個呼叫的 APPC 資源位置的必要條件。 必須定義以強制執行此行為的登錄機碼如下:

\HKLM\CurrentControlSet\Services\SnaBase\Parameters\Client\GETNEWTPID