OPC协议开发中引用类库OPCDAAuto.dll问题
在C#中引用了OPCDAAuto.dll注册的类库。
但是该类的类库中的Connect方法,老报“对 COM 组件的调用返回了错误 HRESULT E_FAIL”错误。
请问该问题怎么解决?
代码如下:
//获取本地计算机上的OPCServerName
try
{
OPCServer KepServer = new OPCServer();
object serverList = KepServer.GetOPCServers(strHostName);
foreach (string turn in (Array)serverList)
{
cmbServerName.Items.Add(turn);
}
cmbServerName.SelectedIndex = 0;
btnConnServer.Enabled = true;
}
catch(Exception err)
{
MessageBox.Show("枚举本地OPC服务器出错:"+err.Message,"提示信息",MessageBoxButtons.OK,MessageBoxIcon.Warning);
}
以上内容是没问题,表示DLL类库引用是正常的。
但是运行到下面这句就出错了
KepServer.Connect(remoteServerName, remoteServerIP);
报错信息:对 COM 组件的调用返回了错误 HRESULT E_FAIL
------解决方案--------------------用命令行试下 regsvr32 OPCDAAuto.dll
------解决方案--------------------
肯定注册了DLL,不注册怎么引用类库
------解决方案--------------------没人吗?
------解决方案--------------------没人知道这个问题?
------解决方案-------------------- KepServer.Connect(remoteServerName, remoteServerIP);
remoteServerName remoteServerIP 检查这两个参数是否传递正确 。一般传错了IP会导致这个BUG
------解决方案--------------------我也遇到了这个问题,百度了好久都没解决,后来把IP自动获取的改为固定的了,然后就好了,不知道为什么