制作opc服务器,力控服务器怎样做为OPC服务器,供其他OPC客户端程序访问

制作opc服务器,力控服务器怎样做为OPC服务器,供其他OPC客户端程序访问publicvoidListAll(Guidcatid,outOpcServers[]serverslist){serverslist=null;Dispose();Guidguid=newGuid(13486D51-4821-11D2-A494-3CB306C10000);Typetypeoflist=Type.GetTypeFromCLSID(guid);OPCL…

大家好,又见面了,我是你们的朋友全栈君。

public void ListAll(Guid catid, out OpcServers[] serverslist)

{

serverslist = null;

Dispose();

Guid guid = new Guid(13486D51-4821-11D2-A494-3CB306C10000);

Type typeoflist = Type.GetTypeFromCLSID(guid);

OPCListObj = Activator.CreateInstance(typeoflist);

ifList = (IOPCServerList)OPCListObj;

if (ifList == null)

Marshal.ThrowExceptionForHR(HRESULTS.E_ABORT);

ifList.EnumClassesOfCategories(1, ref catid, 0, ref catid, out EnumObj);

if (EnumObj == null)

Marshal.ThrowExceptionForHR(HRESULTS.E_ABORT);

ifEnum = (IEnumGUID)EnumObj;

if (ifEnum == null)

Marshal.ThrowExceptionForHR(HRESULTS.E_ABORT);

int maxcount = 300;

IntPtr ptrGuid = Marshal.AllocCoTaskMem(maxcount * 16);

int count = 0;

ifEnum.Next(maxcount, ptrGuid, out count);

if (count 1)

{ Marshal.FreeCoTaskMem(ptrGuid); return; }

serverslist = new OpcServers[count];

byte[] guidbin = new byte[16];

int runGuid = (int)ptrGuid;

for (int i = 0; i count; i++)

{

serverslist[i] = new OpcServers();

Marshal.Copy((IntPtr)runGuid, guidbin, 0, 16);

serverslist[i].ClsID = new Guid(guidbin);

ifList.GetClassDetails(ref serverslist[i].ClsID,

out serverslist[i].ProgID, out serverslist[i].ServerName);

runGuid += 16;

}

Marshal.FreeCoTaskMem(ptrGuid);

Dispose();

}

取消

评论

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/151317.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

  • 都能看懂的LIS(最长上升子序列)问题[通俗易懂]

    都能看懂的LIS(最长上升子序列)问题[通俗易懂]LIS问题介绍:首先来说一下什么是LIS问题:有一个长为n的数列a0,a1,……,a(n-1)。请求出这个序列中最长的上升子序列的长度。上升子序列指的是对于任意的i<j都满足ai<aj的子序列,该问题被称为最长上升子序列(LIS,LongestIncreasingSubsequence)的著名问题。举个栗子:给你一个序列为(1,5,2,6,9,1…

  • 2G到5G基站架构演进[通俗易懂]

    文章目录2G3G4G5G2G2G通信系统采用3级网络架构,即:BTS-BSC-核心网。2G核心网同时包含CS域和PS域。2G通信系统起初主要采用一体式基站架构。一体式基站架构如下图所示,基站的天线位于铁塔上,其余部分位于基站旁边的机房内。天线通过馈线与室内机房连接。一体式基站架构需要在每一个铁塔下面建立一个机房,建设成本和周期较长,也不方便网络架构的拓展。后来发展成为分布式基站架构。分布式基站架构将BTS分为RRU和BBU。其中RRU主要负责跟射频相关的模块,包括4大模块:中频模块、收发信机模块

  • 天将降大任于斯人也,必先苦其心志,劳其筋骨,饿其体肤,空乏其身,行拂乱其所为,所以动心忍性,增益其所不能

    天将降大任于斯人也,必先苦其心志,劳其筋骨,饿其体肤,空乏其身,行拂乱其所为,所以动心忍性,增益其所不能

  • 即时通讯聊天源码

    即时通讯聊天源码介绍:前端开发语言:VUE(安卓,IOS,WEB为一套前端代码)前端操作需要设置vue主程序的三个api接口发布h5打包上传服务器即可后台地址:域名/admin_loginTP伪静态,防跨域关掉网盘下载地址:http://kekewl.net/ShL1UQbsuts0图片:…

  • FEC原理及其实现[通俗易懂]

    FEC原理及其实现[通俗易懂]感谢原作者:http://blog.csdn.net/rootusers/article/details/49097257视频会议中通常使用的FEC/QOS技术,这方面的资料比较复杂和稀少,根据这么多年的工作经验,做一下分享。 在IP视频通话中丢包造成的影响多种多样。其中对视频质量的影响主要有:马赛克现象、局部变形(图像的某些区域不清晰)、图像模糊、屏幕频繁刷新或闪

  • jar包下载(全)

    jar包下载(全)转自:https://blog.csdn.net/meow_meow/article/details/78584696显示不出来请点击阅读更多作为初学者很多jar包不知道去哪里下载,给大家分享一个地址:这个网址是maven仓库的国内镜像地址:http://mvnrepository.com步骤图解:1.2.3….

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号