新建C#应用程序,命名为OPC
Client,将OPCAutomation.dll引用,如图。
using
OPCAutomation
2.
定义OPC的三个接口类OPCServer类、OPCGroup类和OPCItem类;
OPCServer
KepServer
OPCGroups
KepGroups
OPCGroup
KepGroup
OPCItems
KepItems
OPCItem
KepItem
3.
枚举网络OPC服务器
枚举OPC服务器用到GetOPCServers()函数
//获取计算机IP,计算机名称
IPHostEntry
IPHost
=
Dns.Resolve(Environment.MachineName)
if
(IPHost.AddressList.Length
>
0)
{
strHostIP
=
IPHost.AddressList[0].ToString()
}
else
{
return
}
//通过IP来获取计算机名称,可用在局域网内
IPHostEntry
ipHostEntry
=
Dns.GetHostByAddress(strHostIP)
strHostName
=
ipHostEntry.HostName.ToString()//获取本地计算机上的OPCServerName
try
{
KepServer
=
new
OPCServer()
object
serverList
=
KepServer.GetOPCServers(strHostName)
//枚举网络所有OPC服务器并写入ComboBox控件
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)
}
4.
连接OPC服务器
try
{
KepServer.Connect(remoteServerName,
remoteServerIP)
if
(KepServer.ServerState
==
(int)OPCServerState.OPCRunning)
{
tsslServerState.Text
=
"已连接到-"
+
KepServer.ServerName
+
"
"
}
else
{
//这里你可以根据返回的状态来自定义显示信息,请查看自动化接口API文档
tsslServerState.Text
=
"状态:"
+
KepServer.ServerState.ToString()
+
"
"
}
}
catch
(Exception
err)
{
MessageBox.Show("连接远程服务器出现错误:"
+
err.Message,
"提示信息",
MessageBoxButtons.OK,
MessageBoxIcon.Warning)
return
false
}
5.
创建组和列出OPC服务器中所有节点
//创建组
try
{
KepGroups
=
KepServer.OPCGroups
KepGroup
=
KepGroups.Add("OPCDOTNETGROUP")
SetGroupProperty()
KepGroup.DataChange
+=
new
DIOPCGroupEvent_DataChangeEventHandler(KepGroup_DataChange)
KepGroup.AsyncWriteComplete
+=
new
DIOPCGroupEvent_AsyncWriteCompleteEventHandler(KepGroup_AsyncWriteComplete)
KepItems
=
KepGroup.OPCItems
}
catch
(Exception
err)
{
MessageBox.Show("创建组出现错误:"+err.Message,"提示信息",MessageBoxButtons.OK,MessageBoxIcon.Warning)
return
false
}
//列出OPC服务器中所有节点
//展开分支
oPCBrowser.ShowBranches()
//展开叶子
oPCBrowser.ShowLeafs(true)
foreach
(object
turn
in
oPCBrowser)
{
listBox1.Items.Add(turn.ToString())
}
Regsvr32命令修复系统故障实例的activex知道的activex不注册是不被系统识别和使用的,一般安装程序会自动注册使用ActiveX控件,但如果你拿到的一个控件需要手动注册怎么办呢?如果注册表太麻烦了,在windows系统文件夹窗口的ActiveX注册和反注册工具自带的regsvr32.exe的程序。2000 Regsvr32.exe的WINNT \ system32文件夹中
WinXP系统Regsvr32.exe的窗口\ system32文件夹
REGSVR32用法:
“REGSVR32 / ] [/ N] [/ I(命令行)] DLLNAME。DLLNAME ActiveX控件文件名,建议在安装之前复制到系统文件夹。<BR /
参数具有以下涵义: BR />/ U - 反注册控制
/ s的 - 不管注册成功与否将显示提示框
/ C - 控制台输出
/ - 跳过控制选项安装的(注册)
/ n - 不注册控件,此选项必须一起使用/ i选项
执行命令:
1,在“开始” - “运行”,弹出运行对话框中,你可以用WIN + R热键,然后直接输入字段输入
2,在开始 - 运行“,输入cmd调出'命令提示符'窗口,然后运行regsvr32命令。
两个REGSVR32错误消息
使用Regsvr32.exe时,它会尝试加载该组件并调用它的DLLSelfRegister功能如果此尝试成功,Regsvr32.exe会显示一个指示成功的对话框。如果此尝试失败,Regsvr32.exe会返回一条错误消息,其中可能包括一个Win32错误代码。
以下列表描述的Regsvr32错误消息和可能的原因。
无法识别的标志:/ invalid_flag
键入的标志或开关组合无效(请参阅这篇文章的“Regsvr32.exe的用法”一节)
未指定DLL名称。
不包括在内。dll文件名(请参阅本文中的“Regsvr32.exe的用法一)
DLLNAME的加载,但中的DllRegisterServer,或DllUnregisterServer的入口点没有被发现。
DLLNAME是不是一个DLL或OCX文件。例如,键入regsvr32 wjview.exe就会生成该错误消息
例如,键入regsvr32 icwdial.dll后就会返回该错误消息,不能自行注册,因为icwdial.dll后就会文件,如果您怀疑内存损坏的Dllname版本,请尝试重新启动计算机,或重新提取该文件的原始版本,如果您运行的是Windows NT,您可能需要使用在Microsoft Windows NT Server 4.0的资源工具包杀或PVIEW工具的其他信息,请点击查看以下Microsoft知识库文章:197155如何终止孤立进程OleInitialize的失败(或失败OleUninitialize)。
Regsvr32必须先初始化COM库,然后才能调用所需的COM库函数并库初始化关闭
轻松修复IE浏览器
REGSVR32 Shdocvw.dll的 BR />REGSVR32 Oleaut32.dll的
REGSVR32 actxprxy.dll中
REGSVR32 Mshtml.dll中
REGSVR32 Urlmon.dll的
REGSVR32 BROWSEUI.DLL
作用:
1,在同时运行上面的命令不仅可以解决IE不能打开新窗口,用鼠标点击超链接没有任何反应
2,但也解决大大小小的其它IE问题,比如网络不完整,JAVA效果不出现,网页不自动跳转,打开某些网站时总提示“该页面无法显示”
解决Windows无法网上
REGSVR32 wupdinfo.dll
角色:
Windows漏洞很多的时间间隔的时间,你需要使用Windows Update升级程序在线升级升级,但“视窗更新“往往不能利用这段时间,我们可以使用regsvr32来解决这个问题。
三,防范网络脚本病毒的新战术
REGSVR32 / U scrrun.dll的
作用:
网络脚本病毒嵌在网页中,互联网在不知不觉中机器就会被感染了这种病毒,我相信,单纯使用杀毒软件并不能有效地防止这些脚本病毒,必须从病毒传播的机制。网络脚本病毒的复制,传播都离不开FSO对象(文件系统对象,文件系统对象),因此禁用FSO对象就能有效地控制脚本病毒的传播。
如果您需要使用FSO对象类型“REGSVR32 SCRRUN.DLL的”命令可以
四,卸载用Win XP自带的ZIP功能
REGSVR32 / U zipfldr.dll的 BR p>作用:
Win XP是强大的,但有些功能是人们经常“鸡肋”感,比如Win XP内置的ZIP功能和图片预览功能,不仅占用系统资源,是远不如强大的第三方软件。事实上,用的Regsvr32命令可以很容易地卸载这些功能。
五,不能修复的视图文件以缩略图的问题
2000:开始→运行,输入。 REGSVR32 thumbvw.dll
XP:开始→运行,输入regsvr32 shimgvw.dll中
六WMP播放器支持RM格式
很多朋友喜欢使用Windows Media Player播放器(WMP ),但它不支持RM格式,不安装其他播放软件吗?我有办法。
WIN XP为例,首先下载一个RM格式插件,解压缩后的两个文件夹:发布(用于Windows 9x)和Release的Unicode(用于Windows 2000/XP系统)发行统一文件夹RealMediaSplitter.ax文件复制到系统驱动器\ WINDOWS \ SYSTEM32 \目录下键入“regsvr32 RealMediaSplitter.ax”,在“开始→运行”,点击“确定”按钮。接着下载解码器,如安装的WMP播放RM格式的音频和视频文件就能真正替代。
七WMP9球员
一些音乐在线点歌需要使用媒体播放器的网页,和一些朋友明明安装了WMP9,但在线听音乐,只看到枯燥的WMP6播放器面板,想要漂亮的WMP9面板,当然没有问题。
常见问题的操作系统多数WIN 98,关闭IE浏览器“开始→运行”,键入“regsvr32 wmpdxm.dll”,您可以点击“OK”。
八解决打开系统功能反应REGSVR32 shdocvw.dll中
作用:
有时从“开始”菜单中,单击“XP系统的搜索功能,帮助和支持或管理工具,但没有反应,这是他们缺乏相关开放,只要我们注册Regsvr32的动态链接库文件,他们需要调用就行了
九,添加/删除程序不打开REGSVR32 APPWIZ.CPL的
REGSVR32 mshtml.dll中
REGSVR32的Jscript。 DLL
REGSVR32 MSI.DLL
REGSVR32“C:\ Program Files文件\共同文件\系统\ OLE DB \ oledb32.dll的”
REGSVR32“C:\ Program Files文件\共同文件\系统\ ADO \ MSADO15.DLL“
REGSVR32 mshtmled.dll
REGSVR32 / I SHDOCVW.DLL
REGSVR32 / I shell32.dll中
当你打开控制面板中的“添加/删除程序”,单击双击其图标没有任何反应,或者打开自动关闭,请尝试使用上面的命令可以解决的。
10 XP用户帐户,以发挥不开REGSVR32 nusrmgr.cpl
REGSVR32 mshtml.dll中
REGSVR32 JSCRIPT.DLL
REGSVR32 / I SHDOCVW.DLL
11,有新的战术防范网络脚本病毒
REGSVR32 / U scrrun.dll的禁用FSO对象
使用REGSVR32 SCRRUN.DLL
的FSO对象12。解决该问题的Windows无法在线升级REGSVR32 wupdinfo.dll
以下症状,我把它叫做IE的活动脚本漏洞,这两个命令来修复,但患者的症状,而不是问题的根源,我建议朋友遇到这个问题Microsoft Web站点安全更新的IE浏览器,打的bug修复。
REGSVR32 JSCRIPT.DLL
REGSVR32 VBSCRIPT.DLL
作用:
1,使用上面的方法修复IE浏览器(不配) ,可以是一个很好的解决方案,以查看某些页面不正常显示和功能不正常,如:
代码
b的一些验证
C不显示动态图像显示一些论坛帖子列表
D论坛快速跳转功能无用
E邮宝的论坛上,按Ctrl + Enter提交无反应
2,维修的空白窗口,如XP的'搜索'功能的搜索助理操作面板空白,系统还原空白页空白和用户帐户页面。 (维修把握度100%)
3,解决的Windows Media Player 9或以上版本打开提示“内部应用程序错误”出现。 (维修把握度100%)
维修赢得2000'添加/删除程序“打开空白。 (可修复把握度99%)
解决赢得2000 Web查看Program Files文件夹和Winnt文件夹,看不到任何文件,以及'控制面板'的图标跑到左去
>
解决网际快车网页上的上下文菜单中不能使用。
在网站上,点右键“下载链接”弹出菜单中,选择“删除软件下载”,会弹出FLASHGET的下载任务页面,如果你觉得这个功能没有任何反应,这可能是因为这个原因菜单,这被称为FlashGet的目录jc_link.htm文件,这个文件是用VB语言,所以它的作用是失去动态链接库VBSCRIPT.DLL的未注册和调用。
但是,这仅仅是运气的原因,望采纳
因为是软件冲突,造成opc端口配置失败,或者系统安装软件过多,启动操作系统是同时运行软件多,占用系统内存大,系统cpu运行超负荷,造成opc软件启动超时。建议卸载或禁用部分软件,从电脑资源管理器中查找与opc软件端口配置有冲突的软件,把它卸载或找到其他解决办法!
欢迎分享,转载请注明来源:夏雨云
评论列表(0条)