Onvif第三课SOAP_TCP_ERROR错误分析

场景

        发送指令,返回SOAP_TCP_ERROR错误码,通过代码定位到是IP地址不可达


调用堆栈查看内容

tcp_connect(soap * soap, const char * endpoint, const char * host, int port) 行 5096 C++
soap_try_connect_command(soap * soap, int http_command, const char * endpoint, const char * action) 行 21370 C++
soap_connect_command(soap * soap, int http_command, const char * endpoints, const char * action) 行 21319 C++
soap_connect(soap * soap, const char * endpoint, const char * action) 行 21275 C++
soap_call___trt__GetProfiles(soap * soap, const char * soap_endpoint, const char * soap_action, _trt__GetProfiles * trt__GetProfiles, _trt__GetProfilesResponse * trt__GetProfilesResponse) 行 23149 C++
onvif_get_profiles(soap * soap, std::basic_string<char,std::char_traits<char>,std::allocator<char> > user, std::basic_string<char,std::char_traits<char>,std::allocator<char> > pass, 
  [外部代码] 
  [下面的框架可能不正确和/或缺失,没有为 kernel32.dll 加载符号] 未知


通过上述的调试堆栈,可以看出gSoap库是一个短连接的TCP(默认下,不保活),只有在需要发送报文的情况下,才跟服务器进行连接

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章