Set_Conversation_Type (CPI-C)

Set_Conversation_Type调用 (函数名称 cmsct) 由调用程序发出,以将会话定义为正在映射或基本对话。 此调用将替代 由 Initialize_Conversation 建立的默认聊天类型。 默认会话类型为CM_MAPPED_CONVERSATION。 发出分配后,无法发出此调用。

语法

  
CM_ENTRY Set_Conversation_Type(   
  unsigned char FAR *conversation_ID,    
  CM_INT32 FAR *conversation_type,    
    CM_INT32 FAR *return_code           
);  

参数

conversation_ID
提供的参数。 指定会话的标识符。 此参数的值由 Initialize_Conversation 返回。

conversation_type
提供的参数。 指定要由 Allocate 分配的会话类型。 可能的值为:

  • CM_BASIC_CONVERSATION

  • CM_MAPPED_CONVERSATION

    return_code
    从此调用返回的代码。 本主题后面列出了有效的返回代码。

返回代码

CM_OK
主返回代码;调用已成功执行。

CM_PROGRAM_STATE_CHECK
主返回代码;会话未处于 INITIALIZE 状态。

CM_PROGRAM_PARAMETER_CHECK
主返回代码;发生以下情况之一:

  • conversation_IDconversation_type指定的值无效。

  • conversation_type 参数指定映射对话,但填充特征设置为CM_FILL_BUFFER,这与映射对话不兼容。 在将会话类型更改为映射之前,必须发出 Set_Fill 调用,将填充类型更改为CM_FILL_LL。

  • conversation_type 参数指定映射的会话。 但是,以前的 Set_Log_Data 调用(仅在基本对话中允许)仍然有效。

    CM_PRODUCT_SPECIFIC_ERROR
    主返回代码;发生特定于产品的错误,并且已记录在产品错误日志中。

状态更改

会话必须处于 INITIALIZE 状态。

没有状态更改。