Qt 如何正确调用没有输入参数的方法
Qt文档提供了该方法Qt 如何正确调用没有输入参数的方法,qt,opc-ua,qtopcua,Qt,Opc Ua,Qtopcua,Qt文档提供了该方法 bool QOpcUaNode::callMethod(const QString &methodNodeId, const QVector<QOpcUa::TypedVariant> &args = QVector<QOpcUa::TypedVariant>()) boolqopcuanode::callMethod(constqstring&methodNodeId,constqvector&args=QVector()) 用
bool QOpcUaNode::callMethod(const QString &methodNodeId, const QVector<QOpcUa::TypedVariant> &args = QVector<QOpcUa::TypedVariant>())
boolqopcuanode::callMethod(constqstring&methodNodeId,constqvector&args=QVector())
用于在Opc Ua服务器上调用方法。关于此方法,我有两个问题:
myNode->callMethod(methodNodeId)
而不指定进一步的参数仍然会返回BadTooManyArguments
,但实际上我没有其他方法可以看到它被使用CallMethodRequest
调用方法请求在OPC UA规范中定义如下:
- objectId(NodeId)-NodeId应为调用方法的对象或ObjectType的NodeId。->我猜这是你的
QOpcUaNode
- methodId(NodeId)-要调用的方法的NodeId
- 输入参数[](BaseDataType)-输入参数值列表
callMethod(methodId)
调用没有问题。根据调用的方法,此调用可能成功或失败Bad\u TooManyArguments
而不是Bad\u ArgumentsMissing
时也可能出现问题