提交:初始化
This commit is contained in:
commit
1feb3b60ee
Binary file not shown.
6
App.config
Normal file
6
App.config
Normal file
@ -0,0 +1,6 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<configuration>
|
||||||
|
<startup>
|
||||||
|
<supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.8"/>
|
||||||
|
</startup>
|
||||||
|
</configuration>
|
BIN
Empower3.ico
Normal file
BIN
Empower3.ico
Normal file
Binary file not shown.
After Width: | Height: | Size: 13 KiB |
25
Instrument Control Example.sln
Normal file
25
Instrument Control Example.sln
Normal file
@ -0,0 +1,25 @@
|
|||||||
|
|
||||||
|
Microsoft Visual Studio Solution File, Format Version 12.00
|
||||||
|
# Visual Studio Version 16
|
||||||
|
VisualStudioVersion = 16.0.29609.76
|
||||||
|
MinimumVisualStudioVersion = 10.0.40219.1
|
||||||
|
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Instrument Control", "Instrument Control.csproj", "{BFBFA096-A2BE-460A-BEB4-037A20FBA03C}"
|
||||||
|
EndProject
|
||||||
|
Global
|
||||||
|
GlobalSection(SolutionConfigurationPlatforms) = preSolution
|
||||||
|
Debug|Any CPU = Debug|Any CPU
|
||||||
|
Release|Any CPU = Release|Any CPU
|
||||||
|
EndGlobalSection
|
||||||
|
GlobalSection(ProjectConfigurationPlatforms) = postSolution
|
||||||
|
{BFBFA096-A2BE-460A-BEB4-037A20FBA03C}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||||
|
{BFBFA096-A2BE-460A-BEB4-037A20FBA03C}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||||
|
{BFBFA096-A2BE-460A-BEB4-037A20FBA03C}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||||
|
{BFBFA096-A2BE-460A-BEB4-037A20FBA03C}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||||
|
EndGlobalSection
|
||||||
|
GlobalSection(SolutionProperties) = preSolution
|
||||||
|
HideSolutionNode = FALSE
|
||||||
|
EndGlobalSection
|
||||||
|
GlobalSection(ExtensibilityGlobals) = postSolution
|
||||||
|
SolutionGuid = {1748282C-4D93-4608-A089-5DC2662DF59B}
|
||||||
|
EndGlobalSection
|
||||||
|
EndGlobal
|
102
Instrument Control.csproj
Normal file
102
Instrument Control.csproj
Normal file
@ -0,0 +1,102 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<Project ToolsVersion="12.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||||
|
<Import Project="$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props" Condition="Exists('$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props')" />
|
||||||
|
<PropertyGroup>
|
||||||
|
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
|
||||||
|
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
|
||||||
|
<ProjectGuid>{BFBFA096-A2BE-460A-BEB4-037A20FBA03C}</ProjectGuid>
|
||||||
|
<OutputType>WinExe</OutputType>
|
||||||
|
<AppDesignerFolder>Properties</AppDesignerFolder>
|
||||||
|
<RootNamespace>Waters.Empower.InstrumentControl.Example</RootNamespace>
|
||||||
|
<AssemblyName>InstrumentControlExample</AssemblyName>
|
||||||
|
<TargetFrameworkVersion>v4.8</TargetFrameworkVersion>
|
||||||
|
<FileAlignment>512</FileAlignment>
|
||||||
|
<TargetFrameworkProfile />
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
|
||||||
|
<PlatformTarget>AnyCPU</PlatformTarget>
|
||||||
|
<DebugSymbols>true</DebugSymbols>
|
||||||
|
<DebugType>full</DebugType>
|
||||||
|
<Optimize>false</Optimize>
|
||||||
|
<OutputPath>bin\Debug\</OutputPath>
|
||||||
|
<DefineConstants>DEBUG;TRACE</DefineConstants>
|
||||||
|
<ErrorReport>prompt</ErrorReport>
|
||||||
|
<WarningLevel>4</WarningLevel>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
|
||||||
|
<PlatformTarget>AnyCPU</PlatformTarget>
|
||||||
|
<DebugType>pdbonly</DebugType>
|
||||||
|
<Optimize>true</Optimize>
|
||||||
|
<OutputPath>bin\Release\</OutputPath>
|
||||||
|
<DefineConstants>TRACE</DefineConstants>
|
||||||
|
<ErrorReport>prompt</ErrorReport>
|
||||||
|
<WarningLevel>4</WarningLevel>
|
||||||
|
</PropertyGroup>
|
||||||
|
<ItemGroup>
|
||||||
|
<Reference Include="System" />
|
||||||
|
<Reference Include="System.Core" />
|
||||||
|
<Reference Include="System.ServiceProcess" />
|
||||||
|
<Reference Include="System.Xml.Linq" />
|
||||||
|
<Reference Include="System.Data.DataSetExtensions" />
|
||||||
|
<Reference Include="Microsoft.CSharp" />
|
||||||
|
<Reference Include="System.Data" />
|
||||||
|
<Reference Include="System.Deployment" />
|
||||||
|
<Reference Include="System.Drawing" />
|
||||||
|
<Reference Include="System.Windows.Forms" />
|
||||||
|
<Reference Include="System.Xml" />
|
||||||
|
</ItemGroup>
|
||||||
|
<ItemGroup>
|
||||||
|
<Compile Include="frmMain.cs">
|
||||||
|
<SubType>Form</SubType>
|
||||||
|
</Compile>
|
||||||
|
<Compile Include="frmMain.designer.cs">
|
||||||
|
<DependentUpon>frmMain.cs</DependentUpon>
|
||||||
|
</Compile>
|
||||||
|
<Compile Include="Program.cs" />
|
||||||
|
<Compile Include="Properties\AssemblyInfo.cs" />
|
||||||
|
<EmbeddedResource Include="frmMain.resx">
|
||||||
|
<DependentUpon>frmMain.cs</DependentUpon>
|
||||||
|
</EmbeddedResource>
|
||||||
|
<EmbeddedResource Include="Properties\Resources.resx">
|
||||||
|
<Generator>ResXFileCodeGenerator</Generator>
|
||||||
|
<LastGenOutput>Resources.Designer.cs</LastGenOutput>
|
||||||
|
<SubType>Designer</SubType>
|
||||||
|
</EmbeddedResource>
|
||||||
|
<Compile Include="Properties\Resources.Designer.cs">
|
||||||
|
<AutoGen>True</AutoGen>
|
||||||
|
<DependentUpon>Resources.resx</DependentUpon>
|
||||||
|
<DesignTime>True</DesignTime>
|
||||||
|
</Compile>
|
||||||
|
<None Include="Properties\Settings.settings">
|
||||||
|
<Generator>SettingsSingleFileGenerator</Generator>
|
||||||
|
<LastGenOutput>Settings.Designer.cs</LastGenOutput>
|
||||||
|
</None>
|
||||||
|
<Compile Include="Properties\Settings.Designer.cs">
|
||||||
|
<AutoGen>True</AutoGen>
|
||||||
|
<DependentUpon>Settings.settings</DependentUpon>
|
||||||
|
<DesignTimeSharedInput>True</DesignTimeSharedInput>
|
||||||
|
</Compile>
|
||||||
|
</ItemGroup>
|
||||||
|
<ItemGroup>
|
||||||
|
<None Include="App.config" />
|
||||||
|
</ItemGroup>
|
||||||
|
<ItemGroup>
|
||||||
|
<COMReference Include="MillenniumToolkit">
|
||||||
|
<Guid>{984EF3B1-C6E4-11D0-8713-0020AFEE2C2A}</Guid>
|
||||||
|
<VersionMajor>1</VersionMajor>
|
||||||
|
<VersionMinor>15</VersionMinor>
|
||||||
|
<Lcid>0</Lcid>
|
||||||
|
<WrapperTool>tlbimp</WrapperTool>
|
||||||
|
<Isolated>False</Isolated>
|
||||||
|
<EmbedInteropTypes>True</EmbedInteropTypes>
|
||||||
|
</COMReference>
|
||||||
|
</ItemGroup>
|
||||||
|
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
|
||||||
|
<!-- To modify your build process, add your task inside one of the targets below and uncomment it.
|
||||||
|
Other similar extension points exist, see Microsoft.Common.targets.
|
||||||
|
<Target Name="BeforeBuild">
|
||||||
|
</Target>
|
||||||
|
<Target Name="AfterBuild">
|
||||||
|
</Target>
|
||||||
|
-->
|
||||||
|
</Project>
|
19
Program.cs
Normal file
19
Program.cs
Normal file
@ -0,0 +1,19 @@
|
|||||||
|
using System;
|
||||||
|
using System.Windows.Forms;
|
||||||
|
|
||||||
|
namespace Waters.Empower.InstrumentControl.Example
|
||||||
|
{
|
||||||
|
static class Program
|
||||||
|
{
|
||||||
|
/// <summary>
|
||||||
|
/// The main entry point for the application.
|
||||||
|
/// </summary>
|
||||||
|
[STAThread]
|
||||||
|
static void Main()
|
||||||
|
{
|
||||||
|
Application.EnableVisualStyles();
|
||||||
|
Application.SetCompatibleTextRenderingDefault(false);
|
||||||
|
Application.Run(new FrmMain());
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
36
Properties/AssemblyInfo.cs
Normal file
36
Properties/AssemblyInfo.cs
Normal file
@ -0,0 +1,36 @@
|
|||||||
|
using System.Reflection;
|
||||||
|
using System.Runtime.CompilerServices;
|
||||||
|
using System.Runtime.InteropServices;
|
||||||
|
|
||||||
|
// General Information about an assembly is controlled through the following
|
||||||
|
// set of attributes. Change these attribute values to modify the information
|
||||||
|
// associated with an assembly.
|
||||||
|
[assembly: AssemblyTitle("Instrument Control Example")]
|
||||||
|
[assembly: AssemblyDescription("")]
|
||||||
|
[assembly: AssemblyConfiguration("")]
|
||||||
|
[assembly: AssemblyCompany("Waters Corporation")]
|
||||||
|
[assembly: AssemblyProduct("Empower Tooolkit Example Code")]
|
||||||
|
[assembly: AssemblyCopyright("Copyright ©2020")]
|
||||||
|
[assembly: AssemblyTrademark("")]
|
||||||
|
[assembly: AssemblyCulture("")]
|
||||||
|
|
||||||
|
// Setting ComVisible to false makes the types in this assembly not visible
|
||||||
|
// to COM components. If you need to access a type in this assembly from
|
||||||
|
// COM, set the ComVisible attribute to true on that type.
|
||||||
|
[assembly: ComVisible(false)]
|
||||||
|
|
||||||
|
// The following GUID is for the ID of the typelib if this project is exposed to COM
|
||||||
|
[assembly: Guid("1e453e70-f33b-4725-987a-268ff82ecfdc")]
|
||||||
|
|
||||||
|
// Version information for an assembly consists of the following four values:
|
||||||
|
//
|
||||||
|
// Major Version
|
||||||
|
// Minor Version
|
||||||
|
// Build Number
|
||||||
|
// Revision
|
||||||
|
//
|
||||||
|
// You can specify all the values or you can default the Build and Revision Numbers
|
||||||
|
// by using the '*' as shown below:
|
||||||
|
// [assembly: AssemblyVersion("1.0.*")]
|
||||||
|
[assembly: AssemblyVersion("1.0.0.0")]
|
||||||
|
[assembly: AssemblyFileVersion("1.0.0.0")]
|
63
Properties/Resources.Designer.cs
generated
Normal file
63
Properties/Resources.Designer.cs
generated
Normal file
@ -0,0 +1,63 @@
|
|||||||
|
//------------------------------------------------------------------------------
|
||||||
|
// <auto-generated>
|
||||||
|
// 此代码由工具生成。
|
||||||
|
// 运行时版本:4.0.30319.42000
|
||||||
|
//
|
||||||
|
// 对此文件的更改可能会导致不正确的行为,并且如果
|
||||||
|
// 重新生成代码,这些更改将会丢失。
|
||||||
|
// </auto-generated>
|
||||||
|
//------------------------------------------------------------------------------
|
||||||
|
|
||||||
|
namespace Waters.Empower.InstrumentControl.Example.Properties {
|
||||||
|
using System;
|
||||||
|
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// 一个强类型的资源类,用于查找本地化的字符串等。
|
||||||
|
/// </summary>
|
||||||
|
// 此类是由 StronglyTypedResourceBuilder
|
||||||
|
// 类通过类似于 ResGen 或 Visual Studio 的工具自动生成的。
|
||||||
|
// 若要添加或移除成员,请编辑 .ResX 文件,然后重新运行 ResGen
|
||||||
|
// (以 /str 作为命令选项),或重新生成 VS 项目。
|
||||||
|
[global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Resources.Tools.StronglyTypedResourceBuilder", "17.0.0.0")]
|
||||||
|
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
|
||||||
|
[global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
|
||||||
|
internal class Resources {
|
||||||
|
|
||||||
|
private static global::System.Resources.ResourceManager resourceMan;
|
||||||
|
|
||||||
|
private static global::System.Globalization.CultureInfo resourceCulture;
|
||||||
|
|
||||||
|
[global::System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1811:AvoidUncalledPrivateCode")]
|
||||||
|
internal Resources() {
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// 返回此类使用的缓存的 ResourceManager 实例。
|
||||||
|
/// </summary>
|
||||||
|
[global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)]
|
||||||
|
internal static global::System.Resources.ResourceManager ResourceManager {
|
||||||
|
get {
|
||||||
|
if (object.ReferenceEquals(resourceMan, null)) {
|
||||||
|
global::System.Resources.ResourceManager temp = new global::System.Resources.ResourceManager("Waters.Empower.InstrumentControl.Example.Properties.Resources", typeof(Resources).Assembly);
|
||||||
|
resourceMan = temp;
|
||||||
|
}
|
||||||
|
return resourceMan;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// 重写当前线程的 CurrentUICulture 属性,对
|
||||||
|
/// 使用此强类型资源类的所有资源查找执行重写。
|
||||||
|
/// </summary>
|
||||||
|
[global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)]
|
||||||
|
internal static global::System.Globalization.CultureInfo Culture {
|
||||||
|
get {
|
||||||
|
return resourceCulture;
|
||||||
|
}
|
||||||
|
set {
|
||||||
|
resourceCulture = value;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
117
Properties/Resources.resx
Normal file
117
Properties/Resources.resx
Normal file
@ -0,0 +1,117 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<root>
|
||||||
|
<!--
|
||||||
|
Microsoft ResX Schema
|
||||||
|
|
||||||
|
Version 2.0
|
||||||
|
|
||||||
|
The primary goals of this format is to allow a simple XML format
|
||||||
|
that is mostly human readable. The generation and parsing of the
|
||||||
|
various data types are done through the TypeConverter classes
|
||||||
|
associated with the data types.
|
||||||
|
|
||||||
|
Example:
|
||||||
|
|
||||||
|
... ado.net/XML headers & schema ...
|
||||||
|
<resheader name="resmimetype">text/microsoft-resx</resheader>
|
||||||
|
<resheader name="version">2.0</resheader>
|
||||||
|
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
|
||||||
|
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
|
||||||
|
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
|
||||||
|
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
|
||||||
|
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
|
||||||
|
<value>[base64 mime encoded serialized .NET Framework object]</value>
|
||||||
|
</data>
|
||||||
|
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||||
|
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
|
||||||
|
<comment>This is a comment</comment>
|
||||||
|
</data>
|
||||||
|
|
||||||
|
There are any number of "resheader" rows that contain simple
|
||||||
|
name/value pairs.
|
||||||
|
|
||||||
|
Each data row contains a name, and value. The row also contains a
|
||||||
|
type or mimetype. Type corresponds to a .NET class that support
|
||||||
|
text/value conversion through the TypeConverter architecture.
|
||||||
|
Classes that don't support this are serialized and stored with the
|
||||||
|
mimetype set.
|
||||||
|
|
||||||
|
The mimetype is used for serialized objects, and tells the
|
||||||
|
ResXResourceReader how to depersist the object. This is currently not
|
||||||
|
extensible. For a given mimetype the value must be set accordingly:
|
||||||
|
|
||||||
|
Note - application/x-microsoft.net.object.binary.base64 is the format
|
||||||
|
that the ResXResourceWriter will generate, however the reader can
|
||||||
|
read any of the formats listed below.
|
||||||
|
|
||||||
|
mimetype: application/x-microsoft.net.object.binary.base64
|
||||||
|
value : The object must be serialized with
|
||||||
|
: System.Serialization.Formatters.Binary.BinaryFormatter
|
||||||
|
: and then encoded with base64 encoding.
|
||||||
|
|
||||||
|
mimetype: application/x-microsoft.net.object.soap.base64
|
||||||
|
value : The object must be serialized with
|
||||||
|
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
|
||||||
|
: and then encoded with base64 encoding.
|
||||||
|
|
||||||
|
mimetype: application/x-microsoft.net.object.bytearray.base64
|
||||||
|
value : The object must be serialized into a byte array
|
||||||
|
: using a System.ComponentModel.TypeConverter
|
||||||
|
: and then encoded with base64 encoding.
|
||||||
|
-->
|
||||||
|
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
|
||||||
|
<xsd:element name="root" msdata:IsDataSet="true">
|
||||||
|
<xsd:complexType>
|
||||||
|
<xsd:choice maxOccurs="unbounded">
|
||||||
|
<xsd:element name="metadata">
|
||||||
|
<xsd:complexType>
|
||||||
|
<xsd:sequence>
|
||||||
|
<xsd:element name="value" type="xsd:string" minOccurs="0" />
|
||||||
|
</xsd:sequence>
|
||||||
|
<xsd:attribute name="name" type="xsd:string" />
|
||||||
|
<xsd:attribute name="type" type="xsd:string" />
|
||||||
|
<xsd:attribute name="mimetype" type="xsd:string" />
|
||||||
|
</xsd:complexType>
|
||||||
|
</xsd:element>
|
||||||
|
<xsd:element name="assembly">
|
||||||
|
<xsd:complexType>
|
||||||
|
<xsd:attribute name="alias" type="xsd:string" />
|
||||||
|
<xsd:attribute name="name" type="xsd:string" />
|
||||||
|
</xsd:complexType>
|
||||||
|
</xsd:element>
|
||||||
|
<xsd:element name="data">
|
||||||
|
<xsd:complexType>
|
||||||
|
<xsd:sequence>
|
||||||
|
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
|
||||||
|
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
|
||||||
|
</xsd:sequence>
|
||||||
|
<xsd:attribute name="name" type="xsd:string" msdata:Ordinal="1" />
|
||||||
|
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
|
||||||
|
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
|
||||||
|
</xsd:complexType>
|
||||||
|
</xsd:element>
|
||||||
|
<xsd:element name="resheader">
|
||||||
|
<xsd:complexType>
|
||||||
|
<xsd:sequence>
|
||||||
|
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
|
||||||
|
</xsd:sequence>
|
||||||
|
<xsd:attribute name="name" type="xsd:string" use="required" />
|
||||||
|
</xsd:complexType>
|
||||||
|
</xsd:element>
|
||||||
|
</xsd:choice>
|
||||||
|
</xsd:complexType>
|
||||||
|
</xsd:element>
|
||||||
|
</xsd:schema>
|
||||||
|
<resheader name="resmimetype">
|
||||||
|
<value>text/microsoft-resx</value>
|
||||||
|
</resheader>
|
||||||
|
<resheader name="version">
|
||||||
|
<value>2.0</value>
|
||||||
|
</resheader>
|
||||||
|
<resheader name="reader">
|
||||||
|
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||||
|
</resheader>
|
||||||
|
<resheader name="writer">
|
||||||
|
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||||
|
</resheader>
|
||||||
|
</root>
|
26
Properties/Settings.Designer.cs
generated
Normal file
26
Properties/Settings.Designer.cs
generated
Normal file
@ -0,0 +1,26 @@
|
|||||||
|
//------------------------------------------------------------------------------
|
||||||
|
// <auto-generated>
|
||||||
|
// 此代码由工具生成。
|
||||||
|
// 运行时版本:4.0.30319.42000
|
||||||
|
//
|
||||||
|
// 对此文件的更改可能会导致不正确的行为,并且如果
|
||||||
|
// 重新生成代码,这些更改将会丢失。
|
||||||
|
// </auto-generated>
|
||||||
|
//------------------------------------------------------------------------------
|
||||||
|
|
||||||
|
namespace Waters.Empower.InstrumentControl.Example.Properties {
|
||||||
|
|
||||||
|
|
||||||
|
[global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
|
||||||
|
[global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.Editors.SettingsDesigner.SettingsSingleFileGenerator", "17.2.0.0")]
|
||||||
|
internal sealed partial class Settings : global::System.Configuration.ApplicationSettingsBase {
|
||||||
|
|
||||||
|
private static Settings defaultInstance = ((Settings)(global::System.Configuration.ApplicationSettingsBase.Synchronized(new Settings())));
|
||||||
|
|
||||||
|
public static Settings Default {
|
||||||
|
get {
|
||||||
|
return defaultInstance;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
7
Properties/Settings.settings
Normal file
7
Properties/Settings.settings
Normal file
@ -0,0 +1,7 @@
|
|||||||
|
<?xml version='1.0' encoding='utf-8'?>
|
||||||
|
<SettingsFile xmlns="http://schemas.microsoft.com/VisualStudio/2004/01/settings" CurrentProfile="(Default)">
|
||||||
|
<Profiles>
|
||||||
|
<Profile Name="(Default)" />
|
||||||
|
</Profiles>
|
||||||
|
<Settings />
|
||||||
|
</SettingsFile>
|
475
frmMain.cs
Normal file
475
frmMain.cs
Normal file
@ -0,0 +1,475 @@
|
|||||||
|
using MillenniumToolkit;
|
||||||
|
using System;
|
||||||
|
using System.Windows.Forms;
|
||||||
|
using System.Threading;
|
||||||
|
|
||||||
|
namespace Waters.Empower.InstrumentControl.Example
|
||||||
|
{
|
||||||
|
public partial class FrmMain
|
||||||
|
{
|
||||||
|
private Project _project = new Project();
|
||||||
|
|
||||||
|
private Instrument _instrument;
|
||||||
|
|
||||||
|
public FrmMain()
|
||||||
|
{
|
||||||
|
InitializeComponent();
|
||||||
|
}
|
||||||
|
|
||||||
|
public void FrmMain_Load(System.Object sender, System.EventArgs e)
|
||||||
|
{
|
||||||
|
// TODO values are hard coded ....
|
||||||
|
string username = "system";
|
||||||
|
string pswd = "manager";
|
||||||
|
string project = "Defaults";
|
||||||
|
string db = "empower";
|
||||||
|
|
||||||
|
// Perform the login.
|
||||||
|
try
|
||||||
|
{
|
||||||
|
LogIntoToolkit(username, pswd, db, project);
|
||||||
|
MessageBox.Show("Login Complete", this.Text, MessageBoxButtons.OK, MessageBoxIcon.Information);
|
||||||
|
|
||||||
|
// Info can be posted to the Empower message center also
|
||||||
|
_project.MessageCenter($"{this.Text} Login Complete");
|
||||||
|
|
||||||
|
_instrument = new Instrument();
|
||||||
|
LoadSystemsForDisplay();
|
||||||
|
LoadNodesForDisplay();
|
||||||
|
LoadSampleSetMethodsForDisplay();
|
||||||
|
}
|
||||||
|
catch (System.Runtime.InteropServices.COMException ex)
|
||||||
|
{
|
||||||
|
MessageBox.Show($"Error: {_project.TkErrorDescription(ex.ErrorCode)}");
|
||||||
|
}
|
||||||
|
catch (Exception ex)
|
||||||
|
{
|
||||||
|
MessageBox.Show(ex.Message);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
private void FrmMain_FormClosed(object sender, FormClosedEventArgs e)
|
||||||
|
{
|
||||||
|
if (_instrument != null)
|
||||||
|
{
|
||||||
|
// when the form closes disconnect from the instrument
|
||||||
|
_instrument.Disconnect();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Log into the Empower Toolkit
|
||||||
|
/// </summary>
|
||||||
|
/// <param name="username">Empower username</param>
|
||||||
|
/// <param name="pswd">Empower password</param>
|
||||||
|
/// <param name="database">Empower database</param>
|
||||||
|
/// <param name="project">Empower project</param>
|
||||||
|
private void LogIntoToolkit(string username, string pswd, string database, string project)
|
||||||
|
{
|
||||||
|
_project = new Project();
|
||||||
|
_project.Login(database, project, username, pswd);
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Loads the Systems ComboBox
|
||||||
|
/// </summary>
|
||||||
|
private void LoadSystemsForDisplay()
|
||||||
|
{
|
||||||
|
cbSystem.Items.Clear();
|
||||||
|
|
||||||
|
object obj = _instrument.Systems;
|
||||||
|
if (obj is System.DBNull)
|
||||||
|
{
|
||||||
|
MessageBox.Show("There are no systems available", this.Text, MessageBoxButtons.OK, MessageBoxIcon.Warning);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
string[] systems = (string[])obj;
|
||||||
|
cbSystem.Items.AddRange(systems);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Load the Nodes ComboBox
|
||||||
|
/// </summary>
|
||||||
|
private void LoadNodesForDisplay()
|
||||||
|
{
|
||||||
|
cbNode.Items.Clear();
|
||||||
|
|
||||||
|
// Obtain the available nodes/acq servers
|
||||||
|
object obj = _instrument.AcqServers;
|
||||||
|
if (obj is System.DBNull)
|
||||||
|
{
|
||||||
|
MessageBox.Show("There are no nodes available", this.Text, MessageBoxButtons.OK, MessageBoxIcon.Warning);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
string[] nodes = (string[])obj;
|
||||||
|
cbNode.Items.AddRange(nodes);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Loads the sample set methods ComboBox
|
||||||
|
/// </summary>
|
||||||
|
private void LoadSampleSetMethodsForDisplay()
|
||||||
|
{
|
||||||
|
cbSampleSetMethod.Items.Clear();
|
||||||
|
|
||||||
|
SampleSetMethod ssm = new SampleSetMethod();
|
||||||
|
|
||||||
|
object obj = ssm.SampleSetMethodNames;
|
||||||
|
if (obj is System.DBNull)
|
||||||
|
{
|
||||||
|
MessageBox.Show("There are no sample set methods available", this.Text, MessageBoxButtons.OK, MessageBoxIcon.Warning);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
string[] nodes = (string[])obj;
|
||||||
|
cbSampleSetMethod.Items.AddRange(nodes);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Connect to the selected node and system
|
||||||
|
/// </summary>
|
||||||
|
/// <param name="sender"></param>
|
||||||
|
/// <param name="e"></param>
|
||||||
|
public void BtnConnect_Click(object sender, EventArgs e)
|
||||||
|
{
|
||||||
|
try
|
||||||
|
{
|
||||||
|
string nodeName = (string)cbNode.SelectedItem;
|
||||||
|
string systemName = (string)cbSystem.SelectedItem;
|
||||||
|
|
||||||
|
_instrument.Connect(nodeName, systemName);
|
||||||
|
|
||||||
|
// while the connectionstatus says the connection is not 'Done' ...
|
||||||
|
while (_instrument.ConnectionStatus.Done == false)
|
||||||
|
{
|
||||||
|
// Sleep for 1 second
|
||||||
|
Thread.Sleep(1000);
|
||||||
|
}
|
||||||
|
|
||||||
|
// Declare and obtain a copy of the connectstatus object.
|
||||||
|
ConnectionStatus connectionStatus = _instrument.ConnectionStatus;
|
||||||
|
|
||||||
|
// If the connection status text is either
|
||||||
|
// "Successfully connected to instrument server"
|
||||||
|
// OR an empty string
|
||||||
|
// Then call connection succeeded, otherwise show the text to the user.
|
||||||
|
if (connectionStatus.Text.Equals("Successfully connected to instrument server") || connectionStatus.Text.Length == 0)
|
||||||
|
{
|
||||||
|
ConnectionSucceeded();
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
MessageBox.Show($"Instrument connection failed with error : {connectionStatus.Text}", this.Text, MessageBoxButtons.OK, MessageBoxIcon.Error);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
catch (System.Runtime.InteropServices.COMException ex)
|
||||||
|
{
|
||||||
|
MessageBox.Show($"Error: {_project.TkErrorDescription(ex.ErrorCode)}", this.Text, MessageBoxButtons.OK, MessageBoxIcon.Error);
|
||||||
|
}
|
||||||
|
catch (Exception ex)
|
||||||
|
{
|
||||||
|
MessageBox.Show(ex.Message, this.Text, MessageBoxButtons.OK, MessageBoxIcon.Error);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private void ConnectionSucceeded()
|
||||||
|
{
|
||||||
|
RefreshInstrumentStatusInformation();
|
||||||
|
}
|
||||||
|
|
||||||
|
private void RefreshInstrumentStatusInformation()
|
||||||
|
{
|
||||||
|
lbStatusInformation.Items.Clear();
|
||||||
|
|
||||||
|
// Note casting should not need to be done, but there is an error in the IDL that means the return type is incorrect
|
||||||
|
InstrumentStatus instrumentStatus = (InstrumentStatus) _instrument.Status;
|
||||||
|
|
||||||
|
// Add each piece of instrument status to the list box, replace the empty string with the correct field value
|
||||||
|
// for all of the fields below
|
||||||
|
string instrumentState = string.Format("State : {0}", instrumentStatus.SystemStateDescription);
|
||||||
|
lbStatusInformation.Items.Add(instrumentState);
|
||||||
|
|
||||||
|
string systemState = string.Format("SystemState : {0}", instrumentStatus.SystemState);
|
||||||
|
lbStatusInformation.Items.Add(systemState);
|
||||||
|
|
||||||
|
string sampleSetLineNumber = string.Format("SampleSetLineNumber : {0}", instrumentStatus.SampleSetLineNumber);
|
||||||
|
lbStatusInformation.Items.Add(sampleSetLineNumber);
|
||||||
|
|
||||||
|
string vial = string.Format("Vial : {0}", instrumentStatus.Vial);
|
||||||
|
lbStatusInformation.Items.Add(vial);
|
||||||
|
|
||||||
|
string injection = string.Format("Injection : {0}", instrumentStatus.Injection);
|
||||||
|
lbStatusInformation.Items.Add(injection);
|
||||||
|
|
||||||
|
string runTime = string.Format("Run Time : {0}", instrumentStatus.RunTime);
|
||||||
|
lbStatusInformation.Items.Add(runTime);
|
||||||
|
|
||||||
|
string totalInjectionTime = string.Format("totalInjectionTime : {0}", instrumentStatus.TotalInjectionTime);
|
||||||
|
lbStatusInformation.Items.Add(totalInjectionTime);
|
||||||
|
|
||||||
|
string sampleSetMethodName = string.Format("SampleSetMethodName : {0}", instrumentStatus.SampleSetMethodName);
|
||||||
|
lbStatusInformation.Items.Add(sampleSetMethodName);
|
||||||
|
|
||||||
|
string sampleSetMethodID = string.Format("sampleSetMethodID : {0}", instrumentStatus.SampleSetMethodID);
|
||||||
|
lbStatusInformation.Items.Add(sampleSetMethodID);
|
||||||
|
|
||||||
|
string InstrumentMethodName = string.Format("InstrumentMethodName : {0}", instrumentStatus.InstrumentMethodName);
|
||||||
|
lbStatusInformation.Items.Add(InstrumentMethodName);
|
||||||
|
|
||||||
|
string sampleSetName = string.Format("Sample Set Name : {0}", instrumentStatus.SampleSetMethodName);
|
||||||
|
lbStatusInformation.Items.Add(sampleSetName);
|
||||||
|
|
||||||
|
string methodSetID = string.Format("Method Set ID : {0}", instrumentStatus.MethodSetID);
|
||||||
|
lbStatusInformation.Items.Add(methodSetID);
|
||||||
|
|
||||||
|
string methodSetName = string.Format("Method Set ID : {0}", instrumentStatus.MethodSetName);
|
||||||
|
|
||||||
|
lbStatusInformation.Items.Add(methodSetName);
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Starts a run
|
||||||
|
/// </summary>
|
||||||
|
public void BtnStartRun_Click(object sender, EventArgs e)
|
||||||
|
{
|
||||||
|
try
|
||||||
|
{
|
||||||
|
string sampleSetMethodName = (string)cbSampleSetMethod.SelectedItem;
|
||||||
|
string newName = txtNewSSMName.Text;
|
||||||
|
|
||||||
|
// Start the run with the selected instrument method and output sample set method name
|
||||||
|
_instrument.Run(sampleSetMethodName, newName);
|
||||||
|
|
||||||
|
RefreshInstrumentStatusInformation();
|
||||||
|
}
|
||||||
|
catch (System.Runtime.InteropServices.COMException ex)
|
||||||
|
{
|
||||||
|
MessageBox.Show($"Error: {_project.TkErrorDescription(ex.ErrorCode)}", this.Text, MessageBoxButtons.OK, MessageBoxIcon.Error);
|
||||||
|
}
|
||||||
|
catch (Exception ex)
|
||||||
|
{
|
||||||
|
MessageBox.Show(ex.Message, this.Text, MessageBoxButtons.OK, MessageBoxIcon.Error);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public void BtnRefreshInfo_Click(object sender, EventArgs e)
|
||||||
|
{
|
||||||
|
try
|
||||||
|
{
|
||||||
|
RefreshInstrumentStatusInformation();
|
||||||
|
}
|
||||||
|
catch (System.Runtime.InteropServices.COMException ex)
|
||||||
|
{
|
||||||
|
MessageBox.Show($"Error: {_project.TkErrorDescription(ex.ErrorCode)}", this.Text, MessageBoxButtons.OK, MessageBoxIcon.Error);
|
||||||
|
}
|
||||||
|
catch (Exception ex)
|
||||||
|
{
|
||||||
|
MessageBox.Show(ex.Message, this.Text, MessageBoxButtons.OK, MessageBoxIcon.Error);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Pause the instrument run at the end of the current injection
|
||||||
|
/// </summary>
|
||||||
|
public void BtnPauseRun_Click(object sender, EventArgs e)
|
||||||
|
{
|
||||||
|
try
|
||||||
|
{
|
||||||
|
_instrument.Pause(float.MaxValue);
|
||||||
|
}
|
||||||
|
catch (System.Runtime.InteropServices.COMException ex)
|
||||||
|
{
|
||||||
|
MessageBox.Show($"Error: {_project.TkErrorDescription(ex.ErrorCode)}", this.Text, MessageBoxButtons.OK, MessageBoxIcon.Error);
|
||||||
|
}
|
||||||
|
catch (Exception ex)
|
||||||
|
{
|
||||||
|
MessageBox.Show(ex.Message, this.Text, MessageBoxButtons.OK, MessageBoxIcon.Error);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Modify the next line to be run on the sampleset
|
||||||
|
/// </summary>
|
||||||
|
public void BtnModifyNextLine_Click(object sender, EventArgs e)
|
||||||
|
{
|
||||||
|
try
|
||||||
|
{
|
||||||
|
// Obtain the instrument status
|
||||||
|
InstrumentStatus instrumentStatus = (InstrumentStatus)_instrument.Status;
|
||||||
|
|
||||||
|
// If the instrument status contains 'paused' ...
|
||||||
|
if (instrumentStatus.SystemStateDescription.Contains("Paused"))
|
||||||
|
{
|
||||||
|
// Obtain the sample set method name
|
||||||
|
string sampleSetMethodName = instrumentStatus.SampleSetMethodName;
|
||||||
|
|
||||||
|
// Obtain the current vial
|
||||||
|
int vialNumber = instrumentStatus.Vial;
|
||||||
|
|
||||||
|
// Instantiate a sample set method object, set the name, and call 'fetch'
|
||||||
|
SampleSetMethod ssm = new SampleSetMethod
|
||||||
|
{
|
||||||
|
Name = sampleSetMethodName
|
||||||
|
};
|
||||||
|
ssm.Fetch();
|
||||||
|
|
||||||
|
// Obtain the sample set line at the current 'vial number'
|
||||||
|
SampleSetLine ssl = ssm.SampleSetLines.Item(vialNumber);
|
||||||
|
|
||||||
|
// Update the 'Runtime' property on this line to 1 minute
|
||||||
|
ssl.Set("Runtime", "1");
|
||||||
|
|
||||||
|
// Store the changes to the database
|
||||||
|
ssm.Store();
|
||||||
|
|
||||||
|
// Continue the run with the newly changed sample set method
|
||||||
|
_instrument.Replace(ssm.Name);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
// If the instrument status is not paused - show an error message
|
||||||
|
MessageBox.Show("Wait for the instrument to be paused first", this.Text, MessageBoxButtons.OK, MessageBoxIcon.Information);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
catch (System.Runtime.InteropServices.COMException ex)
|
||||||
|
{
|
||||||
|
MessageBox.Show($"Error: {_project.TkErrorDescription(ex.ErrorCode)}", this.Text, MessageBoxButtons.OK, MessageBoxIcon.Error);
|
||||||
|
}
|
||||||
|
catch (Exception ex)
|
||||||
|
{
|
||||||
|
MessageBox.Show(ex.Message, this.Text, MessageBoxButtons.OK, MessageBoxIcon.Error);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Add a line to the end of the sample set method, and restarts a paused run with the changes made
|
||||||
|
/// </summary>
|
||||||
|
public void BtnAddALine_Click(object sender, EventArgs e)
|
||||||
|
{
|
||||||
|
try
|
||||||
|
{
|
||||||
|
// Declare and obtain the instrument status object
|
||||||
|
InstrumentStatus instrumentStatus = (InstrumentStatus)_instrument.Status;
|
||||||
|
|
||||||
|
// If the instrument status contains 'paused'..
|
||||||
|
if (instrumentStatus.SystemStateDescription.Contains("Paused"))
|
||||||
|
{
|
||||||
|
// Obtain the sample set method name
|
||||||
|
string sampleSetMethodName = instrumentStatus.SampleSetMethodName;
|
||||||
|
|
||||||
|
// Instantiate a sample set method object, set the name and call 'fetch'
|
||||||
|
SampleSetMethod ssm = new SampleSetMethod
|
||||||
|
{
|
||||||
|
Name = sampleSetMethodName
|
||||||
|
};
|
||||||
|
ssm.Fetch();
|
||||||
|
|
||||||
|
// Obtain the lst sample set line (SampleSetLines.Count - 1)
|
||||||
|
SampleSetLine ssl = ssm.SampleSetLines.Item(ssm.SampleSetLines.Count - 1);
|
||||||
|
|
||||||
|
// Call the returnLineWithNextVialPosition with the ssl and the ssl plate layout object
|
||||||
|
ssl = ReturnLineWithNextVialPosition(ssl, ssm.PlateLayouts);
|
||||||
|
|
||||||
|
// Add the newly created sample set to the end of the current sample set lines class
|
||||||
|
ssm.SampleSetLines.Add(ssl, ssm.SampleSetLines.Count - 1, MillenniumToolkit.mtkConstants.mtkAfter);
|
||||||
|
|
||||||
|
// Store the changes to the sample set
|
||||||
|
ssm.Store();
|
||||||
|
|
||||||
|
// Restart the run using the new sample set method
|
||||||
|
_instrument.Replace(sampleSetMethodName);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
// If the instrument status is not paused - show an error message
|
||||||
|
MessageBox.Show("Wait for the instrument to be paused first", this.Text, MessageBoxButtons.OK, MessageBoxIcon.Information);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
catch (System.Runtime.InteropServices.COMException ex)
|
||||||
|
{
|
||||||
|
MessageBox.Show($"Error: {_project.TkErrorDescription(ex.ErrorCode)}", this.Text, MessageBoxButtons.OK, MessageBoxIcon.Error);
|
||||||
|
}
|
||||||
|
catch (Exception ex)
|
||||||
|
{
|
||||||
|
MessageBox.Show(ex.Message, this.Text, MessageBoxButtons.OK, MessageBoxIcon.Error);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Creates a new line, with the vial position being the one AFTER the vial position
|
||||||
|
/// of the line that is passed in.
|
||||||
|
/// </summary>
|
||||||
|
/// <param name="ssl">The model sample set line</param>
|
||||||
|
/// <param name="pl">the plate layout to use for the positions</param>
|
||||||
|
/// <returns></returns>
|
||||||
|
private SampleSetLine ReturnLineWithNextVialPosition(SampleSetLine ssl, PlateLayouts pl)
|
||||||
|
{
|
||||||
|
// Get the position of the vial for the passed in line (call get on the vial field)
|
||||||
|
string lastKnownPos = (string) (ssl.Get("vial", true));
|
||||||
|
|
||||||
|
// Create a plate position object from the plate layouts
|
||||||
|
PlatePosition platePos = pl.CreatePlatePosition();
|
||||||
|
|
||||||
|
// Move to the last possible vial of the current plate layout
|
||||||
|
platePos.SetToLastVial();
|
||||||
|
|
||||||
|
// Store the value of the last possible vial in the plate layout
|
||||||
|
string maxPossiblePos = platePos.Position;
|
||||||
|
|
||||||
|
// Move the first position in the plate position
|
||||||
|
platePos.SetToFirstVial();
|
||||||
|
|
||||||
|
// If the plate layout is not lastKnownPos or maxPossiblePos
|
||||||
|
while (!platePos.Position.Equals(lastKnownPos) && !platePos.Position.Equals(maxPossiblePos))
|
||||||
|
{
|
||||||
|
// increment the vial position by 1
|
||||||
|
platePos.IncrementVial(1);
|
||||||
|
}
|
||||||
|
|
||||||
|
// If we did not reach the last possible plate position, increment the vial position to get the next position
|
||||||
|
// -i.e Is the current position the same as the maxPossiblePos
|
||||||
|
if (!platePos.Position.Equals(maxPossiblePos))
|
||||||
|
{
|
||||||
|
// increment the position of the plate pos
|
||||||
|
platePos.IncrementVial(1);
|
||||||
|
}
|
||||||
|
|
||||||
|
// Update the vial position on the line to the new vial position
|
||||||
|
ssl.Set("Vial", platePos.Position);
|
||||||
|
|
||||||
|
// Return the now modified line
|
||||||
|
return ssl;
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Displays the current instrument configurations for this node
|
||||||
|
///
|
||||||
|
/// TODO this is a bit Ghetto ...
|
||||||
|
/// </summary>
|
||||||
|
/// <param name="sender"></param>
|
||||||
|
/// <param name="e"></param>
|
||||||
|
public void BtnShowInstConfig_Click(object sender, EventArgs e)
|
||||||
|
{
|
||||||
|
txtShowInstrumentConfig.Text = "";
|
||||||
|
|
||||||
|
// Loop over each inst config in the instConfigs object
|
||||||
|
foreach (InstConfig instConfig in _instrument.InstConfigs)
|
||||||
|
{
|
||||||
|
// Add a line divider
|
||||||
|
txtShowInstrumentConfig.Text = $"{txtShowInstrumentConfig.Text}\r\nNew Instrument\r\n";
|
||||||
|
|
||||||
|
// For field in the instConfig fields object
|
||||||
|
foreach (string fieldname in instConfig.Fields)
|
||||||
|
{
|
||||||
|
// create the string description which shows the fieldname and its value
|
||||||
|
string desc = $"{fieldname}:{instConfig.Get(fieldname, true)}\r\n";
|
||||||
|
txtShowInstrumentConfig.Text += desc;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
290
frmMain.designer.cs
generated
Normal file
290
frmMain.designer.cs
generated
Normal file
@ -0,0 +1,290 @@
|
|||||||
|
|
||||||
|
namespace Waters.Empower.InstrumentControl.Example
|
||||||
|
{
|
||||||
|
public partial class FrmMain : System.Windows.Forms.Form
|
||||||
|
{
|
||||||
|
//Form overrides dispose to clean up the component list.
|
||||||
|
[System.Diagnostics.DebuggerNonUserCode()]protected override void Dispose(bool disposing)
|
||||||
|
{
|
||||||
|
try
|
||||||
|
{
|
||||||
|
if (disposing && components != null)
|
||||||
|
{
|
||||||
|
components.Dispose();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
finally
|
||||||
|
{
|
||||||
|
base.Dispose(disposing);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
//Required by the Windows Form Designer
|
||||||
|
private System.ComponentModel.Container components = null;
|
||||||
|
|
||||||
|
//NOTE: The following procedure is required by the Windows Form Designer
|
||||||
|
//It can be modified using the Windows Form Designer.
|
||||||
|
//Do not modify it using the code editor.
|
||||||
|
[System.Diagnostics.DebuggerStepThrough()]private void InitializeComponent()
|
||||||
|
{
|
||||||
|
System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(FrmMain));
|
||||||
|
this.txtShowInstrumentConfig = new System.Windows.Forms.TextBox();
|
||||||
|
this.btnShowInstConfig = new System.Windows.Forms.Button();
|
||||||
|
this.txtNewSSMName = new System.Windows.Forms.TextBox();
|
||||||
|
this.btnModifyNextLine = new System.Windows.Forms.Button();
|
||||||
|
this.btnPauseRun = new System.Windows.Forms.Button();
|
||||||
|
this.btnRefreshInfo = new System.Windows.Forms.Button();
|
||||||
|
this.lbStatusInformation = new System.Windows.Forms.ListBox();
|
||||||
|
this.btnAddALine = new System.Windows.Forms.Button();
|
||||||
|
this.lblSSMNameTitle = new System.Windows.Forms.Label();
|
||||||
|
this.gbRunStatus = new System.Windows.Forms.GroupBox();
|
||||||
|
this.btnStartRun = new System.Windows.Forms.Button();
|
||||||
|
this.lblSampleSetMethod = new System.Windows.Forms.Label();
|
||||||
|
this.cbSampleSetMethod = new System.Windows.Forms.ComboBox();
|
||||||
|
this.lblNodeTitle = new System.Windows.Forms.Label();
|
||||||
|
this.lblSystemTitle = new System.Windows.Forms.Label();
|
||||||
|
this.cbSystem = new System.Windows.Forms.ComboBox();
|
||||||
|
this.cbNode = new System.Windows.Forms.ComboBox();
|
||||||
|
this.btnConnect = new System.Windows.Forms.Button();
|
||||||
|
this.gbRunStatus.SuspendLayout();
|
||||||
|
this.SuspendLayout();
|
||||||
|
//
|
||||||
|
// txtShowInstrumentConfig
|
||||||
|
//
|
||||||
|
this.txtShowInstrumentConfig.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)
|
||||||
|
| System.Windows.Forms.AnchorStyles.Left)
|
||||||
|
| System.Windows.Forms.AnchorStyles.Right)));
|
||||||
|
this.txtShowInstrumentConfig.Location = new System.Drawing.Point(40, 538);
|
||||||
|
this.txtShowInstrumentConfig.Multiline = true;
|
||||||
|
this.txtShowInstrumentConfig.Name = "txtShowInstrumentConfig";
|
||||||
|
this.txtShowInstrumentConfig.ScrollBars = System.Windows.Forms.ScrollBars.Vertical;
|
||||||
|
this.txtShowInstrumentConfig.Size = new System.Drawing.Size(391, 208);
|
||||||
|
this.txtShowInstrumentConfig.TabIndex = 33;
|
||||||
|
//
|
||||||
|
// btnShowInstConfig
|
||||||
|
//
|
||||||
|
this.btnShowInstConfig.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right)));
|
||||||
|
this.btnShowInstConfig.Location = new System.Drawing.Point(462, 543);
|
||||||
|
this.btnShowInstConfig.Name = "btnShowInstConfig";
|
||||||
|
this.btnShowInstConfig.Size = new System.Drawing.Size(127, 31);
|
||||||
|
this.btnShowInstConfig.TabIndex = 32;
|
||||||
|
this.btnShowInstConfig.Text = "Show Instrument Configuration";
|
||||||
|
this.btnShowInstConfig.UseVisualStyleBackColor = true;
|
||||||
|
this.btnShowInstConfig.Click += new System.EventHandler(this.BtnShowInstConfig_Click);
|
||||||
|
//
|
||||||
|
// txtNewSSMName
|
||||||
|
//
|
||||||
|
this.txtNewSSMName.Location = new System.Drawing.Point(166, 172);
|
||||||
|
this.txtNewSSMName.Name = "txtNewSSMName";
|
||||||
|
this.txtNewSSMName.Size = new System.Drawing.Size(235, 21);
|
||||||
|
this.txtNewSSMName.TabIndex = 28;
|
||||||
|
//
|
||||||
|
// btnModifyNextLine
|
||||||
|
//
|
||||||
|
this.btnModifyNextLine.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right)));
|
||||||
|
this.btnModifyNextLine.Location = new System.Drawing.Point(462, 343);
|
||||||
|
this.btnModifyNextLine.Name = "btnModifyNextLine";
|
||||||
|
this.btnModifyNextLine.Size = new System.Drawing.Size(127, 31);
|
||||||
|
this.btnModifyNextLine.TabIndex = 27;
|
||||||
|
this.btnModifyNextLine.Text = "Modify Next line";
|
||||||
|
this.btnModifyNextLine.UseVisualStyleBackColor = true;
|
||||||
|
this.btnModifyNextLine.Click += new System.EventHandler(this.BtnModifyNextLine_Click);
|
||||||
|
//
|
||||||
|
// btnPauseRun
|
||||||
|
//
|
||||||
|
this.btnPauseRun.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right)));
|
||||||
|
this.btnPauseRun.Location = new System.Drawing.Point(462, 306);
|
||||||
|
this.btnPauseRun.Name = "btnPauseRun";
|
||||||
|
this.btnPauseRun.Size = new System.Drawing.Size(127, 31);
|
||||||
|
this.btnPauseRun.TabIndex = 26;
|
||||||
|
this.btnPauseRun.Text = "Pause Run";
|
||||||
|
this.btnPauseRun.UseVisualStyleBackColor = true;
|
||||||
|
this.btnPauseRun.Click += new System.EventHandler(this.BtnPauseRun_Click);
|
||||||
|
//
|
||||||
|
// btnRefreshInfo
|
||||||
|
//
|
||||||
|
this.btnRefreshInfo.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right)));
|
||||||
|
this.btnRefreshInfo.Location = new System.Drawing.Point(462, 270);
|
||||||
|
this.btnRefreshInfo.Name = "btnRefreshInfo";
|
||||||
|
this.btnRefreshInfo.Size = new System.Drawing.Size(127, 31);
|
||||||
|
this.btnRefreshInfo.TabIndex = 30;
|
||||||
|
this.btnRefreshInfo.Text = "Refresh Status";
|
||||||
|
this.btnRefreshInfo.UseVisualStyleBackColor = true;
|
||||||
|
this.btnRefreshInfo.Click += new System.EventHandler(this.BtnRefreshInfo_Click);
|
||||||
|
//
|
||||||
|
// lbStatusInformation
|
||||||
|
//
|
||||||
|
this.lbStatusInformation.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
|
||||||
|
| System.Windows.Forms.AnchorStyles.Right)));
|
||||||
|
this.lbStatusInformation.FormattingEnabled = true;
|
||||||
|
this.lbStatusInformation.ItemHeight = 12;
|
||||||
|
this.lbStatusInformation.Location = new System.Drawing.Point(13, 21);
|
||||||
|
this.lbStatusInformation.Name = "lbStatusInformation";
|
||||||
|
this.lbStatusInformation.Size = new System.Drawing.Size(391, 232);
|
||||||
|
this.lbStatusInformation.TabIndex = 0;
|
||||||
|
//
|
||||||
|
// btnAddALine
|
||||||
|
//
|
||||||
|
this.btnAddALine.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right)));
|
||||||
|
this.btnAddALine.Location = new System.Drawing.Point(462, 380);
|
||||||
|
this.btnAddALine.Name = "btnAddALine";
|
||||||
|
this.btnAddALine.Size = new System.Drawing.Size(127, 31);
|
||||||
|
this.btnAddALine.TabIndex = 31;
|
||||||
|
this.btnAddALine.Text = "Add A Line";
|
||||||
|
this.btnAddALine.UseVisualStyleBackColor = true;
|
||||||
|
this.btnAddALine.Click += new System.EventHandler(this.BtnAddALine_Click);
|
||||||
|
//
|
||||||
|
// lblSSMNameTitle
|
||||||
|
//
|
||||||
|
this.lblSSMNameTitle.Font = new System.Drawing.Font("Microsoft Sans Serif", 9.75F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
|
||||||
|
this.lblSSMNameTitle.ImageAlign = System.Drawing.ContentAlignment.MiddleLeft;
|
||||||
|
this.lblSSMNameTitle.Location = new System.Drawing.Point(24, 170);
|
||||||
|
this.lblSSMNameTitle.Name = "lblSSMNameTitle";
|
||||||
|
this.lblSSMNameTitle.Size = new System.Drawing.Size(136, 21);
|
||||||
|
this.lblSSMNameTitle.TabIndex = 29;
|
||||||
|
this.lblSSMNameTitle.Text = "New SSM Name";
|
||||||
|
this.lblSSMNameTitle.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
|
||||||
|
//
|
||||||
|
// gbRunStatus
|
||||||
|
//
|
||||||
|
this.gbRunStatus.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
|
||||||
|
| System.Windows.Forms.AnchorStyles.Right)));
|
||||||
|
this.gbRunStatus.Controls.Add(this.lbStatusInformation);
|
||||||
|
this.gbRunStatus.Location = new System.Drawing.Point(27, 252);
|
||||||
|
this.gbRunStatus.Name = "gbRunStatus";
|
||||||
|
this.gbRunStatus.Size = new System.Drawing.Size(415, 270);
|
||||||
|
this.gbRunStatus.TabIndex = 25;
|
||||||
|
this.gbRunStatus.TabStop = false;
|
||||||
|
this.gbRunStatus.Text = "Run Status";
|
||||||
|
//
|
||||||
|
// btnStartRun
|
||||||
|
//
|
||||||
|
this.btnStartRun.Location = new System.Drawing.Point(24, 206);
|
||||||
|
this.btnStartRun.Name = "btnStartRun";
|
||||||
|
this.btnStartRun.Size = new System.Drawing.Size(378, 31);
|
||||||
|
this.btnStartRun.TabIndex = 24;
|
||||||
|
this.btnStartRun.Text = "Start Run";
|
||||||
|
this.btnStartRun.UseVisualStyleBackColor = true;
|
||||||
|
this.btnStartRun.Click += new System.EventHandler(this.BtnStartRun_Click);
|
||||||
|
//
|
||||||
|
// lblSampleSetMethod
|
||||||
|
//
|
||||||
|
this.lblSampleSetMethod.Font = new System.Drawing.Font("Microsoft Sans Serif", 9.75F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
|
||||||
|
this.lblSampleSetMethod.Location = new System.Drawing.Point(24, 121);
|
||||||
|
this.lblSampleSetMethod.Name = "lblSampleSetMethod";
|
||||||
|
this.lblSampleSetMethod.Size = new System.Drawing.Size(378, 21);
|
||||||
|
this.lblSampleSetMethod.TabIndex = 23;
|
||||||
|
this.lblSampleSetMethod.Text = "Sample Set Method";
|
||||||
|
this.lblSampleSetMethod.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
|
||||||
|
//
|
||||||
|
// cbSampleSetMethod
|
||||||
|
//
|
||||||
|
this.cbSampleSetMethod.FormattingEnabled = true;
|
||||||
|
this.cbSampleSetMethod.Location = new System.Drawing.Point(24, 144);
|
||||||
|
this.cbSampleSetMethod.Name = "cbSampleSetMethod";
|
||||||
|
this.cbSampleSetMethod.Size = new System.Drawing.Size(375, 20);
|
||||||
|
this.cbSampleSetMethod.TabIndex = 22;
|
||||||
|
//
|
||||||
|
// lblNodeTitle
|
||||||
|
//
|
||||||
|
this.lblNodeTitle.Font = new System.Drawing.Font("Microsoft Sans Serif", 9.75F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
|
||||||
|
this.lblNodeTitle.Location = new System.Drawing.Point(24, 13);
|
||||||
|
this.lblNodeTitle.Name = "lblNodeTitle";
|
||||||
|
this.lblNodeTitle.Size = new System.Drawing.Size(180, 18);
|
||||||
|
this.lblNodeTitle.TabIndex = 21;
|
||||||
|
this.lblNodeTitle.Text = "Node";
|
||||||
|
this.lblNodeTitle.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
|
||||||
|
//
|
||||||
|
// lblSystemTitle
|
||||||
|
//
|
||||||
|
this.lblSystemTitle.Font = new System.Drawing.Font("Microsoft Sans Serif", 9.75F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
|
||||||
|
this.lblSystemTitle.Location = new System.Drawing.Point(222, 13);
|
||||||
|
this.lblSystemTitle.Name = "lblSystemTitle";
|
||||||
|
this.lblSystemTitle.Size = new System.Drawing.Size(173, 18);
|
||||||
|
this.lblSystemTitle.TabIndex = 20;
|
||||||
|
this.lblSystemTitle.Text = "System";
|
||||||
|
this.lblSystemTitle.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
|
||||||
|
//
|
||||||
|
// cbSystem
|
||||||
|
//
|
||||||
|
this.cbSystem.FormattingEnabled = true;
|
||||||
|
this.cbSystem.Location = new System.Drawing.Point(222, 33);
|
||||||
|
this.cbSystem.Name = "cbSystem";
|
||||||
|
this.cbSystem.Size = new System.Drawing.Size(180, 20);
|
||||||
|
this.cbSystem.TabIndex = 19;
|
||||||
|
//
|
||||||
|
// cbNode
|
||||||
|
//
|
||||||
|
this.cbNode.FormattingEnabled = true;
|
||||||
|
this.cbNode.Location = new System.Drawing.Point(24, 33);
|
||||||
|
this.cbNode.Name = "cbNode";
|
||||||
|
this.cbNode.Size = new System.Drawing.Size(180, 20);
|
||||||
|
this.cbNode.TabIndex = 18;
|
||||||
|
//
|
||||||
|
// btnConnect
|
||||||
|
//
|
||||||
|
this.btnConnect.Location = new System.Drawing.Point(24, 66);
|
||||||
|
this.btnConnect.Name = "btnConnect";
|
||||||
|
this.btnConnect.Size = new System.Drawing.Size(378, 31);
|
||||||
|
this.btnConnect.TabIndex = 17;
|
||||||
|
this.btnConnect.Text = "Connect";
|
||||||
|
this.btnConnect.UseVisualStyleBackColor = true;
|
||||||
|
this.btnConnect.Click += new System.EventHandler(this.BtnConnect_Click);
|
||||||
|
//
|
||||||
|
// FrmMain
|
||||||
|
//
|
||||||
|
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 12F);
|
||||||
|
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
|
||||||
|
this.ClientSize = new System.Drawing.Size(629, 758);
|
||||||
|
this.Controls.Add(this.txtShowInstrumentConfig);
|
||||||
|
this.Controls.Add(this.btnShowInstConfig);
|
||||||
|
this.Controls.Add(this.txtNewSSMName);
|
||||||
|
this.Controls.Add(this.btnModifyNextLine);
|
||||||
|
this.Controls.Add(this.btnPauseRun);
|
||||||
|
this.Controls.Add(this.btnRefreshInfo);
|
||||||
|
this.Controls.Add(this.btnAddALine);
|
||||||
|
this.Controls.Add(this.lblSSMNameTitle);
|
||||||
|
this.Controls.Add(this.gbRunStatus);
|
||||||
|
this.Controls.Add(this.btnStartRun);
|
||||||
|
this.Controls.Add(this.lblSampleSetMethod);
|
||||||
|
this.Controls.Add(this.cbSampleSetMethod);
|
||||||
|
this.Controls.Add(this.lblNodeTitle);
|
||||||
|
this.Controls.Add(this.lblSystemTitle);
|
||||||
|
this.Controls.Add(this.cbSystem);
|
||||||
|
this.Controls.Add(this.cbNode);
|
||||||
|
this.Controls.Add(this.btnConnect);
|
||||||
|
this.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon")));
|
||||||
|
this.MinimumSize = new System.Drawing.Size(600, 797);
|
||||||
|
this.Name = "FrmMain";
|
||||||
|
this.Padding = new System.Windows.Forms.Padding(10, 9, 10, 9);
|
||||||
|
this.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen;
|
||||||
|
this.Text = "Empower Instrument Control Example";
|
||||||
|
this.FormClosed += new System.Windows.Forms.FormClosedEventHandler(this.FrmMain_FormClosed);
|
||||||
|
this.Load += new System.EventHandler(this.FrmMain_Load);
|
||||||
|
this.gbRunStatus.ResumeLayout(false);
|
||||||
|
this.ResumeLayout(false);
|
||||||
|
this.PerformLayout();
|
||||||
|
|
||||||
|
}
|
||||||
|
private System.Windows.Forms.TextBox txtShowInstrumentConfig;
|
||||||
|
private System.Windows.Forms.Button btnShowInstConfig;
|
||||||
|
private System.Windows.Forms.TextBox txtNewSSMName;
|
||||||
|
private System.Windows.Forms.Button btnModifyNextLine;
|
||||||
|
private System.Windows.Forms.Button btnPauseRun;
|
||||||
|
private System.Windows.Forms.Button btnRefreshInfo;
|
||||||
|
private System.Windows.Forms.ListBox lbStatusInformation;
|
||||||
|
private System.Windows.Forms.Button btnAddALine;
|
||||||
|
private System.Windows.Forms.Label lblSSMNameTitle;
|
||||||
|
private System.Windows.Forms.GroupBox gbRunStatus;
|
||||||
|
private System.Windows.Forms.Button btnStartRun;
|
||||||
|
private System.Windows.Forms.Label lblSampleSetMethod;
|
||||||
|
private System.Windows.Forms.ComboBox cbSampleSetMethod;
|
||||||
|
private System.Windows.Forms.Label lblNodeTitle;
|
||||||
|
private System.Windows.Forms.Label lblSystemTitle;
|
||||||
|
private System.Windows.Forms.ComboBox cbSystem;
|
||||||
|
private System.Windows.Forms.ComboBox cbNode;
|
||||||
|
private System.Windows.Forms.Button btnConnect;
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
347
frmMain.resx
Normal file
347
frmMain.resx
Normal file
@ -0,0 +1,347 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<root>
|
||||||
|
<!--
|
||||||
|
Microsoft ResX Schema
|
||||||
|
|
||||||
|
Version 2.0
|
||||||
|
|
||||||
|
The primary goals of this format is to allow a simple XML format
|
||||||
|
that is mostly human readable. The generation and parsing of the
|
||||||
|
various data types are done through the TypeConverter classes
|
||||||
|
associated with the data types.
|
||||||
|
|
||||||
|
Example:
|
||||||
|
|
||||||
|
... ado.net/XML headers & schema ...
|
||||||
|
<resheader name="resmimetype">text/microsoft-resx</resheader>
|
||||||
|
<resheader name="version">2.0</resheader>
|
||||||
|
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
|
||||||
|
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
|
||||||
|
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
|
||||||
|
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
|
||||||
|
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
|
||||||
|
<value>[base64 mime encoded serialized .NET Framework object]</value>
|
||||||
|
</data>
|
||||||
|
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||||
|
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
|
||||||
|
<comment>This is a comment</comment>
|
||||||
|
</data>
|
||||||
|
|
||||||
|
There are any number of "resheader" rows that contain simple
|
||||||
|
name/value pairs.
|
||||||
|
|
||||||
|
Each data row contains a name, and value. The row also contains a
|
||||||
|
type or mimetype. Type corresponds to a .NET class that support
|
||||||
|
text/value conversion through the TypeConverter architecture.
|
||||||
|
Classes that don't support this are serialized and stored with the
|
||||||
|
mimetype set.
|
||||||
|
|
||||||
|
The mimetype is used for serialized objects, and tells the
|
||||||
|
ResXResourceReader how to depersist the object. This is currently not
|
||||||
|
extensible. For a given mimetype the value must be set accordingly:
|
||||||
|
|
||||||
|
Note - application/x-microsoft.net.object.binary.base64 is the format
|
||||||
|
that the ResXResourceWriter will generate, however the reader can
|
||||||
|
read any of the formats listed below.
|
||||||
|
|
||||||
|
mimetype: application/x-microsoft.net.object.binary.base64
|
||||||
|
value : The object must be serialized with
|
||||||
|
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
|
||||||
|
: and then encoded with base64 encoding.
|
||||||
|
|
||||||
|
mimetype: application/x-microsoft.net.object.soap.base64
|
||||||
|
value : The object must be serialized with
|
||||||
|
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
|
||||||
|
: and then encoded with base64 encoding.
|
||||||
|
|
||||||
|
mimetype: application/x-microsoft.net.object.bytearray.base64
|
||||||
|
value : The object must be serialized into a byte array
|
||||||
|
: using a System.ComponentModel.TypeConverter
|
||||||
|
: and then encoded with base64 encoding.
|
||||||
|
-->
|
||||||
|
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
|
||||||
|
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
|
||||||
|
<xsd:element name="root" msdata:IsDataSet="true">
|
||||||
|
<xsd:complexType>
|
||||||
|
<xsd:choice maxOccurs="unbounded">
|
||||||
|
<xsd:element name="metadata">
|
||||||
|
<xsd:complexType>
|
||||||
|
<xsd:sequence>
|
||||||
|
<xsd:element name="value" type="xsd:string" minOccurs="0" />
|
||||||
|
</xsd:sequence>
|
||||||
|
<xsd:attribute name="name" use="required" type="xsd:string" />
|
||||||
|
<xsd:attribute name="type" type="xsd:string" />
|
||||||
|
<xsd:attribute name="mimetype" type="xsd:string" />
|
||||||
|
<xsd:attribute ref="xml:space" />
|
||||||
|
</xsd:complexType>
|
||||||
|
</xsd:element>
|
||||||
|
<xsd:element name="assembly">
|
||||||
|
<xsd:complexType>
|
||||||
|
<xsd:attribute name="alias" type="xsd:string" />
|
||||||
|
<xsd:attribute name="name" type="xsd:string" />
|
||||||
|
</xsd:complexType>
|
||||||
|
</xsd:element>
|
||||||
|
<xsd:element name="data">
|
||||||
|
<xsd:complexType>
|
||||||
|
<xsd:sequence>
|
||||||
|
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
|
||||||
|
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
|
||||||
|
</xsd:sequence>
|
||||||
|
<xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
|
||||||
|
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
|
||||||
|
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
|
||||||
|
<xsd:attribute ref="xml:space" />
|
||||||
|
</xsd:complexType>
|
||||||
|
</xsd:element>
|
||||||
|
<xsd:element name="resheader">
|
||||||
|
<xsd:complexType>
|
||||||
|
<xsd:sequence>
|
||||||
|
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
|
||||||
|
</xsd:sequence>
|
||||||
|
<xsd:attribute name="name" type="xsd:string" use="required" />
|
||||||
|
</xsd:complexType>
|
||||||
|
</xsd:element>
|
||||||
|
</xsd:choice>
|
||||||
|
</xsd:complexType>
|
||||||
|
</xsd:element>
|
||||||
|
</xsd:schema>
|
||||||
|
<resheader name="resmimetype">
|
||||||
|
<value>text/microsoft-resx</value>
|
||||||
|
</resheader>
|
||||||
|
<resheader name="version">
|
||||||
|
<value>2.0</value>
|
||||||
|
</resheader>
|
||||||
|
<resheader name="reader">
|
||||||
|
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||||
|
</resheader>
|
||||||
|
<resheader name="writer">
|
||||||
|
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||||
|
</resheader>
|
||||||
|
<assembly alias="System.Drawing" name="System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
|
||||||
|
<data name="$this.Icon" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||||
|
<value>
|
||||||
|
AAABAAMAEBAAAAAACABoBQAANgAAACAgAAAAAAgAqAgAAJ4FAAAwMAAAAAAgAKglAABGDgAAKAAAABAA
|
||||||
|
AAAgAAAAAQAIAAAAAAAABQAAAAAAAAAAAAAAAAAAAAAAACswAAA5UQAAS10PAFBsAABhfgAAa3wPAFBC
|
||||||
|
KwBnaTIAdGVNAH9sTQBqZVoAa2VaAHdvUgB8dmoAgX1TAI17YQBkgwAAZYQAAGeFAABrhgEAbIcDAGiJ
|
||||||
|
AABriAAAbIkBAG6KAQBsjgAAZ4ELAHKOAwBvlAAAc5AAAHGVAABxlwAAcpcAAHWWAAB0lwAAdJkAAHWb
|
||||||
|
AAB3mQIAeJsAAHuaAgB4nwAAe5oFAH2XDwB3jyMAfIRnAISfDgCGmxEAjJ8dAICgBgCFoAoAiKQTAImi
|
||||||
|
FwCJoxgAjaMfAIGMKgCOmiUAjpYtAJCcIACNjzoAmp8xAJKgIACYpjAAmaY6AJ6sPQCMhEQAg45TAKGS
|
||||||
|
XACpml0AqqBMAKa0RQCsoFUArLNUALCyWQCXgmAAnYRhAJ+LaQCPiHcAkZtxAKCHZACjj2EAootkAKWL
|
||||||
|
ZAC9nWUAvZ1nAL6dZwC+nmYAvp9mALWaawCymG0Av51oAL+daQC9nmgAup5vAKGQfAC1m3UAvJ9zAL2f
|
||||||
|
cwCaoGsAsqdkALijZQC/pGUAuqNpALS5YgC1u2MAtrhkAL+jcgC+o3UApbZyAKq1egC9vHEAvr10AMOk
|
||||||
|
bgDEpG4AxaRuAMWkbwDBo3AAwqNwAMKkcADDpHMAx6RxAMancwDHp3MAwqd3AMSodgDFqHcAyahxAMmp
|
||||||
|
cQDApXgAx6R5AMileQDGq3sAyat5AMisfADJrX0Awr97AMO/ewDGu3wAusNgAMTAfACalowAnpmVALqp
|
||||||
|
gwCmppwAv6+VALKtnwCysZAAt72SAKmnogC/vrgAxKqCAMuvgwDLsIIAzLOGAM+2iQDPvpEA07qQAMe9
|
||||||
|
qgDLyYoA0MWOANbMnADYypoAwcakAMXIrwDdwaIA0MmpAMzAsADHyrEAyc20AMrOtwDGwroAy8a9AMzQ
|
||||||
|
ugDR1L8A4dKtAOXTtQDq1rwA6tu5ANTYxADX3McA2NbIANrU0wDb2dMA3t3TAN7c1ADs18AA7NfBAOzX
|
||||||
|
wgDs28EA7djDAOzbwgDv3sIA797DAO7ZxADs3cQA793IAPDcwwDw38QA8t/HAPHeywDz4MkA9eTIAPfi
|
||||||
|
zwDl59sA5+jcAOLg4ADk4+MA6+rqAOzr7ADv7vAA9PTyAPj2+gD+/f8A////AAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADBxa0zIEiaKS+YloJ7dXBTu8jDRR8q
|
||||||
|
jTYEQl5qfHh+Vr2+wGYZGg4MAgcPUFxzcVS9vrptF6G3tbbLqklXc3FUvb64hhSmzJSps5JPYHNxVL2+
|
||||||
|
uIcUos0NCEs6OGV2clm9vrluE6fOCwYJTkNjgXJZvb68aBKoz5OLkF1RRjs8Ob2+wEcQq9DR1NSRBSEk
|
||||||
|
KCS9v68/EazSjExhKxUiJjEuvcSuNRKx0woAAQMYN0RkUr3HnycWstSOLE1BQF+Ad1q9yWceG8rU1NTU
|
||||||
|
tEpcdXFUwrA0HD6ka2ycpY9YaXRwVMaJIzKgPR1ilX96hYN5fVWdMCWKni2Io5uZl4R7dW9bAAB+AgAA
|
||||||
|
ggIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACgA
|
||||||
|
AAAgAAAAQAAAAAEACAAAAAAAAAgAAAAAAAAAAAAAAAAAAAAAAAAxMxUART0wADlGBABGWAAAUV0QAFNo
|
||||||
|
AABcdAAAV2MUAGB5AABifAAAZX8AAGt5FQBGQC8AVEs6AF1UPwBgWjQAZWwjAGVaRQBvYk0AdWhNAHdp
|
||||||
|
UgCEc1UAindXAIV2WgCJd1kAinlbAJB9WgCMfGAAZYAAAGaAAABogwAAaYUAAGyIAABtigAAbosAAG+M
|
||||||
|
AABxjgAAcY8AAHKPAABxigcAcpAAAHSSAAB1lAAAdpQAAHeWAAB4lwAAeZgAAHmZAAB6mQAAepoAAHua
|
||||||
|
AAB7mwAAe5MMAH+cCwB2iBkAfoYoAIKdDACHmRcAiKMYAIyZJwCRnCgAhYQ4AI+aNACUmzUAoZ07AI2j
|
||||||
|
IQCUpysAmKg2AJqlOQCdqzsAg4JBAJuZSQCUgF4AoJZOAJejXgCkrEYAprJJAK+hUwC0oF0Aq7JVAJaD
|
||||||
|
ZACbhWEAnIllAJKCaQCSj20AnpFoAKOMZACjjmkApZBkAKOQbACpkWkArJNpAK+WawCqk20ArZVtAL2c
|
||||||
|
ZgC9nWYAvJxnALydZwCwl2sAsZhrALWeagCymG0AtZptALacbgC9nWkAvZ5pAL6eaAC+n2gAv59qALme
|
||||||
|
bwCum30AtJ1yALqecAC6pGUAv6BqAL+gawC5uWoAq6B0ALugcgC8oHAAvqFxAL2icgC+onIAuaF1AL2i
|
||||||
|
dQC8pHoAvrp0AMCgbADAoWwAwKFtAMGibwDBo28AwKJwAMCjcADBo3EAwKRwAMKkcQDCpXEAwKRzAMCk
|
||||||
|
dADCpHQAwqZ0AMKldwDEp3UAxKh2AMWqegDFqX0AyKx9AMDCdgCOjIcAlpOMAJ2blwCjnZIAvqmEAK22
|
||||||
|
hgCro5YAtqeQALW5mQC2u5wAt72eALi8nACtqqQAtbCkALmzpQC6vqEAtLOuALq2qwC/u6kAxq2DAMqu
|
||||||
|
gADDrowAzLGEAM20igDKvIwA0LiNAMu3lADSupMA1L6ZAMK+tAC9w6cAycOFAM/HkADRxZIA1sCZANnC
|
||||||
|
nQDVy5oAw8atANrGpADbzaQA3s2qAN7QqwDMz7cA4M2tAOLRsQDj0bIA5dO1AObVuADn1roA6Ne7AObb
|
||||||
|
uwDp2L0A6dm+AMjIxQDW1c0A1tbQANnZ0gDb2tQA3NvVANzc1QDq2sAA6trBAOvbwgDs3cQA7d/HAOHa
|
||||||
|
zgDg3tcA4uHZAObl2gDj4t0A5OPeAOPl3gDk5N0A6ObcAOvp3gDk4+EA5OTgAOfm4QDl5eIA5uXiAObm
|
||||||
|
4wDn5uQA5ujhAOro4QDs6+AA7eziAOjo5QDq6uUA6ejmAOrp5gDr6+cA6+roAO3s6QDv7uwA8O/sAPHx
|
||||||
|
7QD08+8A9PTuAPX18QD39vUA+Pj3APr6+QD8/PsA/Pz8AP7+/QD+/v4A1tTTyca/MzMzM0K8uXUzMzNL
|
||||||
|
ra2sqpSSkZCKhIJ0amHV0srHxcRFMzIxMH+ysTQrKzupqZOTkpKRjomEgG1rX9XSysfFxH8yMS0rO7Cr
|
||||||
|
PyEgIHB8fHx9jIyOh4OAbWxg1dLKx8XEtjIuKyUgdm9VCAYGRldXWmZoeouHhIFzbGDV0srHxcTDMSwo
|
||||||
|
IAlGUxsQAwMHFRlIVlxueYaEgHNrYNXSysfFxMNCKiEJBQcSEQ4CAgIPExVIWGZ4hYOAc2tg1dLKx8XE
|
||||||
|
w0IpH6Hq6t/a2t/g6urqpBpWY3GFhIFta2DV0srHxcTDTCgenurZ0M/R2Nnf6uqkGlZkeIWDgXNrYNXS
|
||||||
|
ysfFxMNPJR2e3tDNzdDY3unr66hRWmd5hoOAc2tg1dLKx8XEw08lCp7Zzs2ml5yjp6GhSlhnbnuIhIFt
|
||||||
|
bF/V0srHxcTDTyUKntvQz5cNEhdQUjcfNmV7i4eEgG1sX9XSysfFxMNPJQqe3NjZlw4SGVJZXkk0OU6N
|
||||||
|
iYOBc2tf1dLKx8XEw08lCp/j29yXDREVG1JXXnBHPHKJg4FzbF/V0srHxcTDQyUKn+nc4pcBDhIUGEhW
|
||||||
|
Xmh6jYmEgG1rX9XSysfFxMNCJQqg7eTilgABDQ4SFRpWZneLik1AQD9A1dLKx8XEw0ElCqDw5eHk7PL1
|
||||||
|
9/fOFlJcRzwzMzMzMzPV0srHxcTDLiUKpfLs5ufv8vX4+M8ZPScpLzMzMzMzM9XSysfFxL0uJQql9PHu
|
||||||
|
7/L09vj42AsdIyovMzMzMzMz1dLKx8XEtS4lCqX28/PLmKKns7ubCSAmLDAzMzMzMzPV0srHxcR1LiUK
|
||||||
|
pfj19ZgNERMQBgkdISgsMDMzMzg5OdXSysfFxEwuJQq0+fj4mA0RBAUGCBwgJisvOUBOc2tf1dLKx8XE
|
||||||
|
QS4lHLT6+fmYDAIDAwUFCB0iO06Hg4Bta2DV0srHxb8zLiYdtPv6+pgAAgICAwMFC0loeYeEgG1sYNXS
|
||||||
|
ysfFfzMvKB67/Pv75MvMzM3O0VRIWGd5h4OBc2xf1dLKx8VFMy8pIMD+/f39/f3+/v7+mUhYZ3mHhIBz
|
||||||
|
a1/V0srHvTMzMCsjzv////////////+cUVtoeYeEgG1rYNXSysdMMzMxLT7X9e3o3d3i5efu8Z1aZneL
|
||||||
|
h4OAbWxf1dLKvTMzMzI1rrJHHx0JNllZWVldXnB3i42Hg4BtbGDV0spFMzMzMk+8riooJD6amn5+fn5+
|
||||||
|
j4+NjomDgG1rYNXSlTMzMzNCvr5FLy5Esa+traypqZOTkpGQiYOBbWtf1bo4MzMzOLrBtzMzRbm4sbGv
|
||||||
|
raysqpSSkZCKhIBtbF/IOjMzMzO2wsFFM0W5ubixsa+trayqlJKRkIqEgnRpYgAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKAAAADAA
|
||||||
|
AABgAAAAAQAgAAAAAAAAJAAAAAAAAAAAAAAAAAAAAAAAAO3fx//77NL/7NzE/+rawf/q2b//6di9/+fW
|
||||||
|
u//p1bz/zseP/4iiGf90lwD/epsA/3ubAP95mgD/fJwC/5CkI//Bu3f/3sip/97Hp//MvYb/sLJZ/4Oe
|
||||||
|
Dv93mQD/eJoA/3qbAP+SpCb/rqxT/8q0hP/RtY3/zbOH/8yxhP/MsIL/y6+B/8mtf//GrHz/xqp5/8Wp
|
||||||
|
dv/Fpnb/xKZ0/8Klcf/ApHD/wKNv/8Chbf/AoGz/v6Br/7+gav/Ip27/u5tm/+zexf///+X//+/T//3s
|
||||||
|
0P/9687//OnM//voy///6dH/4tmf/6W5N/+Epwb/hKcA/4SnAP+EpwD/hKcB/4+tE/+9wF//59Oo/+3U
|
||||||
|
sv/o0Kb/xsJw/5OsGf99owD/gaUA/4OmAP+Sqxf/tLZP/9XAiP/hwpr/3MCR/9u+jf/avIv/2buK/9i7
|
||||||
|
iP/Xuob/1riD/9W3gf/VtYD/1LR+/9Kye//Rsnn/0bB4/9Cudv/PrXT/z61z/8+tcv/duHn/vJtn/+zd
|
||||||
|
w///8NT/7t7D/+vbwP/r2r//6tm9/+nYu//t2cL/3M+k/7C4Wf+Joxb/e5sA/3qaAP97mwD/eJkA/3ia
|
||||||
|
AP+XpjH/vrZ2/9K+mf/cwan/w7V//5CfKv91lAP/dJQA/3WVAP95lgf/k58w/7urcv/Mr4v/xq2C/8Wr
|
||||||
|
f//Eqn3/xKp8/8WrfP/Gq3v/xqp5/8SpeP/EqHf/xah1/8Smc//DpXH/w6Nv/8Kibv/BoGz/waBr/8Kh
|
||||||
|
av/PrHD/vJtm/+vdxP//7tL/7NzB/+nZvv/p2L3/6Ne7/+fWuf/p1r3/39Cr/8HAd/+VqCv/eZkA/3eY
|
||||||
|
AP95mQD/d5YA/3WVAP+AmRH/nqVI/8Gzhv/SuKP/vq2C/5idRf95kBL/booA/2yKAP9piQH/fpAa/6qe
|
||||||
|
Yf++o4H/uqJ6/7qheP+6onf/u6N2/72kd/+/pHf/wKR2/8Gldf/BpXT/wqZ0/8Gkcv/BonD/waJu/8Cg
|
||||||
|
bf+/n2v/v59q/8Cgaf/Nq2//vZ1m/+vdxP//7tL/7NzB/+nZvv/p2L3/6Ne7/+fVuf/o1br/49Kx/87G
|
||||||
|
jf+erTv/eZkA/3aXAP95mAD/dpUA/3OTAP9wjwL/hZYk/6+ncf/DrJT/t6SC/6GZYf99iiX/ZH8A/2J/
|
||||||
|
AP9gfgD/boIO/5OOSv+qlW//rZdy/66Xcf+wmHD/sppx/7adcv+5n3P/vKBz/76ic//ApXT/waV0/8Gj
|
||||||
|
cv/BonD/waNu/8Cgbf+/n2v/v59q/8Chaf/Nq2//vZ1m/+vdxP//7tL/7NzB/+nZvv/p2L3/6Ne7/+fV
|
||||||
|
uf/n1bj/5tO3/9nMoP+lsEf/eJgA/3SVAP94lgD/dJIA/3CPAP9ohwD/dYoT/5mXV/+tnH3/q5d9/6CQ
|
||||||
|
b/98gTb/XXQE/1hyAP9YcQD/YHQI/3Z7Lf+PhFT/nYlo/6CLaf+jjGj/p5Bq/62VbP+ymW7/t51v/7ug
|
||||||
|
cv+/o3L/wKRz/8Gjcf/Bo3D/waNu/8Chbf+/oGv/v6Bq/8Chaf/Nq2//vZ1m/+vdxP//7tL/7NzB/+nZ
|
||||||
|
vv/p2L3/6Ne7/+bVuf/l1Lb/6dW8/+PRsv+stFX/eJgA/3OUAP92lAD/cpAA/2yKAP9igAD/aH4I/3+D
|
||||||
|
Of+Sh2H/l4Rv/5F/aP92c0H/WmcU/01iAP9LYAD/TmIA/1lmEP90cDn/inlb/5B8Xv+UgF3/m4Zh/6KM
|
||||||
|
Zf+rk2n/splt/7iecP+9oXH/v6Jx/8CjcP/Bo3D/waJv/8Chbf+/oGv/v6Bq/8Cgaf/Nqm//vZ1m/+vd
|
||||||
|
xP//7tL/7NzB/+nZvv/p2L3/6Ne7/+bVuf/l1Lb/6tW9/+bTuP+2umb/gp0Q/3WVAf9zkQD/bYsA/2J/
|
||||||
|
AP9UcQD/UGgA/1llDv9rZjj/dWVR/3BfTf9hVzv/TU4c/zdGAP8vQwD/MUQA/zVHAP9NURP/aFs6/3Nh
|
||||||
|
Rf99akv/inZU/5eCXv+jjGX/rJRp/7Oabf+6nm//vqFw/8CicP/BonD/waJv/8Cgbf+/oGv/v6Bq/8Cg
|
||||||
|
af/Nqm//vZ1m/+vdxP//7tL/7NzB/+nZvv/p2L3/6Ne7/+bVuf/l1Lb/6dW7/+XStf+9vXH/jKIf/3eV
|
||||||
|
AP9tjQD/bYkF/3KJF/9ziCb/coMs/3N9Of9/fVb/hnxr/4F2Z/98c2T/cm1V/2BmNv9YZCr/WWYq/1to
|
||||||
|
Kv9pbj3/fXdY/4h8Zf+Mfmb/jXxg/5F9XP+bhWD/p49m/6+Wav+3nG//vaFw/8CicP/BonD/waJv/8Cg
|
||||||
|
bf+/oGv/v6Bq/8Cgaf/Nqm//vZ1m/+vdxP//7tL/7NzB/+nZvv/p2L3/6Ne7/+bVuf/l1Lb/6dW7/+XS
|
||||||
|
tf+9vHL/jaEh/3WUAP9niAD/dI0U/5yoZP/BxqP/0NO3/9HRuv/Qz73/0M3B/83Kvv/Myb//y8i9/8jH
|
||||||
|
tv/Gx7L/x8mz/8nLtP/MzLj/09DA/9TRw//DvrH/pZuH/5KAYv+Uflr/pI1k/66Vaf+2m23/vJ9v/8Ci
|
||||||
|
cP/Bo3D/waNv/8Chbf+/oGv/v59q/8Cgaf/Nqm//vZ1m/+vdxP//7tL/7NzB/+nZvv/p2L3/6Ne7/+bV
|
||||||
|
uf/l1Lb/6dS6/+XStf/Cv3r/k6Ut/3aTBP9jgwD/dY0b/621hf/k4tr/+vf0//j08v/w7+j/7Ozk/+vr
|
||||||
|
4v/s7OP/7u3l//Lv6v/08ez/9vPu//j18P/49u//+/nw//j47v/d3NL/squa/5ODZf+SfVf/pI1k/66V
|
||||||
|
af+2m23/vJ9v/8CicP/BonD/waNv/8Chbf+/oWv/v59q/8Cgaf/Nqm//vZ1m/+vdxP//7tL/7NzB/+nZ
|
||||||
|
vv/p2L3/6Ne7/+bVuf/l1Lb/6NS5/+XStf/Jwob/nKo+/3iUCf9hgQD/c4oZ/6ave//a2cz/7Ovi/+fl
|
||||||
|
3v/e3db/3NvV/93c1f/f39f/4eHZ/+Pi2//l5N3/6Off/+vq4f/u7eT/8/Lo//Lx5//a2M7/s6ua/5eF
|
||||||
|
Z/+WgFn/po9l/7CXav+3nG7/vaBw/8CicP/BonD/waJv/8Chbf+/oWv/v6Bq/8Cgaf/Nqm//vZ1m/+vd
|
||||||
|
xP//7tL/7NzB/+nZvv/p2L3/6Ne7/+bVuf/l1Lb/59S5/+XStf/LxIr/n6tD/3mUCv9ggAD/cogZ/6Wt
|
||||||
|
ev/W1cj/5uXe/+Hg2f/Z2NL/19bR/9jX0v/b2tP/3t7X/+Df2P/j4tv/5+be/+rp4P/u7OL/8PDn//Dv
|
||||||
|
5v/a2M3/tq6b/52La/+chF3/q5Jn/7OZbP+5nnD/vqJx/8CjcP/Bo3D/waJv/8Cgbf+/oGv/v6Bq/8Cg
|
||||||
|
af/Nqm//vZ1m/+vdxP//7tL/7NzB/+nZvv/p2L3/6Ne7/+bVuf/l1Lb/59S5/+XStf/LxIr/oKtE/3mU
|
||||||
|
Cv9gfwD/cYcZ/6Ssev/T0sf/4+Lb/97d2P/Z2NL/1NPO/8vKxf/Cwbv/wb+5/8bEvf/Ny8T/09HI/9bU
|
||||||
|
yv/W1sj/2NrI/9jbyf/Fya3/rKmE/6OQbP+njWf/sJds/7acbv+7n3D/vqNx/8CkcP/BpHD/waNu/8Cg
|
||||||
|
bf+/oGv/v59q/8Cgaf/Nqm//vZxm/+vdxP//7tL/7NzB/+nZvv/p2L3/6Ne7/+bVuf/l1Lb/59S5/+XS
|
||||||
|
tf/LxIr/oKtD/3mUCv9gfwD/cYcZ/6Ssev/S0sf/4uHb/97d2P/c29X/0dDL/7W0r/+XlIz/i4d9/5aR
|
||||||
|
hv+knpD/raaX/7Orm/+0r5j/srGQ/6yyhP+ZqGH/jJlH/5eRTv+qlGT/t5xz/7ufc/+9oXL/v6Ny/8Ck
|
||||||
|
cf/BpHD/waNu/8Chbf+/oGv/v59q/8Cgaf/Nqm//vZtm/+vdxP//7tL/7NzB/+nZvv/p2L3/6Ne7/+bV
|
||||||
|
uf/l1Lb/59S5/+XStf/LxIr/oKtD/3mUCv9ffwD/cYcZ/6Stev/T08f/4+Lc/9/e2v/g39r/0NDL/6Wk
|
||||||
|
nv90b2X/YlhJ/29kUv+CdmD/j4Fn/5mJbv+hkHH/nJFj/4uPQ/92ihz/b4kN/32MG/+dlkn/uJ9w/76i
|
||||||
|
dv/AonT/waRz/8Gkcf/BpHD/waJu/8Chbf+/n2v/v59q/8Cgaf/Nqm//vZtm/+vdxP//7tL/7NzB/+nZ
|
||||||
|
vv/p2L3/6Ne7/+bVuf/l1Lb/59S5/+XStf/LxIr/oKtD/3mUCv9ffwD/cYcZ/6Sse//T08j/5OPe/+Lh
|
||||||
|
3P/k493/09PN/6Ohmv9rZFn/VUk3/2RWQP95alD/iHdY/5SAX/+eiGX/nopf/5SKSv+GiS7/eIoU/3KM
|
||||||
|
BP+Ckxr/oJxG/7ahZv/BpHX/w6V1/8Kkcv/Bo3D/waJu/8Chbf+/oGv/v59q/8Cgaf/Nqm//vZtm/+vd
|
||||||
|
xP//7tL/7NzB/+nZvv/p2L3/6Ne7/+bVuf/l1Lb/59S5/+XStf/MxIv/oatE/3mUCv9ffwD/cYcZ/6Ss
|
||||||
|
fP/U1Mr/5uXh/+Xk3//n5uD/19bR/6imn/9xal7/Wk89/2hcRv99blb/inpe/5eFZf+gjGn/p5Ft/6yU
|
||||||
|
b/+plWb/mpRK/4mSKf+AlBX/i5gk/6OeRv+4o2X/waVy/8Okc//Co3D/waJu/8Chbf+/oWv/v6Bq/8Cg
|
||||||
|
af/Nqm//vZtm/+vdxP//7tL/7NzB/+nZvv/p2L3/6Ne7/+bVuf/l1Lb/59S5/+XStf/LxIr/oKtE/3mU
|
||||||
|
Cv9ffwD/cYgZ/6WufP/W1sz/6Obi/+fm4f/p6OP/2djT/6imn/9vaV3/Vkw7/2NXQ/93aFL/hHVa/5B/
|
||||||
|
Yf+ahmb/ooxq/6iQbv+slW//rJdq/6uZYf+gmUv/lpo1/5acMf+poUz/vaRq/8Kkcv/Co3H/waJv/8Ch
|
||||||
|
bf+/oGv/v6Bq/8Chaf/Nqm//vZtm/+vdxP//7tL/7NzB/+nZvv/p2L3/6Ne7/+bVuf/l1Lb/59S5/+XS
|
||||||
|
tf/GwYL/mKc3/3eSB/9gfwD/cYgZ/6WufP/X1sz/6efk/+jn4//q6uX/2dnU/6alnv9qZFn/TkU2/1pP
|
||||||
|
Pf9sX0r/eWtS/4R0WP+OfF7/loNh/5yIZP+jjWn/rJNw/7WYdv+1m27/rJ1a/6aeTf+woVj/vqRt/8Kk
|
||||||
|
cv/DpHL/w6Jx/8Khcf/CoG//wqBu/8Ohbf/QqnP/v5tp/+vdxP//7tL/7NzB/+nZvv/p2L3/6Ne7/+bV
|
||||||
|
uf/l1Lb/6NW6/+XStf+/vnf/j6Mn/3SRAv9hgAD/cYga/6Wuff/X183/6unl/+jn5P/r6+f/2NjT/6Cf
|
||||||
|
mf9bVk3/OjIk/0Q6Kv9VSjf/YVQ+/2xdRP93Zkr/gG1P/4h1Vf+Tf13/oIpl/6mRa/+ymG7/uJ1x/72h
|
||||||
|
df/Co3f/xaV4/8ald//EpHP/v6Js/72haP+6n2T/up9i/7ugYv/Iqmj/upth/+vdxP//7tL/7NzB/+nZ
|
||||||
|
vv/p2L3/6Ne7/+bVuf/l1Lb/6dW7/+XStf+9vHL/i6Eh/3ORAP9hgAD/cYga/6awf//Y2c//6+rn/+np
|
||||||
|
5v/r6+j/2NjU/5+dmf9ZVEz/NS4j/z01Jv9LQzP/V0s5/2BUPv9rXEX/dGRK/35tUP+Jdlf/lYJe/6GL
|
||||||
|
Zf+sk2z/tppy/72gdv/Co3f/w6V3/8SldP+9o2j/saBW/6qfSv+lnUL/o50//6SeP/+yqUb/pZtB/+vd
|
||||||
|
xP//7tL/7NzB/+nZvv/p2L3/6Ne7/+bVuf/l1Lb/6dW7/+XStf+8vG//iaAd/3KRAP9hgAD/cYga/6aw
|
||||||
|
gP/Y2tD/6+vo/+no5v/n5+T/3t3a/8LAvf+fnZf/jouE/5OPhv+cl47/op2R/6ehlP+tppn/sKqb/6yj
|
||||||
|
k/+YinH/jntZ/5uFYf+tknH/tZly/7KdZv+uoFn/qaFL/6GhPP+ZnzH/kp0l/42cHP+KnBf/iZwW/4qd
|
||||||
|
Fv+VqBn/j5sf/+vdxP//7tL/7NzB/+nZvv/p2L3/6Ne7/+bVuf/l1Lb/6dW8/+XStv+3umj/gpwS/3CQ
|
||||||
|
AP9igAD/coga/6ewgP/Z2tH/7Ovp/+ro5//k4+H/5OTh/+bl5P/q6ub/7e3p//Dv6//z8+7/9fbv//f3
|
||||||
|
8f/5+fT/9ffy/+Hh3P+vpJT/jHhZ/5R/V/+ij17/opRT/5mYP/+Rmyr/iJwV/3ycAv94mwD/epsA/3qb
|
||||||
|
AP96mwD/epsA/3ucAP+EqAD/epsA/+vdxP//7tL/7NzB/+nZvv/p2L3/6Ne7/+bVuf/l1Lb/6tW9/+XS
|
||||||
|
tv+wtlz/eZcE/26OAP9jgQD/cogb/6iwgP/b29L/7u3r/+zq6f/l5uP/5ubj/+rp5//v7+3/9PTw//X2
|
||||||
|
8v/4+PT/+vv2//39+f////z/+/z5/+fn4/+zqJn/i3hV/4d9QP+DiSz/fI0W/3qSDf97lwf/e5oB/3ib
|
||||||
|
AP93mwD/eZsA/3mbAP95mwD/eZsA/3qcAP+DqAD/eZsA/+vdxP//7tL/7NzB/+nZvv/p2L3/6Ne7/+bV
|
||||||
|
uf/l1Lb/6dW9/+TStP+stFX/dZUA/22OAP9jgQD/cogb/6iwgP/c3NP/8O/s/+3s6v/n6OX/6Ojl/+vq
|
||||||
|
6P/v7uz/8vHv//Pz8P/29fL/+Pjz//v69v/+/fj//Pr6/+nm5f+sqIn/d3cw/3B7Gv9uhgj/a4sA/2+R
|
||||||
|
AP90lgD/eJoA/3ubAP97mwD/e5sA/3ubAP97mwD/e5sA/3ycAP+FqAD/e5sA/+vdxP//7tL/7NzB/+nZ
|
||||||
|
vv/p2L3/6Ne7/+bVuf/m1Lf/59W6/97Pqf+osk//dpYA/22OAP9jgQD/cogb/6ixgf/d3dX/8fHu//Du
|
||||||
|
7f/q6uj/6enn/+bl4//i4uD/4+Lg/+Xl4v/p6OX/7ezo//Hv7P/08vD/9PHx/+Hf2P+dpWz/Y3cI/2F7
|
||||||
|
AP9riAD/cI4A/3STAP93lwD/epoA/3ubAP97mwD/e5sA/3ubAP97mwD/epsA/3ucAP+EqAD/epsA/+vd
|
||||||
|
xP//7tL/7NzB/+nZvv/p2L3/6Ne7/+fVuf/o1bn/5dO0/9PJlv+hrkL/dpYA/26OAP9jgQD/cogb/6mx
|
||||||
|
gv/e3tf/8/Lw//Lx8P/w7+3/6Ojm/9LS0P+6ubb/sa+q/7e1sP/Avrj/yMS+/83Jw//RzsT/z8+//7/D
|
||||||
|
ov+Km0j/YXsA/2OAAP9tigD/cpAA/3aVAP95mAD/epoA/3ubAP97mwD/e5sA/3qbAP96mwD/epsA/3uc
|
||||||
|
AP+EqAD/epsA/+vdxP//7tL/7NzB/+nZvv/p2L3/6Ne7/+fVuf/p1rz/4dGu/8fDgv+ZqjT/dpYA/26O
|
||||||
|
AP9jgQD/cogb/6mxgv/e39j/9PTy//X08//19fP/5ubj/7q6t/+JhX7/c21i/353av+Qhnr/l458/5WT
|
||||||
|
b/+Pll7/i5hS/4WWQv9yiRv/ZoEA/2mGAP9wjQD/dJEA/3aVAP95mAD/epkA/3qbAP95mwD/d5sA/3ab
|
||||||
|
AP94mwD/fJsA/4CcBf+KqAj/f5sF/+vdxP//7tL/7NzB/+nZvv/p2L3/6Ne7/+fWuf/p1r3/39Cq/76+
|
||||||
|
c/+Spin/dpYA/2+PAP9jgQD/cogb/6myg//f4Nn/9/X0//f19f/5+ff/5eXk/66sqf9sZl3/UUY3/15R
|
||||||
|
P/9uYkj/bmk7/2ZsIf9cbwj/WXIA/113AP9jfQD/aIMA/2yIAP9wjgD/dJIA/3WVAP92mAD/d5kA/3qb
|
||||||
|
AP99mwT/gpwL/4WcEP+LnRf/kZ0h/5aeKP+iqC3/lJsm/+vdxP//7tL/7NzB/+nZvv/p2L3/6Ne7/+fW
|
||||||
|
uf/q1r//3c6m/7e7Zv+NpCD/d5YA/3CPAP9jgQD/cogb/6qzhP/h4dv/+ff2//j39//7+/n/5+fm/66s
|
||||||
|
qv9rZVz/T0Q1/1pOOf9dWi7/VV4S/1JkAv9TaQD/Vm8A/1t0AP9hewD/Z4IA/2yIAP9vjQD/c5AA/3SU
|
||||||
|
AP92lwD/eZoA/4GcC/+OnSD/nZ42/6mfSf+xn1X/tZ9a/7efXP/EqmH/tptb/+vdxP//7tL/7NzB/+nZ
|
||||||
|
vv/p2L3/6Ne7/+fWuf/r18H/2s2h/6u0Uv+FnxH/d5YA/3CPAP9jgQD/cokb/6q0hf/h4tz/+vj5//r6
|
||||||
|
+v/9/fz/6eno/7CurP9tZ2H/TEQz/0xJJv9LUxT/R1kB/0tgAP9SZwD/WG4A/1xzAP9feAD/ZH4A/2iD
|
||||||
|
AP9piQD/b44A/3uUC/+KmR//l50x/6KfQf+toVH/t6Ff/7+ga//DoHH/xKBx/8SgcP/Rqnb/wJtr/+vd
|
||||||
|
xP//7tL/7NzB/+nZvv/p2L3/6Ne7/+fWuv/t2MP/1cqa/5ysOP96mgP/d5YA/3GQAP9jgQD/cooc/6u1
|
||||||
|
hv/i493/+vn6//v7+//+//7/6urp/62rqf9hXVP/NDMV/y00AP8xQAD/NkgA/z1QAP9DVwD/SF0A/0xj
|
||||||
|
AP9SawD/W3UA/2R9AP9uhgj/fI4W/5GWMf+onVD/uaFn/8Gjcv/Do3P/wqJw/8Ggbv/An2z/v59r/8Cg
|
||||||
|
av/NqnD/vZ1n/+vdxP//7tL/7NzB/+nZvv/p2L3/6Ne7/+fWuv/r18H/zsaO/5CmI/9zlgD/d5YA/3OQ
|
||||||
|
AP9kggD/dIsc/6y2h//k5d///Pv8//39/f//////7Ovs/7Cuq/9cXEr/KC4F/yUwAP8uOwD/NEMA/zlJ
|
||||||
|
AP8/UQD/RFcA/0ldAP9OZAD/V24A/2d6Df+Bhyz/m5JL/62aYP+5n23/wKJz/8Skdv/DpHT/wqJw/8Gh
|
||||||
|
bv+/n2v/v59q/8Cgaf/Nq2//vZ1m/+vdxP//7tL/7NzB/+nZvv/p2L3/6de8/+fWuv/i0rH/v791/4mj
|
||||||
|
F/9ylgD/d5cA/3ORAP9kggD/dYwc/624h//l5+D//fz9//7+/v/+/f3/8vHx/8vKyf+Vlon/dHhf/3R6
|
||||||
|
X/98gmH/f4di/4OKY/+Gj2T/jJZo/4+ZaP9/ik7/cXoz/3x7N/+Vh1D/q5Jo/7eacv+9n3X/v6Jy/8Gk
|
||||||
|
cf/BpHD/waJu/8Chbf+/n2v/v59q/8Chaf/Nq2//vZxm/+vdxP//7tL/7NzB/+nZvv/p2L3/6ti//+jW
|
||||||
|
vP/Uy5n/q7VS/4WgD/91mAD/eJgA/3OSAP9lgwD/d44c/7G7iv/o6eP//v3+//7+/v/8/Pv/+Pj3/+7u
|
||||||
|
7f/g4N7/2dnX/9ra1//d3dr/3t7b/+Df3P/g4d3/5ufk/+bn4/++va3/lIxu/5F/Xf+dhmH/qZFo/7KY
|
||||||
|
bf+5nnD/vqJx/8Gjcf/Bo3D/waJu/8Chbf+/oGv/v6Bq/8Chaf/Nqm//vZtm/+vdxP//7tL/7NzB/+nZ
|
||||||
|
vv/p2L3/69nB/+nWvP/HxIP/mKsz/3+eBv94mQD/eJgA/3STAP9mhQD/epEe/7a/kf/s7Oj/////////
|
||||||
|
///8/Pz//Pz8//v7+//8/Pz//Pz9//38/f/9/P7//f3///79///+/f/////////////Tz8j/oJOA/5SB
|
||||||
|
Yv+dhV//qZJn/7KZbP+5nnD/vqJx/8Gjcf/Bo3D/waJu/8Chbf+/oGv/v6Bq/8Cgaf/Nqm//vZtm/+vd
|
||||||
|
xP//7tL/7NzB/+nZvv/p2L3/7NnC/+fVuP+3vGj/hKAS/3mbAf96mQD/eZgA/3WTAP9mhwD/fJUe/7/F
|
||||||
|
nP/y8PL/////////////////////////////////////////////////////////////////////////
|
||||||
|
///Y1M7/pZiF/5aDY/+ehl7/q5No/7OZbP+6nnD/vqJx/8Gkcf/BpHD/waJu/8Chbf+/n2v/v59q/8Cg
|
||||||
|
af/Nqm//vZxm/+vdxP//7tL/7NzB/+nZvv/r2sD/6de8/9fNnf+jsUT/eJoA/3aZAP97mgD/epgA/3aU
|
||||||
|
AP9rigD/hZso/8nMqf/49fv//////////////////////////////////v7///3+///9/v7//f7///3+
|
||||||
|
///9/v/////////////Z1M7/q52J/52JZ/+jimL/r5Vq/7abbv+7n3D/v6Jx/8Gkcf/BpHD/waJu/8Ch
|
||||||
|
bf+/n2v/v59q/8Cgaf/Nqm//vZ1m/+vdxP//7tL/7NzB/+rZv//u28X/4NOt/7q+bP+OpiD/eJkA/3ia
|
||||||
|
AP97mwD/eJkA/3aWAP94kwj/maZF/9HPsf/07vL/9/X2//Ly8f/u7+z/7e7r/+vs6f/q6+f/6evn/+rq
|
||||||
|
5//r6uj/7Ovq/+zs6//t7ez/8fHx//Hw8P/UzcP/saCI/6aQa/+qkWf/s5lt/7mecP+9onL/wKRz/8Gj
|
||||||
|
cv/Bo3D/waJu/8Cgbf+/n2v/v59q/8Cgaf/Nqm//vZtm/+vdxP//7tL/7NzC/+rZv//v28j/1s2c/5yt
|
||||||
|
Of97mwj/epoA/3qbAP97mwD/d5kA/3eYAP+PoCj/uLR0/9THq//Wzbf/wsSY/625ef+js3D/orFu/5+u
|
||||||
|
av+erWr/qLF7/7q1mf/Ct6f/wren/8K4pv/DuKb/xryq/8i8qf+9rpX/sZx6/6+Xbv+ymW3/uJ5x/7yh
|
||||||
|
cv/ApHP/waR0/8Gjcv/Bo3D/waJu/8Cgbf+/n2v/v59q/8Cgaf/Nq2//vZtm/+vdxP//7tL/7t3F/+zb
|
||||||
|
w//k1rb/v8B1/4miGP9zlwD/epsA/3ubAP96mQD/eJkA/4KdDv+rr1b/08Cc/9S/of+zrG7/iJUr/22H
|
||||||
|
BP9igQD/Yn8A/2R+AP9vghL/hoo5/5+RY/+pk3T/p5Jw/6eRbv+nkW3/qZJs/6qUbP+ulm7/sppw/7ae
|
||||||
|
cv+6oHP/vaJ0/7+jc//BpHT/wqR0/8Gjcv/Bo3D/waJu/8Cgbf+/n2v/v59q/8Cgaf/Nq2//vZ1m/+vd
|
||||||
|
xP//7tL/8N7I/+zbw//NyY7/nq89/3+cB/92mAD/e5sA/3ubAP93mAD/f5wI/5qqN//EvH7/3caq/9K/
|
||||||
|
mv+hpkj/c48C/2mIAP9lhgD/aYYA/3mMFP+Wl0T/rp5t/7Wgev+1nnn/tJx1/7Occ/+zm3L/s5tx/7Sb
|
||||||
|
cP+3nnL/uqF1/72kd//ApXf/waR2/8Gldf/CpnX/wqZz/8Kkcv/Co3D/waJu/8Cgbf+/n2v/v59q/8Cg
|
||||||
|
af/Nqm//vZ1m/+vdxP//79b/793G/9/TrP+vuVr/g6AP/3qaAP96mgD/e5sA/3qaAP95mgD/j6Ui/7y7
|
||||||
|
cP/dyaf/28ek/8G6ef+SpCr/cZQA/3CSAP92lAP/iZsi/6moWf/EsYX/zLOT/8mwjv/ErYb/xKyE/8Os
|
||||||
|
gv/Dq4D/wqp//8Kpff/CqHz/wqh7/8Ooev/EqHr/xKd4/8Ondv/Dp3b/w6dz/8Klcv/Co3D/waJu/8Ch
|
||||||
|
bf+/oGv/v59q/8Cgaf/Nqm//vZxm/+zdxf//8dr/5de1/7/Bdf+SqCj/eJkA/3iZAP97mwD/eZkA/3iZ
|
||||||
|
AP+HoRX/rrRW/9fInf/q0L3/0sOU/6WuSP+BnRD/dZgA/3mZBP+PoiT/sK5d/8y6jf/WvJv/0LmS/862
|
||||||
|
jv/MtIv/y7OK/8uyiP/KsYX/ya+D/8eugf/HrX//x6x9/8eqfP/Gqnv/xql5/8Sod//EqHb/xKd0/8Kl
|
||||||
|
cv/Bo3D/waJu/8Chbf+/oGv/v59q/8Cgaf/Nqm//vZtm/+7dxf//79H/z8yO/5uuNv99nQb/epsA/3uc
|
||||||
|
AP97nQD/eZoA/3+dBP+lsUX/0seU/+TQsv/m0LX/xr9+/5CmIv91mQL/fZ0D/5GmJv+2tGH/1L+T/9vC
|
||||||
|
n//ZwJv/1b2V/9O8kv/SupD/0bmO/9C3i//Pton/zrOG/8yyhP/MsIL/zK+A/8qtf//JrXz/yax6/8eq
|
||||||
|
eP/GqXf/xql1/8Snc//DpXH/w6Nv/8Kibv/BoWz/waBr/8Khav/PrHD/vJtm/+vdw//08Kz/r8FH/4qr
|
||||||
|
C/+ApQD/hacA/4WoAP+BpgD/jKsP/7C+SP/b1JT/9+LD//jiw//i1Z7/t79V/4yrC/+Epwj/o7Ux/8fE
|
||||||
|
b//l0KH/79Ow/+vRqv/nzqP/58yh/+XLnv/kypz/4sea/+HFlv/gxJT/38KR/92/j//cvo3/3L2L/9m7
|
||||||
|
if/Yu4b/17iD/9W3gf/VtYD/1LV+/9Kze//Rsnn/0bB4/9Cudv/PrXT/z6xz/8+tcv/duHn/vJxm/+bc
|
||||||
|
vv++yWb/haER/3iZAP96mgD/e5sA/3qbAP91lwD/h6EW/8TBff/i0LD/5tK3/+PQsv+7vG//l6kw/32b
|
||||||
|
A/+Kohn/qq9N/9TAlf/ew6X/2cGc/9bAmv/VvZb/1buV/9O7kf/RupD/0beO/8+1i//OtIj/zbOG/8ux
|
||||||
|
hP/LsIH/y6+B/8mtf//Gq3z/xap5/8Wpdv/Fpnb/xKZ0/8Klcf/ApHD/wKNv/8Chbf/AoWz/v59r/7+f
|
||||||
|
av/IqG7/u51m/wAAAAAAAH0CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAAAAAAAAB9AgAAAAAAADw5AAAAAAAAzgsAAAAAAAByWQAA
|
||||||
|
AAAAAM0NAAAAAAAAclkAAAAAAADMlAAAAAAAAHFUAAAAAAAAt7UAAAAAAABxVAAAAAAAAA4MAAAAAAAA
|
||||||
|
cVQAAAAAAACNNgAAAAAAAH5WAAAAAAAAmikAAAAAAABwUwAAAAAAAGEAAAAAAAAABAAAAAAAAAB9AgAA
|
||||||
|
AAAAACAAAAAAAAAAdAAAAAAAAABhAAAAAAAAACgAAAAAAAAAcgAAAAAAAAAuAAAAAAAAACkAAAAAAAAA
|
||||||
|
YwAAAAAAAAAqAAAAAAAAAHcAAAAAAAAAZwAAAAAAAABsAA==
|
||||||
|
</value>
|
||||||
|
</data>
|
||||||
|
</root>
|
@ -0,0 +1,4 @@
|
|||||||
|
// <autogenerated />
|
||||||
|
using System;
|
||||||
|
using System.Reflection;
|
||||||
|
[assembly: global::System.Runtime.Versioning.TargetFrameworkAttribute(".NETFramework,Version=v4.8", FrameworkDisplayName = ".NET Framework 4.8")]
|
14
obj/Debug/Instrument Control.csproj.FileListAbsolute.txt
Normal file
14
obj/Debug/Instrument Control.csproj.FileListAbsolute.txt
Normal file
@ -0,0 +1,14 @@
|
|||||||
|
D:\Code\Instrument Control Example\obj\Debug\Instrument Control.csproj.AssemblyReference.cache
|
||||||
|
D:\Code\Instrument Control Example\obj\Debug\Instrument Control.csproj.SuggestedBindingRedirects.cache
|
||||||
|
D:\Code\Instrument Control Example\obj\Debug\Instrument Control.csproj.ResolveComReference.cache
|
||||||
|
D:\Code\Instrument Control Example\obj\Debug\Waters.Empower.InstrumentControl.Example.FrmMain.resources
|
||||||
|
D:\Code\Instrument Control Example\obj\Debug\Waters.Empower.InstrumentControl.Example.Properties.Resources.resources
|
||||||
|
D:\Code\Instrument Control Example\obj\Debug\Instrument Control.csproj.GenerateResource.cache
|
||||||
|
D:\Code\Instrument Control Example\obj\Debug\Instrument Control.csproj.CoreCompileInputs.cache
|
||||||
|
D:\gitcode\Empower\obj\Debug\Instrument Control.csproj.AssemblyReference.cache
|
||||||
|
D:\gitcode\Empower\obj\Debug\Instrument Control.csproj.SuggestedBindingRedirects.cache
|
||||||
|
D:\gitcode\Empower\obj\Debug\Instrument Control.csproj.ResolveComReference.cache
|
||||||
|
D:\gitcode\Empower\obj\Debug\Waters.Empower.InstrumentControl.Example.FrmMain.resources
|
||||||
|
D:\gitcode\Empower\obj\Debug\Waters.Empower.InstrumentControl.Example.Properties.Resources.resources
|
||||||
|
D:\gitcode\Empower\obj\Debug\Instrument Control.csproj.GenerateResource.cache
|
||||||
|
D:\gitcode\Empower\obj\Debug\Instrument Control.csproj.CoreCompileInputs.cache
|
Binary file not shown.
Binary file not shown.
Loading…
x
Reference in New Issue
Block a user