这是实用程序函数,在调用 bipInitializeUserExits 期间,用户代码可以调用该函数。如果用户希望在每次特定事件发生时都注册要调用的函数,则用户代码会调用此函数。
typedef struct cci_UEVft { int reserved; char StrucId[4]; int Version; cciInputMessageCallback iFpInputMessageCallback; cciTransactionEventCallback iFpTransactionEventCallback; cciPropagatedMessageCallback iFpPropagatedMessageCallback; cciNodeCompletionCallback iFpNodeCompletionCallback; } CCI_UE_VFT; void cciRegisterUserExit ( int* returnCode, CciChar* name, CciDataContext* userContext, CCI_UE_VFT* functionTable);
指定的名称与先前在当前执行组中注册的用户出口名称相匹配。
指定的名称无效。这种情况可能是由于指定了 NULL 指针、空字符串或包含非字母数字字符的字符串所导致。
extern "C"{ void bipInitializeUserExits(){ int rc = CCI_SUCCESS; CCI_UE_VFT myVft = {CCI_UE_VFT_DEFAULT}; myVft.iFpInputMessageCallback = myInputMessageCallback; myVft.iFpTransactionEventCallback = myTransactionEventCallback; myVft.iFpPropagatedMessageCallback = myPropagatedMessageCallback; myVft.iFpNodeCompletionCallback = myNodeCompletionCallback; cciRegisterUserExit(&rc, MyConstants::myUserExitName, 0, &myVft); /*you should now check the rc for unexpected values*/ return; } }/*end of extern "C" */