Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/333.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/vb.net/14.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 有人看到这个(COM)错误号码吗?(80040214)从UPnP.dll调用.QueryState变量时?_C#_Vb.net_Visual Studio_Vb6_Upnp - Fatal编程技术网

C# 有人看到这个(COM)错误号码吗?(80040214)从UPnP.dll调用.QueryState变量时?

C# 有人看到这个(COM)错误号码吗?(80040214)从UPnP.dll调用.QueryState变量时?,c#,vb.net,visual-studio,vb6,upnp,C#,Vb.net,Visual Studio,Vb6,Upnp,[虽然我在下面使用VB6,但我很乐意接受VB.NET或C#中的解决方案,因为我可以用这两种语言编写] 我尝试使用函数QueryStateVariable(),它只接受一个参数(一个描述要检索其值的变量名称的字符串),因此您可以这样运行它: Dim vReturn As Variant vReturn = Service.QueryStateVariable("ExternalPort") 服务对象已正确设置为UPnPService(WanIPConnection)。这是在WANIConnect

[虽然我在下面使用VB6,但我很乐意接受VB.NET或C#中的解决方案,因为我可以用这两种语言编写]

我尝试使用函数QueryStateVariable(),它只接受一个参数(一个描述要检索其值的变量名称的字符串),因此您可以这样运行它:

Dim vReturn As Variant
vReturn = Service.QueryStateVariable("ExternalPort")
服务对象已正确设置为UPnPService(WanIPConnection)。这是在WANIConnection服务(直接在Wan连接设备下)下发生的,我只能读取17个状态变量中的4个(我只是使用“ExternalPort”作为示例变量名)。每一个其他变量返回此错误号-2147220972(80040214),并显示通用的“失败”描述消息:即:

Run-time error '-2147220972 (80040214)':
Method 'QueryStateVariable' of object 'IUPnPService' failed
目前,我只是忽略它(忽略异常)并返回一个空字符串,但如果有人知道这可能意味着什么,甚至只是我可以跟进的线索,这将是一个很大的帮助。也许有人知道这个错误号是什么意思或是指什么?或者,是否有人看到过此错误,或者正在获取此错误号,或者以前遇到过此错误号?它在COM世界中可能有一个通用的含义,但我无法在谷歌上找到它

如果你在谷歌搜索-2147220972,没有点击,如果你删除了-符号,有几个但都指向不同的含义,如果你把upnp这个词放在它旁边,你会得到0个点击!现在,如果你搜索“80040214 upnp”(当然没有引号),你会得到高达8次的点击率,这几乎完全是用户在使用支持upnp的软件和复制/粘贴错误日志时遇到的错误。它不是程序员报告错误号,请求帮助,接收解决方案或答案(如果那样的话会更好)

更新:我已经找到了此错误代码的定义,但仍然无法解决它,因为描述非常笼统,没有为我提供任何关于如何解决它的线索,但请参考以下内容(可能对你们中的一些人更有意义):

UPNP设备的定义错误:

“变量未发生事件,远程查询返回错误代码。这不是传输错误;设备收到请求,但返回了错误。”

*下面的附加文本不是解释此问题所必需的阅读材料,但对于那些对附加信息感兴趣的人来说:

我已经从我的程序中生成了一个日志作为输出,这样我就可以将17个变量的结果(并尝试获取它们的值)粘贴到StackOverflow中。总而言之,WanPConnection服务有17个变量,所以我尝试并记录了所有变量(只有4次成功尝试,其余都是运行时错误)和WanPPConnection服务(与WanPConnection服务非常相似),但总共有19个状态变量(仅比WanPConnection多2个)。我已尝试(并记录)了所有19次变量检索尝试,但仅收到4次成功的值返回(所有其他返回结果均为运行时错误)-因此,我已从WanIPConnection和WANPPPPConnection中获得4次成功

以下是我的日志,我的真实IP地址已更改(因为我知道如果我不lol,我会被炒鱿鱼),当前设置的设备和服务在两个日志的开头都有说明(显示),如下所示:

[注意:为了避免混淆:我在检索的值周围放置星号()以显示空白,有时StackOverflow会将内容转换为斜体,或者在中间的字符串为空时保留星号]*

第一个日志(WANIConnect,17个状态变量):

将uDevice(当前设置的设备)设置为:WAN连接设备,NETGEAR WNR1000v3 N150无线路由器, urn:schemas upnp组织:设备:WANConnectionDevice:1

将uService(当前设置的服务)设置为: urn:schemas-upnp-org:service:WANIPConnection:1

在1次(共1次)尝试中完成GetQSV(用于ConnectionStatus)。QSV长度 是9(高于0)。返回值已连接(非空)

在1次(共1次)尝试中完成GetQSV(用于ConnectionType)。QSV长度 为0(长度检查失败)。返回值为**(非空)。 [-2147220972]对象“IUPnPService”的方法“QueryStateVariable” 失败的LastDller错误:0

在1次(共1次)尝试中完成GetQSV(用于ExternalPaddress)。长度 QSV为13(高于0)。返回值为110.122.16.83(非空)

在1次(共1次)尝试中完成GetQSV(用于ExternalPort)。QSV的长度为 0(长度检查失败)。返回值为**(非空)。[-2147220972] 对象“IUPnPService”的方法“QueryStateVariable” 失败的LastDller错误:0

在1次(共1次)尝试中完成GetQSV(用于InternalClient)。QSV长度 为0(长度检查失败)。返回值为**(非空)。 [-2147220972]对象“IUPnPService”的方法“QueryStateVariable” 失败的LastDller错误:0

在1次(共1次)尝试中完成GetQSV(用于InternalPort)。QSV的长度为 0(长度检查失败)。返回值为**(非空)。[-2147220972] 对象“IUPnPService”的方法“QueryStateVariable” 失败的LastDller错误:0

在1次(共1次)尝试中完成GetQSV(针对LastConnectionError)。长度 QSV为0(长度检查失败)。返回值为**(非空)。 [-2147220972]对象“IUPnPService”的方法“QueryStateVariable” 失败的LastDller错误:0

在1次(共1次)尝试中完成了GetQSV(用于NATEnabled)。QSV的长度为0 (长度检查失败)。返回值为**(非空)。[-2147220972] 对象“IUPnPService”的方法“QueryStateVariable” 失败的LastDller错误:0

在1次(共1次)尝试中完成GetQSV(用于PortMappingDescription)。长度 QSV的长度为0(长度检查失败)。返回值为**(非空)。 [-2147220972]对象“IUPnPService”的方法“QueryStateVariable” F
ConnectionType = GetConnectionTypeInfo
ExternalPort,InternalClient,InternalPort = GetGenericPortMappingEntry
LastConnectionError = GetStatusInfo