• 大小: 24.2MB
    文件类型: .rar
    金币: 2
    下载: 3 次
    发布日期: 2023-08-02
  • 语言: C#
  • 标签: c#  组态  PLC  

资源简介

1.简单的C#组态软件, 2.实现自画控件,BUTTON ,SET ,RST ,ON_OFF, INVERT , 3.实现,自定义协议

资源截图

代码片段和文件信息

using System;
using System.Collections.Generic;
using System.Data;
using System.Data.Common;
using System.Threading;
using FreeSCADA.Common;
using FreeSCADA.Interfaces;

namespace FreeSCADA.Archiver
{
public class ArchiverMain
{
ChannelsSettings channelSettings = new ChannelsSettings();
DatabaseSettings databaseSettings = new DatabaseSettings();
DbWriter dbWriter;
        DbReader dbReader;
Thread channelUpdaterThread;

#region Initialization and singleton implementation

static ArchiverMain instance;

public static void Initialize()
{
if (instance == null)
instance = new ArchiverMain();
}
        
public static void Deinitialize()
{
instance = null;
}

public static ArchiverMain Current
{
get
{
if (instance == null)
throw new System.NullReferenceException();

return instance;
}
}

ArchiverMain()
{
Env.Current.Project.ProjectLoaded += new System.EventHandler(OnProjectLoaded);
Env.Current.Project.ProjectClosed += new System.EventHandler(OnProjectClosed);

OnProjectLoaded(Env.Current.Project new System.EventArgs());

if (Env.Current.Mode == EnvironmentMode.Designer)
{
ICommandContext context = Env.Current.Commands.GetPredefinedContext(PredefinedContexts.Project);
Env.Current.Commands.AddCommand(context new PropertyCommand());
}
}

#endregion

void OnProjectClosed(object sender System.EventArgs e)
{
channelSettings.Clear();
}

void OnProjectLoaded(object sender System.EventArgs e)
{
databaseSettings.Load();
channelSettings.Load();
}

public ChannelsSettings ChannelsSettings
{
get
{
return channelSettings;
}
}

public DatabaseSettings DatabaseSettings
{
get
{
return databaseSettings;
}
}

public bool IsRunning
{
get { return channelUpdaterThread != null; }
}

private static void ChannelUpdaterThreadProc(object obj)
{
ArchiverMain self = (ArchiverMain)obj;

try
{
for (; ; )
{
//System.Console.WriteLine(“{0} ChannelUpdaterThreadProc: Start loop“ System.DateTime.Now);
foreach (Rule rule in self.channelSettings.Rules)
{
if (rule.Enable)
{
foreach (baseCondition cond in rule.Conditions)
cond.Process();

if (rule.Archive)
self.dbWriter.WriteChannels(rule.Channels);
}
}
Thread.Sleep(100);
}
}
catch (ThreadAbortException)
{
}

if (self.dbWriter != null)
self.dbWriter.Close();
}

public bool Start()
{
dbWriter = new DbWriter();
if (dbWriter.Open() == false)
return false;

channelUpdaterThread = new Thread(new ParameterizedThreadStart(ChannelUpdaterThreadProc));
channelUpdaterThread.Start(this);

            dbReader = new DbReader();
            if (dbReader.Open() == false)
                return false;

return IsRunn

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----

    .......   1822720  2010-10-28 00:52  1234\3rdParty\#SNMP\Browser.exe

    .......      6544  2010-10-28 00:52  1234\3rdParty\#SNMP\Browser.exe.config

    .......   1724416  2010-10-28 00:52  1234\3rdParty\#SNMP\Compiler.exe

    .......      4678  2010-10-28 00:52  1234\3rdParty\#SNMP\Compiler.exe.config

    .......     61440  2010-10-28 00:52  1234\3rdParty\#SNMP\Crad.Windows.Forms.Actions.dll

    .......   1985871  2010-10-28 00:38  1234\3rdParty\#SNMP\Help\Documentation.chm

    .......      1274  2010-10-28 00:38  1234\3rdParty\#SNMP\Help\Documentation.HxC

    .......   1390312  2010-10-28 00:38  1234\3rdParty\#SNMP\Help\Documentation.HxS

    .......       246  2010-10-28 00:38  1234\3rdParty\#SNMP\Help\Documentation.HxT

    .......       120  2010-10-28 00:38  1234\3rdParty\#SNMP\Help\Documentation_A.HxK

    .......       120  2010-10-28 00:38  1234\3rdParty\#SNMP\Help\Documentation_B.HxK

    .......       120  2010-10-28 00:38  1234\3rdParty\#SNMP\Help\Documentation_F.HxK

    .......       156  2010-10-28 00:38  1234\3rdParty\#SNMP\Help\Documentation_K.HxK

    .......       132  2010-10-28 00:38  1234\3rdParty\#SNMP\Help\Documentation_NamedURLIndex.HxK

    .......       120  2010-10-28 00:38  1234\3rdParty\#SNMP\Help\Documentation_S.HxK

    .......    190464  2010-10-28 00:38  1234\3rdParty\#SNMP\Help\H2Reg.exe

    .......      1600  2010-10-28 00:38  1234\3rdParty\#SNMP\Help\H2Reg.ini

    .......      5520  2010-10-28 00:38  1234\3rdParty\#SNMP\Help\H2Reg_Log.txt

    .......     76680  2010-10-28 00:52  1234\3rdParty\#SNMP\Microsoft.Practices.objectBuilder2.dll

    .......     52104  2010-10-28 00:52  1234\3rdParty\#SNMP\Microsoft.Practices.Unity.Configuration.dll

    .......     76680  2010-10-28 00:52  1234\3rdParty\#SNMP\Microsoft.Practices.Unity.dll

    .......        57  2010-10-28 00:52  1234\3rdParty\#SNMP\modules\index

    .......        14  2010-10-28 00:52  1234\3rdParty\#SNMP\modules\SNMPV2-CONF.module

    .......      5606  2010-10-28 00:52  1234\3rdParty\#SNMP\modules\SNMPV2-MIB.module

    .......      1119  2010-10-28 00:52  1234\3rdParty\#SNMP\modules\SNMPV2-SMI.module

    .......        14  2010-10-28 00:52  1234\3rdParty\#SNMP\modules\SNMPV2-TC.module

    .......       667  2010-10-28 00:52  1234\3rdParty\#SNMP\modules\SNMPV2-TM.module

    .......     90112  2010-10-28 00:52  1234\3rdParty\#SNMP\sharpsnmplib.cf35.dll

    .......    306688  2010-10-28 00:52  1234\3rdParty\#SNMP\sharpsnmplib.cf35.pdb

    .......     40960  2010-10-28 00:52  1234\3rdParty\#SNMP\SharpSnmpLib.Controls.dll

............此处省略1579个文件信息

评论

共有 条评论