制作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();

}

取消

评论

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

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

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • LaTeX 中文段落中显示英文引号的方法

    LaTeX 中文段落中显示英文引号的方法在latex中显示英文引号的方法

    2022年6月25日
    32
  • Linux学习——浅谈读写锁的使用

    Linux学习——浅谈读写锁的使用一、读写锁是什么?读写锁其实还是一种锁,是给一段临界区代码加锁,但是此加锁是在进行写操作的时候才会互斥,而在进行读的时候是可以共享的进行访问临界区的。读写锁和互斥量(互斥锁)很类似,是另一种线程同步机制,但不属于POSIX标准,可以用来同步同一进程中的各个线程。当然如果一个读写锁存放在多个进程共享的某个内存区中,那么还可以用来进行进程间的同步,读写锁的使用规则:只要没有写模式下的加锁,任…

    2022年8月12日
    7
  • ffmpeg参数详解_ffmpeg个版本

    ffmpeg参数详解_ffmpeg个版本-c:v指定编码器默认值:mpeg4mpeg4编码器,编码速度快,清晰度不够,处理后的文件比较大libx264编码器,编码比较慢,清晰度高,处理后的文件比较小-preset编码速度默认值:medium当编码器指定为libx264时可以指定该参数,编码速度越慢,清晰度越高,处理后的文件大小相同可选值:ultrafast、superfast、veryfast、

    2026年1月23日
    8
  • git已经提交的文件回复忽略「建议收藏」

    git已经提交的文件回复忽略「建议收藏」将文件加入到忽略文件中使用命令,已提交的文件如何恢复忽略git rm –cached 文件git rm –cached -r 文件夹git rm –cached .push到远程

    2022年8月8日
    5
  • 免备案云服务器选香港好还是美国好

    免备案云服务器租用哪里的?免备案云服务器主要是指那些不受国内工信部约束管理的主机产品。也就是说,国内工信部管理的大陆地区云服务器产品需要备案,海外其他国家的主机是不用备案的,比较特殊的是中国香港主机、澳门和台湾空间产品,也是不用备案的。大家常用的免备案云服务器是香港和美国云服务器,这两地的技术发达,云服务器的性能完善,包含防攻击、数据备份、弹性伸缩、平台安全性保证,可支持软硬件在线升级等等。美国云服务器美国云服务中心拥有高级的安保措施,数据安全性和服务稳定性是世界一流标准。ip资源丰富,价格低廉,在

    2022年4月9日
    59
  • 的季节里,第京_第四个季节

    的季节里,第京_第四个季节京,柳叶翠青,槐花京,柳叶翠青,槐花馨香。在这个美好的季节里,第京,柳叶翠青,槐花馨香。在这个美好的季节里,第京,柳叶翠青,槐花馨香。在这个美好的季节里,第京,柳叶翠青,槐花馨香。在这个美好的季节里,第京,柳叶翠青,槐花馨香。在这个美好的季节里,第京,柳叶翠青,槐花馨香。在这个美好的季节里,第京,柳叶翠青,槐花馨香。在这个美好的季节里,第京,柳叶翠青,槐花馨香。在这个美好的季节里,第京,柳叶翠青,

    2022年10月4日
    4

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

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