<< 点击显示目录 >> 主页 PVI通信 > PVI帮助信息 > PVI base system > PVICOM interface > PVICOM functions > PviUnlinkRequest, PviXUnlinkRequest functions |
int PviUnlinkRequest (DWORD LinkID, LPVOID hResMsg, DWORD ResMsgNo, LPARAM ResParam)
int PviXUnlinkRequest (DWORD hPvi, DWORD LinkID, LPVOID hResMsg, DWORD ResMsgNo, LPARAM ResParam)
PviUnlinkRequest (ByVal LinkID As Long, ByVal hResMsg As Long, ByVal ResMsgNo As Long, ByVal ResParam As Long) As Long
PviXUnlinkRequest (ByVal hPvi As Long, ByVal LinkID As Long, ByVal hResMsg As Long, ByVal ResMsgNo As Long, ByVal ResParam As Long) As Long
Argument |
I/O |
说明 |
hPvi |
In |
来自 PviXInitialize 函数的实例句柄 |
LinkID |
In |
来自 PviCreateResponse、 PviLinkResponse 或PviXCreateResponse、PviXLinkResponse函数的链接ID |
hResMsg |
In |
= 0 (Null)。PVI管理器不发送响应 |
ResMsgNo |
In |
用户信息的信息编号 = 0 (Null)。与hResMsg=0含义相同。 |
ResParam |
In |
用户信息的消息参数 在32位PVI版本(PviCom.dll)中,消息参数(用户参数)的大小为4字节,在64位PVI版本(PviCom64.dll)中为8字节。 |
如果数值不是0,则表明有错误。错误代码被作为一个值返回。原则上,这个函数只报告Windows资源错误(如没有足够的可用内存)或用户错误(如非法的函数参数,不正确的函数使用,等等)。在这种情况下,不会向PVI管理器发送请求,也不会执行定义的响应信息。如果在数据传输过程中或在处理请求时发生错误,那么它将只与响应数据一起报告。
这个函数向PVI管理器发送一个请求,以释放一个链接对象。响应数据必须用 PviUnlinkResponse 或PviXUnlinkResponse函数 读取 ,除非使用 PVICALLBACK_DATA 类型的回调函数 。
如果没有给临时进程对象分配额外的链接或进程对象,那么该进程对象也被释放。
一旦一个链接对象被释放,不再有 事件 通过这个对象。此外,所有分配给链接对象的请求和响应数据被删除。相应的用户消息不再被执行。
应用程序仍然可以接收响应或事件数据的用户消息,直到收到解除链接请求的响应。
如果当链接对象被释放时,PVICOM应用程序仍应接收所有活动请求的响应数据,那么释放程序需要分两步进行。
1. 向链接对象发送访问类型 为POBJ_ACC_CANCEL 且值为'0'(零)的写请求 。这就取消了所有活动的请求,并执行了其中的用户信息。响应数据中报告了错误12043。
2.在收到对取消请求的响应后,发送释放链接对象的请求。