摘要:
分析简述 创建dump文件;通过 !address -summary 和 !eeheap -gc 判断是否为内存泄漏;通过!dumpheap -stat观察出问题的类型;通过!dumpheap -mt MT号 -min xxx 来索引该类型下占用较高的数据; 再通过!gcroot GC根来查看该根被 阅读全文
摘要:
1.新建ViewModel类,继承自BindableBase(在Prism.MVVM命名空间下) 2.需要实现View和ViewModel属性值改变的通知则只需,在声明属性的set中加入方法RaisePropertyChanged(); 3.需要添加Command,则声明方式为,其中Delegate 阅读全文
摘要:
1.VS下创建WPF项目,添加Nuget包:Prism.DryIoc 2.在app.xaml中引入名称空间prism,并将Application改为PrismApplication(注意格式为prism:PrismApplication) 3.在app.xaml.cs中,改为继承自PrismAppl 阅读全文
摘要:
1.SQLite官方下载地址:https://www.sqlite.org/download.html,下载完成后,将压缩包解压到同一文件夹下 2.CMD命令符切换到上面文件夹,运行sqlite3,显示SQLite版本即表示安装成功。 3.创建数据库:运行命令.open xx.db ,其中xx是数据 阅读全文
摘要:
在上一篇中已经简单尝试了从OPC中读取标签,这次我们进行标签的写入 标签写入主要分为同步和异步,同步的比较简单 //ServerHandle是标签句柄,value则是要写入的值 OPCList[ServerHandle].Write(value); 而对于异步 string value = tWri 阅读全文
摘要:
在C#中,BackgroundWorker控件允许在单独的专用线程上运行操作。 耗时的操作(如下载和数据库事务)在长时间运行时可能会导致用户界面(UI)似乎处于停止响应状态。如果需要能进行响应的用户界面,而且面临与这类操作相关的长时间延迟,则可以使用BackgroundWorker类方便地解决问题。 阅读全文
摘要:
在通过OPCAutomation我们先了解下这个类下的三个对象 1.OPCServer:创建OPC的连接 2.OPCBrowser:创建OPC浏览对象 3.OPCGroups:OPC通信组对象 4.OPCItem:单个代操作(读取的对象) 可以看下面这张结构图,方便理解几个对象之间的关系 具体的读取 阅读全文
摘要:
之前我们已经尝试了KEPServer连接PLC读取数据,并且还成功将读取到的数据写入到MYSQL,这 次分享下上层系统通过OPCAutomation来对KEPServer中的数据进行读写。 在这之前,我们需要在上层系统中首先添加对OPCDAAuto.dll的引用。 Win10之后OPCDAAuto. 阅读全文
摘要:
1.安装MySql OJDBC驱动,可在官网进行下载,请注意自己的版本号https://downloads.mysql.com/archives/c-odbc/,MySql的版本可通过cmd命令行,CD到MySql的安装目录,通过mysql --help进行查询 2.安装完成后,在控制面板-管理工具 阅读全文
摘要:
1.新建通道,通道类型选择BeckHoff TwinCat,其他后续都为默认。 2.在新建的通道下添加设备,在ID栏中输入AmsNetID(可以在TwinCat的Router中查看),在后续的下一步中需要注意红框处的选择 待创建完成后就可以在OPC Quick Client中查询到PLC中的标签数据 阅读全文