DESKTOP-58BB7H3\ZJH пре 4 месеци
родитељ
комит
3fa58fd6cf
83 измењених фајлова са 4978 додато и 5087 уклоњено
  1. BIN
      .vs/CNAS_DBSync/v15/.suo
  2. BIN
      .vs/CNAS_DBSync/v15/Server/sqlite3/storage.ide-shm
  3. BIN
      .vs/CNAS_DBSync/v15/Server/sqlite3/storage.ide-wal
  4. +11
    -0
      CNAS_Authorize/App.config
  5. +9
    -0
      CNAS_Authorize/App.xaml
  6. +17
    -0
      CNAS_Authorize/App.xaml.cs
  7. +123
    -0
      CNAS_Authorize/CNAS_Authorize.csproj
  8. +243
    -0
      CNAS_Authorize/MachineAuth.cs
  9. +130
    -0
      CNAS_Authorize/MainWindow.xaml
  10. +204
    -0
      CNAS_Authorize/MainWindow.xaml.cs
  11. +55
    -0
      CNAS_Authorize/Properties/AssemblyInfo.cs
  12. +71
    -0
      CNAS_Authorize/Properties/Resources.Designer.cs
  13. +117
    -0
      CNAS_Authorize/Properties/Resources.resx
  14. +30
    -0
      CNAS_Authorize/Properties/Settings.Designer.cs
  15. +7
    -0
      CNAS_Authorize/Properties/Settings.settings
  16. +4
    -2
      CNAS_BalanceClient/frmHistory.cs
  17. +8
    -2
      CNAS_DBSync.sln
  18. +115
    -0
      CNAS_DBSync/ActivationForm.Designer.cs
  19. +210
    -0
      CNAS_DBSync/ActivationForm.cs
  20. +120
    -0
      CNAS_DBSync/ActivationForm.resx
  21. +15
    -3
      CNAS_DBSync/App.config
  22. +10
    -0
      CNAS_DBSync/CNAS_DBSync.csproj
  23. BIN
      CNAS_DBSync/CNAS_DBSync.frmDatabaseParams.resources
  24. +264
    -0
      CNAS_DBSync/FormSizeHelper.cs
  25. +20
    -2
      CNAS_DBSync/Program.cs
  26. +11
    -2
      CNAS_DBSync/Properties/Settings.Designer.cs
  27. +5
    -2
      CNAS_DBSync/Properties/Settings.settings
  28. +126
    -124
      CNAS_DBSync/frmSourceSetting.Designer.cs
  29. +28
    -0
      CNAS_DBSync/frmSourceSetting.cs
  30. +8
    -5
      CNAS_RunSync/frmSynchrousMain.Designer.cs
  31. +5
    -0
      CNAS_RunSync/frmSynchrousMain.cs
  32. +2
    -1
      CNAS_SyncService/SyncServiceOperation.cs
  33. +21
    -13
      CnasSynchronusClient/CnasInsertOperation.cs
  34. +10
    -0
      CnasSynchronusClient/TargetCnasData/DB2CNASDataOperation.cs
  35. +21
    -1
      CnasSynchronusClient/TargetCnasData/ICnasDataOperation.cs
  36. +42
    -1
      CnasSynchronusClient/TargetCnasData/MySQLCNASDataOperation.cs
  37. +10
    -0
      CnasSynchronusClient/TargetCnasData/MySQLCNASDataOperationByWeb.cs
  38. +10
    -0
      CnasSynchronusClient/TargetCnasData/OracleCnasDataOperation.cs
  39. +40
    -0
      CnasSynchronusDAL/DAL/MySQLDAL.cs
  40. +10
    -0
      CnasSynchronusDAL/Service/Db2DBService.cs
  41. +32
    -1
      CnasSynchronusDAL/Service/MySqlDBService.cs
  42. +10
    -0
      CnasSynchronusDAL/Service/OracleDBService.cs
  43. +19
    -2
      CnasSynchronusIDAL/ITargetDataBaseService.cs
  44. BIN
      dll.zip
  45. BIN
      dll/CNASBalanceDBManage.exe
  46. BIN
      dll/CNASBalanceDBManage.vshost.exe
  47. +49
    -0
      dll/CNASBalanceDBManage.vshost.exe.config
  48. +11
    -0
      dll/CNASBalanceDBManage.vshost.exe.manifest
  49. BIN
      dll/CNAS_BalanceClient.exe
  50. +27
    -27
      dll/CNAS_BalanceClient.exe.config
  51. BIN
      dll/CNAS_DBSync.exe
  52. +15
    -3
      dll/CNAS_DBSync.exe.config
  53. BIN
      dll/CNAS_DBSync.vshost.exe
  54. +87
    -0
      dll/CNAS_DBSync.vshost.exe.config
  55. BIN
      dll/CNAS_RunSync.exe
  56. BIN
      dll/CNAS_SerialPort.dll
  57. BIN
      dll/CNAS_SyncService.exe
  58. +35
    -35
      dll/CNAS_SyncService.exe.config
  59. BIN
      dll/CnasLocalIDAL.dll
  60. BIN
      dll/CnasSynchronousCommon.dll
  61. BIN
      dll/CnasSynchronusClient.dll
  62. BIN
      dll/CnasSynchronusDAL.dll
  63. BIN
      dll/CnasSynchronusIDAL.dll
  64. BIN
      dll/CnasSynchrousModel.dll
  65. +4
    -0
      dll/Data/FormSize.xml
  66. +1
    -1
      dll/Data/SyncCnasDataBase.mes
  67. +1
    -1
      dll/Data/SyncInStrumentData.mes
  68. +1
    -1
      dll/Data/SyncOperationPwd.mes
  69. +1
    -1
      dll/Data/SyncPlatDataBase.mes
  70. +1
    -1
      dll/DataConfig/SystemFormatConfig.xml
  71. BIN
      dll/Document/AshMeltingPoint.xls
  72. +6
    -0
      dll/ErrorLog/20241231.txt
  73. +1
    -0
      dll/ErrorLog/20250131.txt
  74. +22
    -0
      dll/ErrorLog/20250212.txt
  75. +2471
    -4852
      dll/ErrorLog/20250213.txt
  76. +33
    -0
      dll/ErrorLog/20250213.txt20250213.txt
  77. BIN
      dll/Newtonsoft.Json.dll
  78. +14
    -0
      dll/ServiceLog/20250213.txt
  79. BIN
      dll/SyncLocalDAL.dll
  80. BIN
      dll/WF-ChangeGUID.exe
  81. +4
    -4
      dll/WF-ChangeGUID.exe.config
  82. +1
    -0
      dll/activation.config
  83. BIN
      dll23.zip

BIN
.vs/CNAS_DBSync/v15/.suo Прегледај датотеку


BIN
.vs/CNAS_DBSync/v15/Server/sqlite3/storage.ide-shm Прегледај датотеку


BIN
.vs/CNAS_DBSync/v15/Server/sqlite3/storage.ide-wal Прегледај датотеку


+ 11
- 0
CNAS_Authorize/App.config Прегледај датотеку

@@ -0,0 +1,11 @@
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<appSettings>
<add key="TargetDBType" value="Oracle"/>
<add key="InitalOperationPwd" value="123456"/>
<add key="StartWebApiUrl" value="0"/>
</appSettings>
<startup>
<supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.8" />
</startup>
</configuration>

+ 9
- 0
CNAS_Authorize/App.xaml Прегледај датотеку

@@ -0,0 +1,9 @@
<Application x:Class="CNAS_Authorize.App"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:local="clr-namespace:CNAS_Authorize"
StartupUri="MainWindow.xaml">
<Application.Resources>
</Application.Resources>
</Application>

+ 17
- 0
CNAS_Authorize/App.xaml.cs Прегледај датотеку

@@ -0,0 +1,17 @@
using System;
using System.Collections.Generic;
using System.Configuration;
using System.Data;
using System.Linq;
using System.Threading.Tasks;
using System.Windows;

namespace CNAS_Authorize
{
/// <summary>
/// App.xaml 的交互逻辑
/// </summary>
public partial class App : Application
{
}
}

+ 123
- 0
CNAS_Authorize/CNAS_Authorize.csproj Прегледај датотеку

@@ -0,0 +1,123 @@
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="14.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>{9B4A6989-A7A6-41C0-ADFE-D470EB972D79}</ProjectGuid>
<OutputType>WinExe</OutputType>
<AppDesignerFolder>Properties</AppDesignerFolder>
<RootNamespace>CNAS_Authorize</RootNamespace>
<AssemblyName>CNAS_Authorize</AssemblyName>
<TargetFrameworkVersion>v4.8</TargetFrameworkVersion>
<FileAlignment>512</FileAlignment>
<ProjectTypeGuids>{60dc8134-eba5-43b8-bcc9-bb4bc16c2548};{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}</ProjectTypeGuids>
<WarningLevel>4</WarningLevel>
<AutoGenerateBindingRedirects>true</AutoGenerateBindingRedirects>
</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.Data" />
<Reference Include="System.Xml" />
<Reference Include="Microsoft.CSharp" />
<Reference Include="System.Core" />
<Reference Include="System.Xml.Linq" />
<Reference Include="System.Data.DataSetExtensions" />
<Reference Include="System.Net.Http" />
<Reference Include="System.Xaml">
<RequiredTargetFramework>4.0</RequiredTargetFramework>
</Reference>
<Reference Include="WindowsBase" />
<Reference Include="PresentationCore" />
<Reference Include="PresentationFramework" />
</ItemGroup>
<ItemGroup>
<ApplicationDefinition Include="App.xaml">
<Generator>MSBuild:Compile</Generator>
<SubType>Designer</SubType>
</ApplicationDefinition>
<Page Include="MainWindow.xaml">
<Generator>MSBuild:Compile</Generator>
<SubType>Designer</SubType>
</Page>
<Compile Include="App.xaml.cs">
<DependentUpon>App.xaml</DependentUpon>
<SubType>Code</SubType>
</Compile>
<Compile Include="MachineAuth.cs" />
<Compile Include="MainWindow.xaml.cs">
<DependentUpon>MainWindow.xaml</DependentUpon>
<SubType>Code</SubType>
</Compile>
</ItemGroup>
<ItemGroup>
<Compile Include="Properties\AssemblyInfo.cs">
<SubType>Code</SubType>
</Compile>
<Compile Include="Properties\Resources.Designer.cs">
<AutoGen>True</AutoGen>
<DesignTime>True</DesignTime>
<DependentUpon>Resources.resx</DependentUpon>
</Compile>
<Compile Include="Properties\Settings.Designer.cs">
<AutoGen>True</AutoGen>
<DependentUpon>Settings.settings</DependentUpon>
<DesignTimeSharedInput>True</DesignTimeSharedInput>
</Compile>
<EmbeddedResource Include="Properties\Resources.resx">
<Generator>ResXFileCodeGenerator</Generator>
<LastGenOutput>Resources.Designer.cs</LastGenOutput>
</EmbeddedResource>
<None Include="Properties\Settings.settings">
<Generator>SettingsSingleFileGenerator</Generator>
<LastGenOutput>Settings.Designer.cs</LastGenOutput>
</None>
<AppDesigner Include="Properties\" />
</ItemGroup>
<ItemGroup>
<None Include="App.config">
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
</None>
</ItemGroup>
<ItemGroup>
<ProjectReference Include="..\CnasSynchronousCommon\CnasSynchronousCommon.csproj">
<Project>{8E0E5F2E-2BA2-4952-9F31-34C072CD86B3}</Project>
<Name>CnasSynchronousCommon</Name>
</ProjectReference>
<ProjectReference Include="..\CnasSynchronusClient\CnasSynchronusBLL.csproj">
<Project>{CB9B6D92-3CC4-46C6-92E8-A6FD0AD48041}</Project>
<Name>CnasSynchronusBLL</Name>
</ProjectReference>
<ProjectReference Include="..\CnasSynchrousModel\CnasSynchrousModel.csproj">
<Project>{0C3243F5-729E-409C-B406-C6DE56E632E0}</Project>
<Name>CnasSynchrousModel</Name>
</ProjectReference>
</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>

+ 243
- 0
CNAS_Authorize/MachineAuth.cs Прегледај датотеку

@@ -0,0 +1,243 @@
using CnasSynchronusClient;
using CnasSynchrousModel;
using System;
using System.Collections.Generic;
using System.Data;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows;

namespace CNAS_Authorize
{
public class Machine
{
public string FactoryName { get; set; }
public string MachineCode { get; set; }
public string ImportTime { get; set; }
public bool IsGenerated { get; set; }

public Machine(string name, string code, string time, bool isGen)
{
FactoryName = name;
MachineCode = code;
ImportTime = time;
IsGenerated = isGen;
}

}

class MachineAuth
{
/// <summary>
/// 所有数据行
/// </summary>
private List<Machine> m_machines;
/// <summary>
/// 编码过滤
/// </summary>
private string m_filter_code;
/// <summary>
/// 名称过滤
/// </summary>
private string m_filter_factory;
//以下都是过滤过的数据
/// <summary>
/// 过滤过的数据
/// </summary>
private List<Machine> m_rangle;
/// <summary>
/// 过滤过的当前页
/// </summary>
private List<Machine> m_page;
/// <summary>
/// 每页数量
/// </summary>
private int m_pageSize;
/// <summary>
/// 页号
/// </summary>
private int m_pageIndex;
/// <summary>
/// 总页数
/// </summary>
private int m_pageCount;


public MachineAuth()
{
m_pageSize = 10;
m_pageIndex = 1;
}
DataBaseInfo targetDataBase = new DataBaseInfo();
public void Load()
{
//加载CNAS数据库配置
targetDataBase = FileOperation.GetLocalCnasDB();
if (!CnasDataOperationFact.CnasDataOperation().TestConnect(targetDataBase))
{
MessageBox.Show("CNAS数据库无法正常连接...", "提示");
return;
}


m_machines = new List<Machine>();
////1.加载数据
DataTable dtmacaddressinfo = CnasDataOperationFact.CnasDataOperation().GetTableData(targetDataBase, "select * from macaddress");
if (dtmacaddressinfo != null && dtmacaddressinfo.Rows.Count > 0)
{
List<string> lstCnasTables = new List<string>();
foreach (DataRow dr in dtmacaddressinfo.Rows)
{
Machine m = new Machine( dr["PLANTCODE"].ToString(), dr["MAC_ADDRESS"].ToString(), dr["CREATETIME"].ToString(), true);
m_machines.Add(m);
lstCnasTables.Add(dr["MAC_ADDRESS"].ToString());
}
}

m_rangle = new List<Machine>();
m_rangle.AddRange(m_machines);

m_pageSize = 10;
m_pageIndex = 1;
m_pageCount = (m_rangle.Count / m_pageSize) + (m_rangle.Count % m_pageSize == 0 ? 0 : 1);

m_page = getPageData(m_pageIndex);

}

public int PageSize
{
get { return m_pageSize; }
set
{
m_pageSize = value;
updateView();
}
}

public string CurrentPage
{
get
{
return m_pageCount == 0 ? "" : string.Format("{0} / {1}", m_pageIndex, m_pageCount);
}
set
{

}
}

public int TotalCount
{
get
{
return m_machines == null ? 0 : m_machines.Count;
}
set
{

}
}

private void updateView()
{
List<Machine> view = new List<Machine>();
if (!string.IsNullOrEmpty(m_filter_code) || !string.IsNullOrEmpty(m_filter_factory))
{
foreach (Machine item in m_machines)
{
bool flag = true;
if (!string.IsNullOrEmpty(m_filter_code))
{
if (item.MachineCode.IndexOf(m_filter_code) == -1)
{
flag = false;
}
}
if (!string.IsNullOrEmpty(m_filter_factory))
{
if (item.FactoryName.IndexOf(m_filter_factory) == -1)
{
flag = false;
}
}
if (flag)
{
view.Add(item);
}
}
}
else
{
view.AddRange(m_machines);
}
m_rangle = view;
m_pageIndex = 1;
m_pageCount = (m_rangle.Count / m_pageSize) + (m_rangle.Count % m_pageSize == 0 ? 0 : 1);
m_page = getPageData(m_pageIndex);
}

public void ChangeFilter(string code, string factory)
{
this.m_filter_code = code;
this.m_filter_factory = factory;

updateView();
}

public List<Machine> Page
{
get
{
return m_page;
}
}

private List<Machine> getPageData(int pageIndex)
{
int index = (pageIndex - 1) * m_pageSize;
List<Machine> page = new List<Machine>(m_pageSize);
for (int i = 0; i < m_pageSize && index < m_rangle.Count; i++)
{
page.Add(m_rangle[index]);
index++;
}
return page;
}

public List<Machine> NextPage(out bool ok)
{
int index = m_pageIndex * m_pageSize;
if (m_rangle == null || index >= m_rangle.Count)
{
ok = false;
return null;
}

m_pageIndex++;
m_page = getPageData(m_pageIndex);

ok = true;
return m_page;
}

public List<Machine> PrevPage(out bool ok)
{
if (m_pageIndex == 1 || m_rangle == null)
{
ok = false;
return null;
}
m_pageIndex--;

m_page = getPageData(m_pageIndex);

ok = true;
return m_page;

}


}
}

+ 130
- 0
CNAS_Authorize/MainWindow.xaml Прегледај датотеку

@@ -0,0 +1,130 @@
<Window x:Class="CNAS_Authorize.MainWindow"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:local="clr-namespace:CNAS_Authorize"
mc:Ignorable="d"
Title="取数端授权程序" Height="460" Width="805" Loaded="Window_Loaded" SizeChanged="Window_SizeChanged">
<DockPanel>
<!--NORTH部分:固定高度,包含两个查询条件-->
<Grid x:Name="northPanel" Margin="10" Height="60" DockPanel.Dock="Top">
<Grid.RowDefinitions>
<RowDefinition Height="Auto"/>
<RowDefinition Height="Auto"/>
</Grid.RowDefinitions>

<StackPanel Grid.Row="0" Orientation="Horizontal">
<Label x:Name="lbMachine" Content="机器识别码:" Width="100" />
<TextBox x:Name="edtMachine" Width="350" >
<TextBox.Resources>
<VisualBrush x:Key="HintText" TileMode="None" Opacity="0.5" Stretch="None" AlignmentX="Left">
<VisualBrush.Visual>
<TextBlock FontStyle="Italic" Text="请输入机器识别码进行查询后在下方列表中下载对应激活码,如查询不到机器识别码则填写电厂名称后进行导入"/>
</VisualBrush.Visual>
</VisualBrush>
</TextBox.Resources>
<TextBox.Style>
<Style TargetType="TextBox">
<Style.Triggers>
<Trigger Property="Text" Value="{x:Null}">
<Setter Property="Background" Value="{StaticResource HintText}"/>
</Trigger>
<Trigger Property="Text" Value="">
<Setter Property="Background" Value="{StaticResource HintText}"/>
</Trigger>
</Style.Triggers>
</Style>
</TextBox.Style>
</TextBox>
<Button x:Name="btnQuery" Content="搜索" Width="60" Click="Query_Click" />
</StackPanel>

<StackPanel Grid.Row="1" Orientation="Horizontal">
<Label Content="授权电厂名称:" Width="100" />
<TextBox x:Name="edtFactory" Width="350" >
<TextBox.Resources>
<VisualBrush x:Key="HintText" TileMode="None" Opacity="0.5" Stretch="None" AlignmentX="Left">
<VisualBrush.Visual>
<TextBlock FontStyle="Italic" Text="请输入电厂名称,非必填"/>
</VisualBrush.Visual>
</VisualBrush>
</TextBox.Resources>
<TextBox.Style>
<Style TargetType="TextBox">
<Style.Triggers>
<Trigger Property="Text" Value="{x:Null}">
<Setter Property="Background" Value="{StaticResource HintText}"/>
</Trigger>
<Trigger Property="Text" Value="">
<Setter Property="Background" Value="{StaticResource HintText}"/>
</Trigger>
</Style.Triggers>
</Style>
</TextBox.Style>
</TextBox>
<Button x:Name="btnConfirmImport" Content="确认导入" Width="60" Click="ConfirmImport_Click" />
</StackPanel>
</Grid>
<Grid x:Name="southPanel" DockPanel.Dock="Bottom" Height="30">
<Grid.RowDefinitions>
<RowDefinition Height="Auto"/>
</Grid.RowDefinitions>

<StackPanel Grid.Row="0" Orientation="Horizontal" HorizontalAlignment="Center">
<Label Content="共有条数:" />
<TextBox Width="50" Text="{Binding TotalCount}" IsEnabled="False" VerticalAlignment="Center" VerticalContentAlignment="Center" HorizontalContentAlignment="Center" />
<Button x:Name="btnPrev" Content="上一页" Margin="5" Click="PrevPage_Click" />
<Button x:Name="btnNext" Content="下一页" Margin="5" Click="NextPage_Click" />
<TextBox Width="50" Text="{Binding CurrentPage}" IsEnabled="False" VerticalAlignment="Center" VerticalContentAlignment="Center" HorizontalContentAlignment="Center" />
</StackPanel>
</Grid>
<!--CENTER部分:表格,包含列:"电厂名称"、"机器识别码"、"导入时间"、"是否已经生成激活码"和"操作"6列-->
<ScrollViewer x:Name="centerPanel" Margin="10">
<DataGrid Name="dataGrid"
AutoGenerateColumns="False"
SelectionMode="Single"
VerticalAlignment="Stretch"
HorizontalAlignment="Left"
Width="750"
Height="300" IsReadOnly="True">
<!--列定义-->
<DataGrid.Columns>
<DataGridTextColumn Binding="{Binding FactoryName}" Header="电厂名称" Width="120" CanUserSort="False" />
<DataGridTextColumn Binding="{Binding MachineCode}" Header="机器识别码" Width="220" CanUserSort="False" />
<DataGridTextColumn Binding="{Binding ImportTime}" Header="导入时间" Width="100" CanUserSort="False" />
<DataGridCheckBoxColumn Binding="{Binding IsGenerated}"
Header="是否已经生成激活码"
Width="130"
CanUserSort="False">
<DataGridCheckBoxColumn.ElementStyle>
<Style TargetType="CheckBox">
<Setter Property="IsEnabled" Value="False"/>
<Setter Property="HorizontalAlignment" Value="Center"/>
<Setter Property="VerticalAlignment" Value="Center"/>
</Style>
</DataGridCheckBoxColumn.ElementStyle>
<DataGridCheckBoxColumn.HeaderStyle>
<Style TargetType="DataGridColumnHeader">
<Setter Property="HorizontalContentAlignment" Value="Center"/>
</Style>
</DataGridCheckBoxColumn.HeaderStyle>
</DataGridCheckBoxColumn>
<DataGridTemplateColumn Header="操作" Width="100">
<DataGridTemplateColumn.CellTemplate>
<DataTemplate>
<Button Content="下载激活码"
Click="DownloadActivationCode_Click"
Margin="5"
Height="25"/>
</DataTemplate>
</DataGridTemplateColumn.CellTemplate>
</DataGridTemplateColumn>
</DataGrid.Columns>
</DataGrid>
</ScrollViewer>

</DockPanel>
</Window>

+ 204
- 0
CNAS_Authorize/MainWindow.xaml.cs Прегледај датотеку

@@ -0,0 +1,204 @@
using CnasSynchronousCommon;
using CnasSynchronusClient;
using System;
using System.Collections.Generic;
using System.Data;
using System.Linq;
using System.Security.Cryptography;
using System.Text;
using System.Threading.Tasks;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Data;
using System.Windows.Documents;
using System.Windows.Input;
using System.Windows.Media;
using System.Windows.Media.Imaging;
using System.Windows.Navigation;
using System.Windows.Shapes;

namespace CNAS_Authorize
{
/// <summary>
/// MainWindow.xaml 的交互逻辑
/// </summary>
public partial class MainWindow : Window
{

private MachineAuth m_machines;

public MainWindow()
{
InitializeComponent();

}

private void Window_Loaded(object sender, RoutedEventArgs e)
{
this.LoadData();
}

private void LoadData()
{
m_machines = new MachineAuth();
m_machines.Load();
dataGrid.ItemsSource = m_machines.Page;
this.DataContext = m_machines;
}

private void Window_SizeChanged(object sender, SizeChangedEventArgs e)
{
if (this.Width < 500) return;
dataGrid.Width = this.Width - 48;
dataGrid.Height = centerPanel.Height;

//设置列宽
double colWidth = this.Width - 60;// centerPanel.Width;
for (int i = 1; i < dataGrid.Columns.Count; i++)
{
colWidth = colWidth - dataGrid.Columns[i].Width.Value;
}
if (colWidth > 0)
dataGrid.Columns[0].Width = colWidth;

edtMachine.Width = this.Width - lbMachine.Width - btnQuery.Width - 48;
edtFactory.Width = edtMachine.Width;

}

private void refreshBind()
{
this.DataContext = null;
this.DataContext = m_machines;
}

private void PrevPage_Click(object sender, RoutedEventArgs e)
{
bool ok;
List<Machine> page = m_machines.PrevPage(out ok);
if (ok)
{
dataGrid.ItemsSource = page;
refreshBind();
}


}

private void NextPage_Click(object sender, RoutedEventArgs e)
{
bool ok;
List<Machine> page = m_machines.NextPage(out ok);
if (ok)
{
dataGrid.ItemsSource = page;
refreshBind();
}

}

private void Query_Click(object sender, RoutedEventArgs e)
{
m_machines.ChangeFilter(edtMachine.Text.Trim(), edtFactory.Text.Trim());
dataGrid.ItemsSource = m_machines.Page;
refreshBind();
}

private void ConfirmImport_Click(object sender, RoutedEventArgs e)
{

//加载CNAS数据库配置
var targetDataBase = FileOperation.GetLocalCnasDB();
if (!CnasDataOperationFact.CnasDataOperation().TestConnect(targetDataBase))
{
MessageBox.Show("CNAS数据库无法正常连接...", "提示");
return;
}

var existData = CnasDataOperationFact.CnasDataOperation().GetTableData(targetDataBase, $"select * from macaddress where MAC_ADDRESS='{edtMachine.Text.Trim()}'");
if(existData!=null&& existData.Rows.Count > 0)
{
MessageBox.Show("已经导入!");
return;
}
StringBuilder sb = new StringBuilder();
sb.AppendFormat($"insert into macaddress(MAC_ADDRESS,PLANTCODE,CREATETIME,FACILITY_STYLE) VALUES('{edtMachine.Text.Trim()}','{edtFactory.Text.Trim()}',now(),'999')");

//1.加载数据
var flag = CnasDataOperationFact.CnasDataOperation().InsertTableData(targetDataBase, sb.ToString());
if (flag)
{
AppLog.ServiceInfo("导入成功");
MessageBox.Show("导入成功...", "提示");
this.LoadData();
}
else
{
MessageBox.Show("导入失败...", "提示");
}
}

private void DownloadActivationCode_Click(object sender, RoutedEventArgs e)
{
var button = sender as Button;
var machine = button.DataContext as Machine;
if (machine != null)
{
try
{
// 生成激活码
string activationCode = GenerateActivationCode(machine.MachineCode);

// 创建保存文件对话框
var saveFileDialog = new Microsoft.Win32.SaveFileDialog
{
FileName = $"激活码_{machine.MachineCode}_{DateTime.Now:yyyyMMdd}",
DefaultExt = ".txt",
Filter = "文本文件|*.txt"
};

if (saveFileDialog.ShowDialog() == true)
{
// 将激活码写入文件
System.IO.File.WriteAllText(saveFileDialog.FileName, activationCode);
MessageBox.Show("激活码已成功保存!", "提示", MessageBoxButton.OK, MessageBoxImage.Information);

// 更新状态
machine.IsGenerated = true;
refreshBind();
}
}
catch (Exception ex)
{
MessageBox.Show($"下载激活码失败: {ex.Message}", "错误", MessageBoxButton.OK, MessageBoxImage.Error);
}
}
}

private string GenerateActivationCode(string machineCode)
{
// 这里实现激活码生成算法
// 示例:简单的加密算法,实际应用中应该使用更安全的加密方式
using (var md5 = System.Security.Cryptography.MD5.Create())
{
// 加入时间戳使得生成的激活码具有时效性
string input = machineCode + DateTime.Now.ToString("yyyyMMdd");
byte[] inputBytes = Encoding.UTF8.GetBytes(input);
byte[] hashBytes = md5.ComputeHash(inputBytes);

// 转换为16进制字符串
StringBuilder sb = new StringBuilder();
for (int i = 0; i < hashBytes.Length; i++)
{
sb.Append(hashBytes[i].ToString("X2"));
// 每4个字符添加一个分隔符,提高可读性
if ((i + 1) % 4 == 0 && i != hashBytes.Length - 1)
{
sb.Append("-");
}
}
return sb.ToString();
}
}
}
}

+ 55
- 0
CNAS_Authorize/Properties/AssemblyInfo.cs Прегледај датотеку

@@ -0,0 +1,55 @@
using System.Reflection;
using System.Resources;
using System.Runtime.CompilerServices;
using System.Runtime.InteropServices;
using System.Windows;

// 有关程序集的一般信息由以下
// 控制。更改这些特性值可修改
// 与程序集关联的信息。
[assembly: AssemblyTitle("CNAS_Authorize")]
[assembly: AssemblyDescription("")]
[assembly: AssemblyConfiguration("")]
[assembly: AssemblyCompany("")]
[assembly: AssemblyProduct("CNAS_Authorize")]
[assembly: AssemblyCopyright("Copyright © 2025")]
[assembly: AssemblyTrademark("")]
[assembly: AssemblyCulture("")]

//将 ComVisible 设置为 false 将使此程序集中的类型
//对 COM 组件不可见。 如果需要从 COM 访问此程序集中的类型,
//请将此类型的 ComVisible 特性设置为 true。
[assembly: ComVisible(false)]

//若要开始生成可本地化的应用程序,请
//<PropertyGroup> 中的 .csproj 文件中
//例如,如果您在源文件中使用的是美国英语,
//使用的是美国英语,请将 <UICulture> 设置为 en-US。 然后取消
//对以下 NeutralResourceLanguage 特性的注释。 更新
//以下行中的“en-US”以匹配项目文件中的 UICulture 设置。

//[assembly: NeutralResourcesLanguage("en-US", UltimateResourceFallbackLocation.Satellite)]


[assembly: ThemeInfo(
ResourceDictionaryLocation.None, //主题特定资源词典所处位置
//(当资源未在页面
//或应用程序资源字典中找到时使用)
ResourceDictionaryLocation.SourceAssembly //常规资源词典所处位置
//(当资源未在页面
//、应用程序或任何主题专用资源字典中找到时使用)
)]


// 程序集的版本信息由下列四个值组成:
//
// 主版本
// 次版本
// 生成号
// 修订号
//
//可以指定所有这些值,也可以使用“生成号”和“修订号”的默认值,
// 方法是按如下所示使用“*”: :
// [assembly: AssemblyVersion("1.0.*")]
[assembly: AssemblyVersion("1.0.0.0")]
[assembly: AssemblyFileVersion("1.0.0.0")]

+ 71
- 0
CNAS_Authorize/Properties/Resources.Designer.cs Прегледај датотеку

@@ -0,0 +1,71 @@
//------------------------------------------------------------------------------
// <auto-generated>
// 此代码由工具生成。
// 运行时版本: 4.0.30319.42000
//
// 对此文件的更改可能导致不正确的行为,如果
// 重新生成代码,则所做更改将丢失。
// </auto-generated>
//------------------------------------------------------------------------------

namespace CNAS_Authorize.Properties
{


/// <summary>
/// 强类型资源类,用于查找本地化字符串等。
/// </summary>
// 此类是由 StronglyTypedResourceBuilder
// 类通过类似于 ResGen 或 Visual Studio 的工具自动生成的。
// 若要添加或删除成员,请编辑 .ResX 文件,然后重新运行 ResGen
// (以 /str 作为命令选项),或重新生成 VS 项目。
[global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Resources.Tools.StronglyTypedResourceBuilder", "4.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 ((resourceMan == null))
{
global::System.Resources.ResourceManager temp = new global::System.Resources.ResourceManager("CNAS_Authorize.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
- 0
CNAS_Authorize/Properties/Resources.resx Прегледај датотеку

@@ -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>

+ 30
- 0
CNAS_Authorize/Properties/Settings.Designer.cs Прегледај датотеку

@@ -0,0 +1,30 @@
//------------------------------------------------------------------------------
// <auto-generated>
// This code was generated by a tool.
// Runtime Version:4.0.30319.42000
//
// Changes to this file may cause incorrect behavior and will be lost if
// the code is regenerated.
// </auto-generated>
//------------------------------------------------------------------------------

namespace CNAS_Authorize.Properties
{


[global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
[global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.Editors.SettingsDesigner.SettingsSingleFileGenerator", "11.0.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
- 0
CNAS_Authorize/Properties/Settings.settings Прегледај датотеку

@@ -0,0 +1,7 @@
<?xml version='1.0' encoding='utf-8'?>
<SettingsFile xmlns="uri:settings" CurrentProfile="(Default)">
<Profiles>
<Profile Name="(Default)" />
</Profiles>
<Settings />
</SettingsFile>

+ 4
- 2
CNAS_BalanceClient/frmHistory.cs Прегледај датотеку

@@ -30,7 +30,8 @@ namespace CNAS_BalanceClient

private void comType_SelectedValueChanged(object sender, EventArgs e)
{
switch (comType.SelectedItem)
string selectedItem = comType.SelectedItem == null ? "" : comType.SelectedItem.ToString();
switch (selectedItem)
{
case "全水分":
dgvQuanShuiFen.Visible = true;
@@ -71,7 +72,8 @@ namespace CNAS_BalanceClient
if (this.txtCode.Text.Trim() != "")
lstFilterData = lstFilterData.Where(s => s.Sample_Number == this.txtCode.Text.Trim()).ToList<LaboratoryTest>();
//筛选类型
switch (comType.SelectedItem)
string selectedIteem = comType.SelectedItem == null ? "" : comType.SelectedItem.ToString();
switch (selectedIteem)
{
case "全水分":
lstFilterData = lstFilterData.Where(s => s.DataType == "ARB").ToList<LaboratoryTest>();


+ 8
- 2
CNAS_DBSync.sln Прегледај датотеку

@@ -1,7 +1,7 @@

Microsoft Visual Studio Solution File, Format Version 12.00
# Visual Studio 15
VisualStudioVersion = 15.0.28307.705
# Visual Studio 14
VisualStudioVersion = 14.0.25420.1
MinimumVisualStudioVersion = 10.0.40219.1
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "CnasSynchronusDAL", "CnasSynchronusDAL\CnasSynchronusDAL.csproj", "{F4EC1B78-EFF4-4D04-AE79-631D220187AF}"
EndProject
@@ -31,6 +31,8 @@ Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "WF-ChangeGUID", "WF-ChangeG
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "CNAS_SerialPort", "CNAS_SerialPort\CNAS_SerialPort.csproj", "{ABB56058-B6FD-4747-A4E9-9C9361D6D993}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "CNAS_Authorize", "CNAS_Authorize\CNAS_Authorize.csproj", "{9B4A6989-A7A6-41C0-ADFE-D470EB972D79}"
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Any CPU = Debug|Any CPU
@@ -93,6 +95,10 @@ Global
{ABB56058-B6FD-4747-A4E9-9C9361D6D993}.Debug|Any CPU.Build.0 = Debug|Any CPU
{ABB56058-B6FD-4747-A4E9-9C9361D6D993}.Release|Any CPU.ActiveCfg = Release|Any CPU
{ABB56058-B6FD-4747-A4E9-9C9361D6D993}.Release|Any CPU.Build.0 = Release|Any CPU
{9B4A6989-A7A6-41C0-ADFE-D470EB972D79}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{9B4A6989-A7A6-41C0-ADFE-D470EB972D79}.Debug|Any CPU.Build.0 = Debug|Any CPU
{9B4A6989-A7A6-41C0-ADFE-D470EB972D79}.Release|Any CPU.ActiveCfg = Release|Any CPU
{9B4A6989-A7A6-41C0-ADFE-D470EB972D79}.Release|Any CPU.Build.0 = Release|Any CPU
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE


+ 115
- 0
CNAS_DBSync/ActivationForm.Designer.cs Прегледај датотеку

@@ -0,0 +1,115 @@
namespace CNAS_DBSync
{
partial class ActivationForm
{
private System.ComponentModel.IContainer components = null;

protected override void Dispose(bool disposing)
{
if (disposing && (components != null))
{
components.Dispose();
}
base.Dispose(disposing);
}

private void InitializeComponent()
{
this.lblTitle = new System.Windows.Forms.Label();
this.lblDescription = new System.Windows.Forms.Label();
this.lblActivationCode = new System.Windows.Forms.Label();
this.txtActivationCode = new System.Windows.Forms.TextBox();
this.btnActivate = new System.Windows.Forms.Button();
this.lnkDownloadCode = new System.Windows.Forms.LinkLabel();
this.SuspendLayout();
//
// lblTitle
//
this.lblTitle.Location = new System.Drawing.Point(0, 0);
this.lblTitle.Name = "lblTitle";
this.lblTitle.Size = new System.Drawing.Size(100, 23);
this.lblTitle.TabIndex = 0;
//
// lblDescription
//
this.lblDescription.Font = new System.Drawing.Font("微软雅黑", 10F);
this.lblDescription.ForeColor = System.Drawing.Color.Red;
this.lblDescription.Location = new System.Drawing.Point(20, 60);
this.lblDescription.Name = "lblDescription";
this.lblDescription.Size = new System.Drawing.Size(560, 40);
this.lblDescription.TabIndex = 1;
this.lblDescription.Text = "请点击上方按钮下载机器识别码,然后将机器识别码发给平台管理员申请授权文件后进行激活,激活后才可正常使用取数仪器客户端。";
//
// lblActivationCode
//
this.lblActivationCode.AutoSize = true;
this.lblActivationCode.Location = new System.Drawing.Point(20, 120);
this.lblActivationCode.Name = "lblActivationCode";
this.lblActivationCode.Size = new System.Drawing.Size(69, 20);
this.lblActivationCode.TabIndex = 2;
this.lblActivationCode.Text = "激活码:";
//
// txtActivationCode
//
this.txtActivationCode.Location = new System.Drawing.Point(20, 140);
this.txtActivationCode.Multiline = true;
this.txtActivationCode.Name = "txtActivationCode";
this.txtActivationCode.ScrollBars = System.Windows.Forms.ScrollBars.Vertical;
this.txtActivationCode.Size = new System.Drawing.Size(840, 225);
this.txtActivationCode.TabIndex = 0;
//
// btnActivate
//
this.btnActivate.Location = new System.Drawing.Point(370, 460);
this.btnActivate.Name = "btnActivate";
this.btnActivate.Size = new System.Drawing.Size(100, 30);
this.btnActivate.TabIndex = 3;
this.btnActivate.Text = "输入激活";
this.btnActivate.Click += new System.EventHandler(this.btnActivate_Click);
//
// lnkDownloadCode
//
this.lnkDownloadCode.ActiveLinkColor = System.Drawing.Color.FromArgb(((int)(((byte)(0)))), ((int)(((byte)(102)))), ((int)(((byte)(204)))));
this.lnkDownloadCode.AutoSize = true;
this.lnkDownloadCode.Font = new System.Drawing.Font("微软雅黑", 10F);
this.lnkDownloadCode.LinkBehavior = System.Windows.Forms.LinkBehavior.HoverUnderline;
this.lnkDownloadCode.LinkColor = System.Drawing.Color.FromArgb(((int)(((byte)(0)))), ((int)(((byte)(102)))), ((int)(((byte)(204)))));
this.lnkDownloadCode.Location = new System.Drawing.Point(20, 23);
this.lnkDownloadCode.Name = "lnkDownloadCode";
this.lnkDownloadCode.Size = new System.Drawing.Size(129, 23);
this.lnkDownloadCode.TabIndex = 4;
this.lnkDownloadCode.TabStop = true;
this.lnkDownloadCode.Text = "下载机器识别码";
this.lnkDownloadCode.LinkClicked += new System.Windows.Forms.LinkLabelLinkClickedEventHandler(this.lnkDownloadCode_LinkClicked);
//
// ActivationForm
//
this.AutoScaleDimensions = new System.Drawing.SizeF(9F, 20F);
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
this.ClientSize = new System.Drawing.Size(909, 563);
this.Controls.Add(this.lblTitle);
this.Controls.Add(this.lblDescription);
this.Controls.Add(this.lblActivationCode);
this.Controls.Add(this.txtActivationCode);
this.Controls.Add(this.btnActivate);
this.Controls.Add(this.lnkDownloadCode);
this.Font = new System.Drawing.Font("微软雅黑", 9F);
this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedDialog;
this.MaximizeBox = false;
this.MinimizeBox = false;
this.Name = "ActivationForm";
this.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen;
this.Text = "下载机器识别码";
this.ResumeLayout(false);
this.PerformLayout();

}

private System.Windows.Forms.Label lblTitle;
private System.Windows.Forms.Label lblDescription;
private System.Windows.Forms.Label lblActivationCode;
private System.Windows.Forms.TextBox txtActivationCode;
private System.Windows.Forms.Button btnActivate;
private System.Windows.Forms.LinkLabel lnkDownloadCode;
}
}

+ 210
- 0
CNAS_DBSync/ActivationForm.cs Прегледај датотеку

@@ -0,0 +1,210 @@
using System;
using System.Text;
using System.Windows.Forms;
using System.Management;
using System.Net.NetworkInformation;
using System.Collections.Generic;
using System.IO;
using System.Configuration;

namespace CNAS_DBSync
{
public partial class ActivationForm : Form
{
private const string ACTIVATION_FILE = "activation.config";
public bool IsActivated { get; private set; }

public ActivationForm()
{
InitializeComponent();
IsActivated = false;
}

// 检查是否已激活
public bool CheckActivation()
{
try
{
string activationPath = Path.Combine(AppDomain.CurrentDomain.BaseDirectory, ACTIVATION_FILE);
if (File.Exists(activationPath))
{
string machineCode = GetMachineCode();
string savedMachineCode = File.ReadAllText(activationPath);
return machineCode == savedMachineCode;
}
}
catch
{
// 如果读取失败,返回未激活状态
}
return false;
}

private void SaveActivation()
{
try
{
string activationPath = Path.Combine(AppDomain.CurrentDomain.BaseDirectory, ACTIVATION_FILE);
File.WriteAllText(activationPath, GetMachineCode());
}
catch (Exception ex)
{
MessageBox.Show($"保存激活状态失败:{ex.Message}", "警告", MessageBoxButtons.OK, MessageBoxIcon.Warning);
}
}

private void btnActivate_Click(object sender, EventArgs e)
{
string activationCode = txtActivationCode.Text.Trim();
if (string.IsNullOrEmpty(activationCode))
{
MessageBox.Show("请输入激活码!", "提示", MessageBoxButtons.OK, MessageBoxIcon.Warning);
return;
}

try
{
if (ValidateActivationCode(activationCode))
{
IsActivated = true;
SaveActivation(); // 保存激活状态
this.DialogResult = DialogResult.OK;
this.Close();
}
else
{
MessageBox.Show("激活码无效!", "错误", MessageBoxButtons.OK, MessageBoxIcon.Error);
}
}
catch (Exception ex)
{
MessageBox.Show($"激活失败:{ex.Message}", "错误", MessageBoxButtons.OK, MessageBoxIcon.Error);
}
}

private void lnkDownloadCode_LinkClicked(object sender, LinkLabelLinkClickedEventArgs e)
{
try
{
string machineCode = GetMachineCode();
// 创建保存文件对话框
var saveFileDialog = new SaveFileDialog
{
FileName = $"机器码_{DateTime.Now:yyyyMMdd}",
DefaultExt = ".txt",
Filter = "文本文件|*.txt"
};

if (saveFileDialog.ShowDialog() == DialogResult.OK)
{
File.WriteAllText(saveFileDialog.FileName, machineCode);
MessageBox.Show("机器码已成功保存!", "提示", MessageBoxButtons.OK, MessageBoxIcon.Information);
}
}
catch (Exception ex)
{
MessageBox.Show($"获取机器码失败:{ex.Message}", "错误", MessageBoxButtons.OK, MessageBoxIcon.Error);
}
}

private string GetMachineCode()
{
StringBuilder machineCode = new StringBuilder();

// 获取CPU ID
string cpuId = GetCPUId();
machineCode.Append(cpuId);

// 获取所有MAC地址
List<string> macAddresses = GetMACAddresses();
foreach (string mac in macAddresses)
{
machineCode.Append("_").Append(mac);
}

return machineCode.ToString();
}

private string GetCPUId()
{
try
{
using (ManagementClass mc = new ManagementClass("Win32_Processor"))
{
ManagementObjectCollection moc = mc.GetInstances();
foreach (ManagementObject mo in moc)
{
return mo.Properties["ProcessorId"].Value.ToString();
}
}
}
catch (Exception ex)
{
throw new Exception("获取CPU ID失败: " + ex.Message);
}
return string.Empty;
}

private List<string> GetMACAddresses()
{
List<string> macAddresses = new List<string>();
try
{
NetworkInterface[] nics = NetworkInterface.GetAllNetworkInterfaces();
foreach (NetworkInterface adapter in nics)
{
// 只获取物理网卡的MAC地址
if (adapter.NetworkInterfaceType == NetworkInterfaceType.Ethernet ||
adapter.NetworkInterfaceType == NetworkInterfaceType.Wireless80211)
{
string mac = adapter.GetPhysicalAddress().ToString();
if (!string.IsNullOrEmpty(mac))
{
macAddresses.Add(mac);
}
}
}
}
catch (Exception ex)
{
throw new Exception("获取MAC地址失败: " + ex.Message);
}
return macAddresses;
}

private bool ValidateActivationCode(string activationCode)
{
// 使用实际的机器码来验证
string machineCode = GetMachineCode();
return GenerateActivationCode(machineCode) == activationCode;
}

private string GenerateActivationCode(string machineCode)
{
// 这里实现激活码生成算法
// 示例:简单的加密算法,实际应用中应该使用更安全的加密方式
using (var md5 = System.Security.Cryptography.MD5.Create())
{
// 加入时间戳使得生成的激活码具有时效性
string input = machineCode + DateTime.Now.ToString("yyyyMMdd");
byte[] inputBytes = Encoding.UTF8.GetBytes(input);
byte[] hashBytes = md5.ComputeHash(inputBytes);

// 转换为16进制字符串
StringBuilder sb = new StringBuilder();
for (int i = 0; i < hashBytes.Length; i++)
{
sb.Append(hashBytes[i].ToString("X2"));
// 每4个字符添加一个分隔符,提高可读性
if ((i + 1) % 4 == 0 && i != hashBytes.Length - 1)
{
sb.Append("-");
}
}
return sb.ToString();
}
}
}
}

+ 120
- 0
CNAS_DBSync/ActivationForm.resx Прегледај датотеку

@@ -0,0 +1,120 @@
<?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>
</root>

+ 15
- 3
CNAS_DBSync/App.config Прегледај датотеку

@@ -4,10 +4,15 @@
<!-- For more information on Entity Framework configuration, visit http://go.microsoft.com/fwlink/?LinkID=237468 -->
<section name="entityFramework" type="System.Data.Entity.Internal.ConfigFile.EntityFrameworkSection, EntityFramework, Version=6.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" requirePermission="false"/>
<section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler, log4net"/>
<sectionGroup name="applicationSettings" type="System.Configuration.ApplicationSettingsGroup, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" >
<section name="CNAS_DBSync.Properties.Settings" type="System.Configuration.ClientSettingsSection, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" requirePermission="false" />
</sectionGroup>
</configSections>
<connectionStrings>
<add name="CoreDb" connectionString="Driver={IBM DB2 ODBC DRIVER};DataBase=SAMPLE; HostName=127.0.0.1; Protocol=TCPIP;Port=50000;Uid=db2admin;Pwd=123"/>
<add name="CNAS_DBSync.Properties.Settings.ConnectionString" connectionString="Data Source=E:\JXD\CNASClient\CNAS_DBSync\dll\database.db" providerName="Devart.Data.SQLite"/>
<add name="CoreDb" connectionString="Driver={IBM DB2 ODBC DRIVER};DataBase=SAMPLE; HostName=127.0.0.1; Protocol=TCPIP;Port=50000;Uid=db2admin;Pwd=123" />
<add name="CNAS_DBSync.Properties.Settings.ConnectionString"
connectionString="Data Source=C:\DEV\CNAS\CNASClient\CNAS_DBSync\dll\database.db"
providerName="Devart.Data.SQLite" />
</connectionStrings>
<appSettings>
<add key="TargetDBType" value="Mysql"/>
@@ -72,4 +77,11 @@
</filter>
</appender>
</log4net>
<startup><supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.8"/></startup></configuration>
<startup><supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.8"/></startup><applicationSettings>
<CNAS_DBSync.Properties.Settings>
<setting name="SyncParamSize" serializeAs="String">
<value />
</setting>
</CNAS_DBSync.Properties.Settings>
</applicationSettings>
</configuration>

+ 10
- 0
CNAS_DBSync/CNAS_DBSync.csproj Прегледај датотеку

@@ -63,6 +63,13 @@
<Reference Include="System.Xml" />
</ItemGroup>
<ItemGroup>
<Compile Include="ActivationForm.cs">
<SubType>Form</SubType>
</Compile>
<Compile Include="ActivationForm.Designer.cs">
<DependentUpon>ActivationForm.cs</DependentUpon>
</Compile>
<Compile Include="FormSizeHelper.cs" />
<Compile Include="SourceSettingTextBoxDecrible.cs" />
<Compile Include="frmAddSubtract.cs">
<SubType>Form</SubType>
@@ -156,6 +163,9 @@
</Compile>
<Compile Include="Program.cs" />
<Compile Include="Properties\AssemblyInfo.cs" />
<EmbeddedResource Include="ActivationForm.resx">
<DependentUpon>ActivationForm.cs</DependentUpon>
</EmbeddedResource>
<EmbeddedResource Include="frmAddSubtract.resx">
<DependentUpon>frmAddSubtract.cs</DependentUpon>
</EmbeddedResource>


BIN
CNAS_DBSync/CNAS_DBSync.frmDatabaseParams.resources Прегледај датотеку


+ 264
- 0
CNAS_DBSync/FormSizeHelper.cs Прегледај датотеку

@@ -0,0 +1,264 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

using System.Windows.Forms;
using System.Configuration;
using System.Collections;
using System.Drawing;
using System.IO;

using CnasSynchronousCommon;
using System.Xml;

namespace CNAS_DBSync
{

struct FieldLine
{
Label label;
Control editor;
Button button;
int size;

public FieldLine(Label label, Control editor, Button button = null)
{
this.label = label;
this.editor = editor;
this.button = button;
int count = 0;
if (label != null) count++;
if (editor != null) count++;
if (button != null) count++;
size = count;
}

public Label Label
{
get
{
return label;
}
}
public Control Editor
{
get
{
return editor;
}
}

public Button Button
{
get
{
return button;
}
}

}

/// <summary>
/// 设置容器内编辑字段位置的公共算法
/// </summary>
class FormSizeHelper
{
private static readonly string strLocalConfigPath = FileHelper.getBasePath() + @"\Data\";
private static readonly string FormSizeXml = "FormSize.xml";
private static readonly FormSizeHelper instance;
private Hashtable formSizes;

// 静态构造函数确保线程安全且延迟加载。
static FormSizeHelper() {
instance = new FormSizeHelper();
}

// 防止外部实例化。
private FormSizeHelper() {
Init();
}
public static FormSizeHelper Instance => instance; // 提供全局访问点。

public static void Arrange(Panel container, FieldLine[] fields, int span1 = 1, int span2 = 1)
{
int colLabel = 0;
int colEditor = 0;
int colButton = 0;
int lbLeft = -1;
for (int i = 0; i < fields.Length; i++)
{
if (lbLeft == -1)
{
if (fields[i].Label != null)
lbLeft = fields[i].Label.Left;
}
else if (fields[i].Label != null && fields[i].Label.Left >= 0 && fields[i].Label.Left < lbLeft)
{
lbLeft = fields[i].Label.Left;
}
}

int width = lbLeft < 0 ? (container.Width * 80 / 100) : (container.Width-lbLeft*2);
int marginLeft = (container.Width - width) / 2;
for (int i=0;i< fields.Length; i++)
{
if(fields[i].Label != null && fields[i].Label.Width > colLabel)
{
colLabel = fields[i].Label.Width;
}
if (fields[i].Button != null && fields[i].Button.Width > colButton)
{
colButton = fields[i].Button.Width;
}
}

colEditor = width - (colLabel + span1 + span2 + colButton);

for (int i = 0; i < fields.Length; i++)
{
//Label不动

//改变Editor
if (fields[i].Editor != null)
{
if(fields[i].Editor is TextBox)
{
TextBox tb = (TextBox)fields[i].Editor;
//tb.Left = marginLeft + colLabel + span1;
tb.Width = colEditor;
if(fields[i].Button != null)
{
fields[i].Button.Left = tb.Left + colEditor + span2;
}
}


if(fields[i].Editor is CheckBox)
{
//不动
}

if(fields[i].Editor is ComboBox)
{
ComboBox tb = (ComboBox)fields[i].Editor;
//tb.Left = marginLeft + colLabel + span1;
tb.Width = colEditor;
if (fields[i].Button != null)
{
fields[i].Button.Left = tb.Left + colEditor + span2;
}
}

}

}


}

private static bool ValidBound(Form form, int x, int y, int w, int h)
{
if (x>=0 && y >= 0 && w>0 && h > 0)
{
Screen screen = Screen.FromControl(form);
Rectangle r = screen.Bounds;
return (x + w < r.Width && y + h < r.Height);
}
return false;
}

private void Init()
{
formSizes = new Hashtable(10);
string strUrl = strLocalConfigPath + FormSizeXml;
try
{
if (!File.Exists(strUrl)) return;

XmlDocument doc = new XmlDocument();
doc.Load(strUrl);
XmlNode root = doc.DocumentElement;
foreach (XmlNode node in root.ChildNodes)
{
string formname = node.Name;
string value = node.InnerText;
formSizes.Add(formname, value);
}
}
catch (Exception ex)
{
AppLog.Error(ex.Message);
}
}

public List<string> LoadDefaultSize(Form form, string key, out bool changed)
{
changed = false;
if (formSizes.ContainsKey(key))
{
string value = formSizes[key] as string;
string[] values = value.Split(',');
if (values.Length >= 4)
{
int x, y, w, h;
if (int.TryParse(values[0], out x) && int.TryParse(values[1], out y) &&
int.TryParse(values[2], out w) && int.TryParse(values[3], out h))
{
if (ValidBound(form, x, y, w, h))
{
form.Left = x;
form.Top = y;
form.Width = w;
form.Height = h;
changed = true;
}
}

if (changed && values.Length > 4)
{
List<string> list = new List<string>(values.Length - 4);
for (int i = 4; i < values.Length; i++)
{
list.Add(values[i]);
}
return list;
}
}
}
return null;
}

public bool SaveDefaultSize(string key, string value)
{
if (!string.IsNullOrEmpty(key) && !string.IsNullOrEmpty(value))
{
formSizes[key] = value;
StringBuilder sb = new StringBuilder();
sb.Append("<?xml version=\"1.0\" encoding=\"utf-8\"?>\n<Forms>\n");
foreach(object k in formSizes.Keys)
{
string line = string.Format("<{0}>{1}</{0}>", k, formSizes[k]);
sb.Append(line).Append("\n");
}
sb.Append("</Forms>");
try
{
bool bIfSuccess = FileHelper.SaveLocalFile(strLocalConfigPath, FormSizeXml, sb.ToString());
return bIfSuccess;
}
catch (Exception ex)
{
AppLog.Error(ex.Message);
}
}
return true;
}

}
}

+ 20
- 2
CNAS_DBSync/Program.cs Прегледај датотеку

@@ -23,8 +23,26 @@ namespace CNAS_DBSync
/*CheckAvailability(ref strMsg);*/
if (strMsg == "")
{
if (new frmOperationPwd().ShowDialog() == DialogResult.OK)
Application.Run(new frmSyncParams());
// 检查是否已激活
if (! (new ActivationForm()).CheckActivation())
{
// 未激活,显示激活窗口
using (var activationForm = new ActivationForm())
{
if (activationForm.ShowDialog() == DialogResult.OK)
{
// 激活成功,显示主窗口
if (new frmOperationPwd().ShowDialog() == DialogResult.OK)
Application.Run(new frmSyncParams());
}
}
}
else
{
// 已激活,直接显示主窗口
if (new frmOperationPwd().ShowDialog() == DialogResult.OK)
Application.Run(new frmSyncParams());
}
}
else
MessageBox.Show(strMsg);


+ 11
- 2
CNAS_DBSync/Properties/Settings.Designer.cs Прегледај датотеку

@@ -12,7 +12,7 @@ namespace CNAS_DBSync.Properties {
[global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
[global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.Editors.SettingsDesigner.SettingsSingleFileGenerator", "17.0.3.0")]
[global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.Editors.SettingsDesigner.SettingsSingleFileGenerator", "14.0.0.0")]
internal sealed partial class Settings : global::System.Configuration.ApplicationSettingsBase {
private static Settings defaultInstance = ((Settings)(global::System.Configuration.ApplicationSettingsBase.Synchronized(new Settings())));
@@ -26,11 +26,20 @@ namespace CNAS_DBSync.Properties {
[global::System.Configuration.ApplicationScopedSettingAttribute()]
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
[global::System.Configuration.SpecialSettingAttribute(global::System.Configuration.SpecialSetting.ConnectionString)]
[global::System.Configuration.DefaultSettingValueAttribute("Data Source=E:\\JXD\\CNASClient\\CNAS_DBSync\\dll\\database.db")]
[global::System.Configuration.DefaultSettingValueAttribute("Data Source=C:\\DEV\\CNAS\\CNASClient\\CNAS_DBSync\\dll\\database.db")]
public string ConnectionString {
get {
return ((string)(this["ConnectionString"]));
}
}
[global::System.Configuration.ApplicationScopedSettingAttribute()]
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
[global::System.Configuration.DefaultSettingValueAttribute("")]
public string SyncParamSize {
get {
return ((string)(this["SyncParamSize"]));
}
}
}
}

+ 5
- 2
CNAS_DBSync/Properties/Settings.settings Прегледај датотеку

@@ -5,10 +5,13 @@
<Setting Name="ConnectionString" Type="(Connection string)" Scope="Application">
<DesignTimeValue Profile="(Default)">&lt;?xml version="1.0" encoding="utf-16"?&gt;
&lt;SerializableConnectionString xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema"&gt;
&lt;ConnectionString&gt;Data Source=E:\JXD\CNASClient\CNAS_DBSync\dll\database.db&lt;/ConnectionString&gt;
&lt;ConnectionString&gt;Data Source=C:\DEV\CNAS\CNASClient\CNAS_DBSync\dll\database.db&lt;/ConnectionString&gt;
&lt;ProviderName&gt;Devart.Data.SQLite&lt;/ProviderName&gt;
&lt;/SerializableConnectionString&gt;</DesignTimeValue>
<Value Profile="(Default)">Data Source=E:\JXD\CNASClient\CNAS_DBSync\dll\database.db</Value>
<Value Profile="(Default)">Data Source=C:\DEV\CNAS\CNASClient\CNAS_DBSync\dll\database.db</Value>
</Setting>
<Setting Name="SyncParamSize" Type="System.String" Scope="Application">
<Value Profile="(Default)" />
</Setting>
</Settings>
</SettingsFile>

+ 126
- 124
CNAS_DBSync/frmSourceSetting.Designer.cs Прегледај датотеку

@@ -37,7 +37,7 @@
this.tabExcel = new System.Windows.Forms.TabPage();
this.txtExcelAutoSql = new System.Windows.Forms.TextBox();
this.txtExcelAutoSqlName = new System.Windows.Forms.TextBox();
this.label1 = new System.Windows.Forms.Label();
this.lbExcelDynQuery = new System.Windows.Forms.Label();
this.cbxExcelReadFolder = new System.Windows.Forms.CheckBox();
this.cbxExcelReadFile = new System.Windows.Forms.CheckBox();
this.cbxExcelNewVersion = new System.Windows.Forms.CheckBox();
@@ -46,7 +46,7 @@
this.lblExcelRemoteUser = new System.Windows.Forms.Label();
this.txtExcelFileNameFormat = new System.Windows.Forms.TextBox();
this.cbxExcelOldVersion = new System.Windows.Forms.CheckBox();
this.label3 = new System.Windows.Forms.Label();
this.lbExcelDateFormat = new System.Windows.Forms.Label();
this.txtExcelSpecialDateColumnFormat = new System.Windows.Forms.TextBox();
this.tabFoxPro = new System.Windows.Forms.TabPage();
this.txtFoxProSpecialMethodName = new System.Windows.Forms.TextBox();
@@ -158,9 +158,9 @@
//
this.pnlBottom.Controls.Add(this.btnOK);
this.pnlBottom.Dock = System.Windows.Forms.DockStyle.Bottom;
this.pnlBottom.Location = new System.Drawing.Point(0, 376);
this.pnlBottom.Location = new System.Drawing.Point(0, 504);
this.pnlBottom.Name = "pnlBottom";
this.pnlBottom.Size = new System.Drawing.Size(669, 42);
this.pnlBottom.Size = new System.Drawing.Size(936, 42);
this.pnlBottom.TabIndex = 3;
//
// pnlTop
@@ -168,7 +168,7 @@
this.pnlTop.Dock = System.Windows.Forms.DockStyle.Top;
this.pnlTop.Location = new System.Drawing.Point(0, 0);
this.pnlTop.Name = "pnlTop";
this.pnlTop.Size = new System.Drawing.Size(669, 10);
this.pnlTop.Size = new System.Drawing.Size(936, 10);
this.pnlTop.TabIndex = 2;
//
// pnlCenter
@@ -177,7 +177,7 @@
this.pnlCenter.Dock = System.Windows.Forms.DockStyle.Fill;
this.pnlCenter.Location = new System.Drawing.Point(0, 10);
this.pnlCenter.Name = "pnlCenter";
this.pnlCenter.Size = new System.Drawing.Size(669, 366);
this.pnlCenter.Size = new System.Drawing.Size(936, 494);
this.pnlCenter.TabIndex = 4;
//
// tabcDS
@@ -194,7 +194,7 @@
this.tabcDS.Location = new System.Drawing.Point(0, 0);
this.tabcDS.Name = "tabcDS";
this.tabcDS.SelectedIndex = 0;
this.tabcDS.Size = new System.Drawing.Size(669, 366);
this.tabcDS.Size = new System.Drawing.Size(936, 494);
this.tabcDS.TabIndex = 7;
this.tabcDS.Selected += new System.Windows.Forms.TabControlEventHandler(this.tabcDS_Selected);
//
@@ -202,7 +202,7 @@
//
this.tabExcel.Controls.Add(this.txtExcelAutoSql);
this.tabExcel.Controls.Add(this.txtExcelAutoSqlName);
this.tabExcel.Controls.Add(this.label1);
this.tabExcel.Controls.Add(this.lbExcelDynQuery);
this.tabExcel.Controls.Add(this.cbxExcelReadFolder);
this.tabExcel.Controls.Add(this.cbxExcelReadFile);
this.tabExcel.Controls.Add(this.cbxExcelNewVersion);
@@ -211,12 +211,12 @@
this.tabExcel.Controls.Add(this.lblExcelRemoteUser);
this.tabExcel.Controls.Add(this.txtExcelFileNameFormat);
this.tabExcel.Controls.Add(this.cbxExcelOldVersion);
this.tabExcel.Controls.Add(this.label3);
this.tabExcel.Controls.Add(this.lbExcelDateFormat);
this.tabExcel.Controls.Add(this.txtExcelSpecialDateColumnFormat);
this.tabExcel.Location = new System.Drawing.Point(4, 26);
this.tabExcel.Location = new System.Drawing.Point(8, 45);
this.tabExcel.Name = "tabExcel";
this.tabExcel.Padding = new System.Windows.Forms.Padding(3);
this.tabExcel.Size = new System.Drawing.Size(661, 336);
this.tabExcel.Size = new System.Drawing.Size(920, 441);
this.tabExcel.TabIndex = 0;
this.tabExcel.Text = "Excel";
this.tabExcel.UseVisualStyleBackColor = true;
@@ -226,7 +226,7 @@
this.txtExcelAutoSql.Location = new System.Drawing.Point(209, 193);
this.txtExcelAutoSql.Multiline = true;
this.txtExcelAutoSql.Name = "txtExcelAutoSql";
this.txtExcelAutoSql.Size = new System.Drawing.Size(286, 101);
this.txtExcelAutoSql.Size = new System.Drawing.Size(501, 184);
this.txtExcelAutoSql.TabIndex = 48;
this.txtExcelAutoSql.Enter += new System.EventHandler(this.txtExcelAutoSql_Enter);
this.txtExcelAutoSql.Leave += new System.EventHandler(this.txtExcelAutoSql_Leave);
@@ -235,26 +235,26 @@
//
this.txtExcelAutoSqlName.Location = new System.Drawing.Point(209, 158);
this.txtExcelAutoSqlName.Name = "txtExcelAutoSqlName";
this.txtExcelAutoSqlName.Size = new System.Drawing.Size(230, 23);
this.txtExcelAutoSqlName.Size = new System.Drawing.Size(230, 39);
this.txtExcelAutoSqlName.TabIndex = 47;
this.txtExcelAutoSqlName.Enter += new System.EventHandler(this.txtExcelAutoSqlName_Enter);
this.txtExcelAutoSqlName.Leave += new System.EventHandler(this.txtExcelAutoSqlName_Leave);
//
// label1
// lbExcelDynQuery
//
this.label1.AutoSize = true;
this.label1.Location = new System.Drawing.Point(97, 161);
this.label1.Name = "label1";
this.label1.Size = new System.Drawing.Size(104, 17);
this.label1.TabIndex = 46;
this.label1.Text = "自定义查询语句:";
this.lbExcelDynQuery.AutoSize = true;
this.lbExcelDynQuery.Location = new System.Drawing.Point(97, 161);
this.lbExcelDynQuery.Name = "lbExcelDynQuery";
this.lbExcelDynQuery.Size = new System.Drawing.Size(206, 31);
this.lbExcelDynQuery.TabIndex = 46;
this.lbExcelDynQuery.Text = "自定义查询语句:";
//
// cbxExcelReadFolder
//
this.cbxExcelReadFolder.AutoSize = true;
this.cbxExcelReadFolder.Location = new System.Drawing.Point(298, 121);
this.cbxExcelReadFolder.Location = new System.Drawing.Point(561, 121);
this.cbxExcelReadFolder.Name = "cbxExcelReadFolder";
this.cbxExcelReadFolder.Size = new System.Drawing.Size(87, 21);
this.cbxExcelReadFolder.Size = new System.Drawing.Size(166, 35);
this.cbxExcelReadFolder.TabIndex = 32;
this.cbxExcelReadFolder.Text = "读取文件夹";
this.cbxExcelReadFolder.UseVisualStyleBackColor = true;
@@ -265,9 +265,9 @@
this.cbxExcelReadFile.AutoSize = true;
this.cbxExcelReadFile.Checked = true;
this.cbxExcelReadFile.CheckState = System.Windows.Forms.CheckState.Checked;
this.cbxExcelReadFile.Location = new System.Drawing.Point(209, 121);
this.cbxExcelReadFile.Location = new System.Drawing.Point(312, 121);
this.cbxExcelReadFile.Name = "cbxExcelReadFile";
this.cbxExcelReadFile.Size = new System.Drawing.Size(75, 21);
this.cbxExcelReadFile.Size = new System.Drawing.Size(142, 35);
this.cbxExcelReadFile.TabIndex = 31;
this.cbxExcelReadFile.Text = "读取文件";
this.cbxExcelReadFile.UseVisualStyleBackColor = true;
@@ -276,9 +276,9 @@
// cbxExcelNewVersion
//
this.cbxExcelNewVersion.AutoSize = true;
this.cbxExcelNewVersion.Location = new System.Drawing.Point(353, 14);
this.cbxExcelNewVersion.Location = new System.Drawing.Point(561, 14);
this.cbxExcelNewVersion.Name = "cbxExcelNewVersion";
this.cbxExcelNewVersion.Size = new System.Drawing.Size(139, 21);
this.cbxExcelNewVersion.Size = new System.Drawing.Size(268, 35);
this.cbxExcelNewVersion.TabIndex = 25;
this.cbxExcelNewVersion.Text = "office 2007以后版本";
this.cbxExcelNewVersion.UseVisualStyleBackColor = true;
@@ -289,7 +289,7 @@
this.label22.AutoSize = true;
this.label22.Location = new System.Drawing.Point(90, 15);
this.label22.Name = "label22";
this.label22.Size = new System.Drawing.Size(111, 17);
this.label22.Size = new System.Drawing.Size(218, 31);
this.label22.TabIndex = 24;
this.label22.Text = "Office Excel版本:";
//
@@ -298,7 +298,7 @@
this.lblExcelRemotePwd.AutoSize = true;
this.lblExcelRemotePwd.Location = new System.Drawing.Point(60, 121);
this.lblExcelRemotePwd.Name = "lblExcelRemotePwd";
this.lblExcelRemotePwd.Size = new System.Drawing.Size(141, 17);
this.lblExcelRemotePwd.Size = new System.Drawing.Size(280, 31);
this.lblExcelRemotePwd.TabIndex = 10;
this.lblExcelRemotePwd.Text = "读取模式(文件/文件夹):";
//
@@ -307,7 +307,7 @@
this.lblExcelRemoteUser.AutoSize = true;
this.lblExcelRemoteUser.Location = new System.Drawing.Point(85, 87);
this.lblExcelRemoteUser.Name = "lblExcelRemoteUser";
this.lblExcelRemoteUser.Size = new System.Drawing.Size(116, 17);
this.lblExcelRemoteUser.Size = new System.Drawing.Size(230, 31);
this.lblExcelRemoteUser.TabIndex = 8;
this.lblExcelRemoteUser.Text = "自定义文件名格式:";
//
@@ -315,7 +315,7 @@
//
this.txtExcelFileNameFormat.Location = new System.Drawing.Point(207, 84);
this.txtExcelFileNameFormat.Name = "txtExcelFileNameFormat";
this.txtExcelFileNameFormat.Size = new System.Drawing.Size(230, 23);
this.txtExcelFileNameFormat.Size = new System.Drawing.Size(230, 39);
this.txtExcelFileNameFormat.TabIndex = 6;
this.txtExcelFileNameFormat.Enter += new System.EventHandler(this.txtExcelFileNameFormat_Enter);
this.txtExcelFileNameFormat.Leave += new System.EventHandler(this.txtExcelFileNameFormat_Leave);
@@ -325,28 +325,28 @@
this.cbxExcelOldVersion.AutoSize = true;
this.cbxExcelOldVersion.Checked = true;
this.cbxExcelOldVersion.CheckState = System.Windows.Forms.CheckState.Checked;
this.cbxExcelOldVersion.Location = new System.Drawing.Point(208, 14);
this.cbxExcelOldVersion.Location = new System.Drawing.Point(312, 14);
this.cbxExcelOldVersion.Name = "cbxExcelOldVersion";
this.cbxExcelOldVersion.Size = new System.Drawing.Size(139, 21);
this.cbxExcelOldVersion.Size = new System.Drawing.Size(268, 35);
this.cbxExcelOldVersion.TabIndex = 4;
this.cbxExcelOldVersion.Text = "office 2007以前版本";
this.cbxExcelOldVersion.UseVisualStyleBackColor = true;
this.cbxExcelOldVersion.CheckedChanged += new System.EventHandler(this.cbxExcelOldVersion_CheckedChanged);
//
// label3
// lbExcelDateFormat
//
this.label3.AutoSize = true;
this.label3.Location = new System.Drawing.Point(97, 50);
this.label3.Name = "label3";
this.label3.Size = new System.Drawing.Size(104, 17);
this.label3.TabIndex = 5;
this.label3.Text = "日期列特殊格式:";
this.lbExcelDateFormat.AutoSize = true;
this.lbExcelDateFormat.Location = new System.Drawing.Point(97, 50);
this.lbExcelDateFormat.Name = "lbExcelDateFormat";
this.lbExcelDateFormat.Size = new System.Drawing.Size(206, 31);
this.lbExcelDateFormat.TabIndex = 5;
this.lbExcelDateFormat.Text = "日期列特殊格式:";
//
// txtExcelSpecialDateColumnFormat
//
this.txtExcelSpecialDateColumnFormat.Location = new System.Drawing.Point(207, 47);
this.txtExcelSpecialDateColumnFormat.Name = "txtExcelSpecialDateColumnFormat";
this.txtExcelSpecialDateColumnFormat.Size = new System.Drawing.Size(230, 23);
this.txtExcelSpecialDateColumnFormat.Size = new System.Drawing.Size(230, 39);
this.txtExcelSpecialDateColumnFormat.TabIndex = 5;
this.txtExcelSpecialDateColumnFormat.Enter += new System.EventHandler(this.txtExcelSpecialDateColumnFormat_Enter);
this.txtExcelSpecialDateColumnFormat.Leave += new System.EventHandler(this.txtExcelSpecialDateColumnFormat_Leave);
@@ -366,10 +366,10 @@
this.tabFoxPro.Controls.Add(this.txtFoxProFileNameFormat);
this.tabFoxPro.Controls.Add(this.label39);
this.tabFoxPro.Controls.Add(this.txtFoxProSpecialDateColumnFormat);
this.tabFoxPro.Location = new System.Drawing.Point(4, 26);
this.tabFoxPro.Location = new System.Drawing.Point(8, 45);
this.tabFoxPro.Name = "tabFoxPro";
this.tabFoxPro.Padding = new System.Windows.Forms.Padding(3);
this.tabFoxPro.Size = new System.Drawing.Size(661, 336);
this.tabFoxPro.Size = new System.Drawing.Size(920, 441);
this.tabFoxPro.TabIndex = 6;
this.tabFoxPro.Text = "FoxPro";
this.tabFoxPro.UseVisualStyleBackColor = true;
@@ -378,7 +378,7 @@
//
this.txtFoxProSpecialMethodName.Location = new System.Drawing.Point(213, 221);
this.txtFoxProSpecialMethodName.Name = "txtFoxProSpecialMethodName";
this.txtFoxProSpecialMethodName.Size = new System.Drawing.Size(230, 23);
this.txtFoxProSpecialMethodName.Size = new System.Drawing.Size(230, 39);
this.txtFoxProSpecialMethodName.TabIndex = 65;
this.txtFoxProSpecialMethodName.Enter += new System.EventHandler(this.txtFoxProSpecialMethodName_Enter);
this.txtFoxProSpecialMethodName.Leave += new System.EventHandler(this.txtFoxProSpecialMethodName_Leave);
@@ -398,7 +398,7 @@
this.label27.AutoSize = true;
this.label27.Location = new System.Drawing.Point(133, 224);
this.label27.Name = "label27";
this.label27.Size = new System.Drawing.Size(68, 17);
this.label27.Size = new System.Drawing.Size(134, 31);
this.label27.TabIndex = 64;
this.label27.Text = "补充方法:";
//
@@ -407,7 +407,7 @@
this.label33.AutoSize = true;
this.label33.Location = new System.Drawing.Point(97, 127);
this.label33.Name = "label33";
this.label33.Size = new System.Drawing.Size(104, 17);
this.label33.Size = new System.Drawing.Size(206, 31);
this.label33.TabIndex = 63;
this.label33.Text = "自定义查询语句:";
//
@@ -415,7 +415,7 @@
//
this.txtFoxProAutoSqlName.Location = new System.Drawing.Point(213, 124);
this.txtFoxProAutoSqlName.Name = "txtFoxProAutoSqlName";
this.txtFoxProAutoSqlName.Size = new System.Drawing.Size(230, 23);
this.txtFoxProAutoSqlName.Size = new System.Drawing.Size(230, 39);
this.txtFoxProAutoSqlName.TabIndex = 58;
this.txtFoxProAutoSqlName.Enter += new System.EventHandler(this.txtFoxProAutoSqlName_Enter);
this.txtFoxProAutoSqlName.Leave += new System.EventHandler(this.txtFoxProAutoSqlName_Leave);
@@ -425,7 +425,7 @@
this.cbxFoxProReadFolder.AutoSize = true;
this.cbxFoxProReadFolder.Location = new System.Drawing.Point(296, 14);
this.cbxFoxProReadFolder.Name = "cbxFoxProReadFolder";
this.cbxFoxProReadFolder.Size = new System.Drawing.Size(87, 21);
this.cbxFoxProReadFolder.Size = new System.Drawing.Size(166, 35);
this.cbxFoxProReadFolder.TabIndex = 62;
this.cbxFoxProReadFolder.Text = "读取文件夹";
this.cbxFoxProReadFolder.UseVisualStyleBackColor = true;
@@ -448,7 +448,7 @@
this.cbxFoxProReadFile.CheckState = System.Windows.Forms.CheckState.Checked;
this.cbxFoxProReadFile.Location = new System.Drawing.Point(215, 14);
this.cbxFoxProReadFile.Name = "cbxFoxProReadFile";
this.cbxFoxProReadFile.Size = new System.Drawing.Size(75, 21);
this.cbxFoxProReadFile.Size = new System.Drawing.Size(142, 35);
this.cbxFoxProReadFile.TabIndex = 61;
this.cbxFoxProReadFile.Text = "读取文件";
this.cbxFoxProReadFile.UseVisualStyleBackColor = true;
@@ -459,7 +459,7 @@
this.label35.AutoSize = true;
this.label35.Location = new System.Drawing.Point(60, 15);
this.label35.Name = "label35";
this.label35.Size = new System.Drawing.Size(141, 17);
this.label35.Size = new System.Drawing.Size(280, 31);
this.label35.TabIndex = 53;
this.label35.Text = "读取模式(文件/文件夹):";
//
@@ -468,7 +468,7 @@
this.label38.AutoSize = true;
this.label38.Location = new System.Drawing.Point(85, 90);
this.label38.Name = "label38";
this.label38.Size = new System.Drawing.Size(116, 17);
this.label38.Size = new System.Drawing.Size(230, 31);
this.label38.TabIndex = 52;
this.label38.Text = "自定义文件名格式:";
//
@@ -476,7 +476,7 @@
//
this.txtFoxProFileNameFormat.Location = new System.Drawing.Point(213, 87);
this.txtFoxProFileNameFormat.Name = "txtFoxProFileNameFormat";
this.txtFoxProFileNameFormat.Size = new System.Drawing.Size(230, 23);
this.txtFoxProFileNameFormat.Size = new System.Drawing.Size(230, 39);
this.txtFoxProFileNameFormat.TabIndex = 51;
this.txtFoxProFileNameFormat.Enter += new System.EventHandler(this.txtFoxProFileNameFormat_Enter);
this.txtFoxProFileNameFormat.Leave += new System.EventHandler(this.txtFoxProFileNameFormat_Leave);
@@ -486,7 +486,7 @@
this.label39.AutoSize = true;
this.label39.Location = new System.Drawing.Point(97, 53);
this.label39.Name = "label39";
this.label39.Size = new System.Drawing.Size(104, 17);
this.label39.Size = new System.Drawing.Size(206, 31);
this.label39.TabIndex = 49;
this.label39.Text = "日期列特殊格式:";
//
@@ -494,7 +494,7 @@
//
this.txtFoxProSpecialDateColumnFormat.Location = new System.Drawing.Point(213, 50);
this.txtFoxProSpecialDateColumnFormat.Name = "txtFoxProSpecialDateColumnFormat";
this.txtFoxProSpecialDateColumnFormat.Size = new System.Drawing.Size(230, 23);
this.txtFoxProSpecialDateColumnFormat.Size = new System.Drawing.Size(230, 39);
this.txtFoxProSpecialDateColumnFormat.TabIndex = 50;
this.txtFoxProSpecialDateColumnFormat.Enter += new System.EventHandler(this.txtFoxProSpecialDateColumnFormat_Enter);
this.txtFoxProSpecialDateColumnFormat.Leave += new System.EventHandler(this.txtFoxProSpecialDateColumnFormat_Leave);
@@ -516,10 +516,10 @@
this.tabAccess.Controls.Add(this.cbxAccessOldVersion);
this.tabAccess.Controls.Add(this.label31);
this.tabAccess.Controls.Add(this.txtAccessSpecialDateColumnFormat);
this.tabAccess.Location = new System.Drawing.Point(4, 26);
this.tabAccess.Location = new System.Drawing.Point(8, 45);
this.tabAccess.Name = "tabAccess";
this.tabAccess.Padding = new System.Windows.Forms.Padding(3);
this.tabAccess.Size = new System.Drawing.Size(661, 336);
this.tabAccess.Size = new System.Drawing.Size(920, 441);
this.tabAccess.TabIndex = 1;
this.tabAccess.Text = "Access";
this.tabAccess.UseVisualStyleBackColor = true;
@@ -529,7 +529,7 @@
this.label2.AutoSize = true;
this.label2.Location = new System.Drawing.Point(106, 53);
this.label2.Name = "label2";
this.label2.Size = new System.Drawing.Size(95, 17);
this.label2.Size = new System.Drawing.Size(187, 31);
this.label2.TabIndex = 48;
this.label2.Text = "Access后缀名:";
//
@@ -537,7 +537,7 @@
//
this.txtAccessSuffix.Location = new System.Drawing.Point(205, 50);
this.txtAccessSuffix.Name = "txtAccessSuffix";
this.txtAccessSuffix.Size = new System.Drawing.Size(230, 23);
this.txtAccessSuffix.Size = new System.Drawing.Size(230, 39);
this.txtAccessSuffix.TabIndex = 49;
this.txtAccessSuffix.Enter += new System.EventHandler(this.txtAccessSuffix_Enter);
this.txtAccessSuffix.Leave += new System.EventHandler(this.txtAccessSuffix_Leave);
@@ -547,7 +547,7 @@
this.cbxAccessReadFolder.AutoSize = true;
this.cbxAccessReadFolder.Location = new System.Drawing.Point(290, 161);
this.cbxAccessReadFolder.Name = "cbxAccessReadFolder";
this.cbxAccessReadFolder.Size = new System.Drawing.Size(87, 21);
this.cbxAccessReadFolder.Size = new System.Drawing.Size(166, 35);
this.cbxAccessReadFolder.TabIndex = 47;
this.cbxAccessReadFolder.Text = "读取文件夹";
this.cbxAccessReadFolder.UseVisualStyleBackColor = true;
@@ -560,7 +560,7 @@
this.cbxAccessReadFile.CheckState = System.Windows.Forms.CheckState.Checked;
this.cbxAccessReadFile.Location = new System.Drawing.Point(208, 161);
this.cbxAccessReadFile.Name = "cbxAccessReadFile";
this.cbxAccessReadFile.Size = new System.Drawing.Size(75, 21);
this.cbxAccessReadFile.Size = new System.Drawing.Size(142, 35);
this.cbxAccessReadFile.TabIndex = 46;
this.cbxAccessReadFile.Text = "读取文件";
this.cbxAccessReadFile.UseVisualStyleBackColor = true;
@@ -580,7 +580,7 @@
//
this.txtAccessAutoSqlName.Location = new System.Drawing.Point(205, 195);
this.txtAccessAutoSqlName.Name = "txtAccessAutoSqlName";
this.txtAccessAutoSqlName.Size = new System.Drawing.Size(230, 23);
this.txtAccessAutoSqlName.Size = new System.Drawing.Size(230, 39);
this.txtAccessAutoSqlName.TabIndex = 43;
this.txtAccessAutoSqlName.Enter += new System.EventHandler(this.txtAccessAutoSqlName_Enter);
this.txtAccessAutoSqlName.Leave += new System.EventHandler(this.txtAccessAutoSqlName_Leave);
@@ -590,7 +590,7 @@
this.label11.AutoSize = true;
this.label11.Location = new System.Drawing.Point(97, 198);
this.label11.Name = "label11";
this.label11.Size = new System.Drawing.Size(104, 17);
this.label11.Size = new System.Drawing.Size(206, 31);
this.label11.TabIndex = 41;
this.label11.Text = "自定义查询语句:";
//
@@ -599,7 +599,7 @@
this.cbxAccessNewVersion.AutoSize = true;
this.cbxAccessNewVersion.Location = new System.Drawing.Point(352, 14);
this.cbxAccessNewVersion.Name = "cbxAccessNewVersion";
this.cbxAccessNewVersion.Size = new System.Drawing.Size(139, 21);
this.cbxAccessNewVersion.Size = new System.Drawing.Size(268, 35);
this.cbxAccessNewVersion.TabIndex = 40;
this.cbxAccessNewVersion.Text = "office 2007以后版本";
this.cbxAccessNewVersion.UseVisualStyleBackColor = true;
@@ -610,7 +610,7 @@
this.label15.AutoSize = true;
this.label15.Location = new System.Drawing.Point(80, 15);
this.label15.Name = "label15";
this.label15.Size = new System.Drawing.Size(121, 17);
this.label15.Size = new System.Drawing.Size(238, 31);
this.label15.TabIndex = 39;
this.label15.Text = "Office Access版本:";
//
@@ -619,7 +619,7 @@
this.label16.AutoSize = true;
this.label16.Location = new System.Drawing.Point(60, 161);
this.label16.Name = "label16";
this.label16.Size = new System.Drawing.Size(141, 17);
this.label16.Size = new System.Drawing.Size(280, 31);
this.label16.TabIndex = 38;
this.label16.Text = "读取模式(文件/文件夹):";
//
@@ -628,7 +628,7 @@
this.label21.AutoSize = true;
this.label21.Location = new System.Drawing.Point(85, 127);
this.label21.Name = "label21";
this.label21.Size = new System.Drawing.Size(116, 17);
this.label21.Size = new System.Drawing.Size(230, 31);
this.label21.TabIndex = 37;
this.label21.Text = "自定义文件名格式:";
//
@@ -636,7 +636,7 @@
//
this.txtAccessFileName.Location = new System.Drawing.Point(205, 124);
this.txtAccessFileName.Name = "txtAccessFileName";
this.txtAccessFileName.Size = new System.Drawing.Size(230, 23);
this.txtAccessFileName.Size = new System.Drawing.Size(230, 39);
this.txtAccessFileName.TabIndex = 36;
this.txtAccessFileName.Enter += new System.EventHandler(this.txtAccessFileName_Enter);
this.txtAccessFileName.Leave += new System.EventHandler(this.txtAccessFileName_Leave);
@@ -648,7 +648,7 @@
this.cbxAccessOldVersion.CheckState = System.Windows.Forms.CheckState.Checked;
this.cbxAccessOldVersion.Location = new System.Drawing.Point(206, 14);
this.cbxAccessOldVersion.Name = "cbxAccessOldVersion";
this.cbxAccessOldVersion.Size = new System.Drawing.Size(139, 21);
this.cbxAccessOldVersion.Size = new System.Drawing.Size(268, 35);
this.cbxAccessOldVersion.TabIndex = 33;
this.cbxAccessOldVersion.Text = "office 2007以前版本";
this.cbxAccessOldVersion.UseVisualStyleBackColor = true;
@@ -659,7 +659,7 @@
this.label31.AutoSize = true;
this.label31.Location = new System.Drawing.Point(97, 90);
this.label31.Name = "label31";
this.label31.Size = new System.Drawing.Size(104, 17);
this.label31.Size = new System.Drawing.Size(206, 31);
this.label31.TabIndex = 34;
this.label31.Text = "日期列特殊格式:";
//
@@ -667,7 +667,7 @@
//
this.txtAccessSpecialDateColumnFormat.Location = new System.Drawing.Point(205, 87);
this.txtAccessSpecialDateColumnFormat.Name = "txtAccessSpecialDateColumnFormat";
this.txtAccessSpecialDateColumnFormat.Size = new System.Drawing.Size(230, 23);
this.txtAccessSpecialDateColumnFormat.Size = new System.Drawing.Size(230, 39);
this.txtAccessSpecialDateColumnFormat.TabIndex = 35;
this.txtAccessSpecialDateColumnFormat.Enter += new System.EventHandler(this.txtAccessSpecialDateColumnFormat_Enter);
this.txtAccessSpecialDateColumnFormat.Leave += new System.EventHandler(this.txtAccessSpecialDateColumnFormat_Leave);
@@ -684,9 +684,9 @@
this.tabSQLite.Controls.Add(this.txtSqliteFileNameFormat);
this.tabSQLite.Controls.Add(this.label8);
this.tabSQLite.Controls.Add(this.txtSqliteSpecialDateColumnFormat);
this.tabSQLite.Location = new System.Drawing.Point(4, 26);
this.tabSQLite.Location = new System.Drawing.Point(8, 45);
this.tabSQLite.Name = "tabSQLite";
this.tabSQLite.Size = new System.Drawing.Size(661, 336);
this.tabSQLite.Size = new System.Drawing.Size(920, 441);
this.tabSQLite.TabIndex = 2;
this.tabSQLite.Text = "SQLLite";
this.tabSQLite.UseVisualStyleBackColor = true;
@@ -696,7 +696,7 @@
this.label5.AutoSize = true;
this.label5.Location = new System.Drawing.Point(97, 123);
this.label5.Name = "label5";
this.label5.Size = new System.Drawing.Size(104, 17);
this.label5.Size = new System.Drawing.Size(206, 31);
this.label5.TabIndex = 76;
this.label5.Text = "自定义查询语句:";
//
@@ -704,7 +704,7 @@
//
this.txtSqliteAutoSqlName.Location = new System.Drawing.Point(206, 120);
this.txtSqliteAutoSqlName.Name = "txtSqliteAutoSqlName";
this.txtSqliteAutoSqlName.Size = new System.Drawing.Size(230, 23);
this.txtSqliteAutoSqlName.Size = new System.Drawing.Size(230, 39);
this.txtSqliteAutoSqlName.TabIndex = 72;
this.txtSqliteAutoSqlName.Enter += new System.EventHandler(this.txtSqliteAutoSqlName_Enter);
this.txtSqliteAutoSqlName.Leave += new System.EventHandler(this.txtSqliteAutoSqlName_Leave);
@@ -714,7 +714,7 @@
this.cbxSqliteReadFolder.AutoSize = true;
this.cbxSqliteReadFolder.Location = new System.Drawing.Point(288, 15);
this.cbxSqliteReadFolder.Name = "cbxSqliteReadFolder";
this.cbxSqliteReadFolder.Size = new System.Drawing.Size(87, 21);
this.cbxSqliteReadFolder.Size = new System.Drawing.Size(166, 35);
this.cbxSqliteReadFolder.TabIndex = 75;
this.cbxSqliteReadFolder.Text = "读取文件夹";
this.cbxSqliteReadFolder.UseVisualStyleBackColor = true;
@@ -737,7 +737,7 @@
this.cbxSqliteReadFile.CheckState = System.Windows.Forms.CheckState.Checked;
this.cbxSqliteReadFile.Location = new System.Drawing.Point(206, 15);
this.cbxSqliteReadFile.Name = "cbxSqliteReadFile";
this.cbxSqliteReadFile.Size = new System.Drawing.Size(75, 21);
this.cbxSqliteReadFile.Size = new System.Drawing.Size(142, 35);
this.cbxSqliteReadFile.TabIndex = 74;
this.cbxSqliteReadFile.Text = "读取文件";
this.cbxSqliteReadFile.UseVisualStyleBackColor = true;
@@ -748,7 +748,7 @@
this.label6.AutoSize = true;
this.label6.Location = new System.Drawing.Point(60, 16);
this.label6.Name = "label6";
this.label6.Size = new System.Drawing.Size(141, 17);
this.label6.Size = new System.Drawing.Size(280, 31);
this.label6.TabIndex = 71;
this.label6.Text = "读取模式(文件/文件夹):";
//
@@ -757,7 +757,7 @@
this.label7.AutoSize = true;
this.label7.Location = new System.Drawing.Point(85, 88);
this.label7.Name = "label7";
this.label7.Size = new System.Drawing.Size(116, 17);
this.label7.Size = new System.Drawing.Size(230, 31);
this.label7.TabIndex = 70;
this.label7.Text = "自定义文件名格式:";
//
@@ -765,7 +765,7 @@
//
this.txtSqliteFileNameFormat.Location = new System.Drawing.Point(206, 85);
this.txtSqliteFileNameFormat.Name = "txtSqliteFileNameFormat";
this.txtSqliteFileNameFormat.Size = new System.Drawing.Size(230, 23);
this.txtSqliteFileNameFormat.Size = new System.Drawing.Size(230, 39);
this.txtSqliteFileNameFormat.TabIndex = 69;
this.txtSqliteFileNameFormat.Enter += new System.EventHandler(this.txtSqliteFileNameFormat_Enter);
this.txtSqliteFileNameFormat.Leave += new System.EventHandler(this.txtSqliteFileNameFormat_Leave);
@@ -775,7 +775,7 @@
this.label8.AutoSize = true;
this.label8.Location = new System.Drawing.Point(97, 53);
this.label8.Name = "label8";
this.label8.Size = new System.Drawing.Size(104, 17);
this.label8.Size = new System.Drawing.Size(206, 31);
this.label8.TabIndex = 67;
this.label8.Text = "日期列特殊格式:";
//
@@ -783,7 +783,7 @@
//
this.txtSqliteSpecialDateColumnFormat.Location = new System.Drawing.Point(206, 50);
this.txtSqliteSpecialDateColumnFormat.Name = "txtSqliteSpecialDateColumnFormat";
this.txtSqliteSpecialDateColumnFormat.Size = new System.Drawing.Size(230, 23);
this.txtSqliteSpecialDateColumnFormat.Size = new System.Drawing.Size(230, 39);
this.txtSqliteSpecialDateColumnFormat.TabIndex = 68;
this.txtSqliteSpecialDateColumnFormat.Enter += new System.EventHandler(this.txtSqliteSpecialDateColumnFormat_Enter);
this.txtSqliteSpecialDateColumnFormat.Leave += new System.EventHandler(this.txtSqliteSpecialDateColumnFormat_Leave);
@@ -797,9 +797,9 @@
this.tabSQLServer.Controls.Add(this.txtSqlServerConnection);
this.tabSQLServer.Controls.Add(this.label13);
this.tabSQLServer.Controls.Add(this.txtSqlServerSpecialDateColumnFormat);
this.tabSQLServer.Location = new System.Drawing.Point(4, 26);
this.tabSQLServer.Location = new System.Drawing.Point(8, 45);
this.tabSQLServer.Name = "tabSQLServer";
this.tabSQLServer.Size = new System.Drawing.Size(661, 336);
this.tabSQLServer.Size = new System.Drawing.Size(920, 441);
this.tabSQLServer.TabIndex = 3;
this.tabSQLServer.Text = "SQL Server";
this.tabSQLServer.UseVisualStyleBackColor = true;
@@ -809,7 +809,7 @@
this.label9.AutoSize = true;
this.label9.Location = new System.Drawing.Point(98, 116);
this.label9.Name = "label9";
this.label9.Size = new System.Drawing.Size(104, 17);
this.label9.Size = new System.Drawing.Size(206, 31);
this.label9.TabIndex = 76;
this.label9.Text = "自定义查询语句:";
//
@@ -817,7 +817,7 @@
//
this.txtSqlServerAutoSqlName.Location = new System.Drawing.Point(208, 113);
this.txtSqlServerAutoSqlName.Name = "txtSqlServerAutoSqlName";
this.txtSqlServerAutoSqlName.Size = new System.Drawing.Size(230, 23);
this.txtSqlServerAutoSqlName.Size = new System.Drawing.Size(230, 39);
this.txtSqlServerAutoSqlName.TabIndex = 72;
this.txtSqlServerAutoSqlName.Enter += new System.EventHandler(this.txtSqlServerAutoSqlName_Enter);
this.txtSqlServerAutoSqlName.Leave += new System.EventHandler(this.txtSqlServerAutoSqlName_Leave);
@@ -837,7 +837,7 @@
this.label12.AutoSize = true;
this.label12.Location = new System.Drawing.Point(86, 53);
this.label12.Name = "label12";
this.label12.Size = new System.Drawing.Size(116, 17);
this.label12.Size = new System.Drawing.Size(230, 31);
this.label12.TabIndex = 70;
this.label12.Text = "自定义连接字符串:";
//
@@ -856,7 +856,7 @@
this.label13.AutoSize = true;
this.label13.Location = new System.Drawing.Point(98, 18);
this.label13.Name = "label13";
this.label13.Size = new System.Drawing.Size(104, 17);
this.label13.Size = new System.Drawing.Size(206, 31);
this.label13.TabIndex = 67;
this.label13.Text = "日期列特殊格式:";
//
@@ -864,7 +864,7 @@
//
this.txtSqlServerSpecialDateColumnFormat.Location = new System.Drawing.Point(208, 15);
this.txtSqlServerSpecialDateColumnFormat.Name = "txtSqlServerSpecialDateColumnFormat";
this.txtSqlServerSpecialDateColumnFormat.Size = new System.Drawing.Size(230, 23);
this.txtSqlServerSpecialDateColumnFormat.Size = new System.Drawing.Size(230, 39);
this.txtSqlServerSpecialDateColumnFormat.TabIndex = 68;
this.txtSqlServerSpecialDateColumnFormat.Enter += new System.EventHandler(this.txtSqlServerSpecialDateColumnFormat_Enter);
this.txtSqlServerSpecialDateColumnFormat.Leave += new System.EventHandler(this.txtSqlServerSpecialDateColumnFormat_Leave);
@@ -876,9 +876,9 @@
this.tabMySql.Controls.Add(this.txtMySqlAutoSql);
this.tabMySql.Controls.Add(this.label18);
this.tabMySql.Controls.Add(this.txtMySqlSpecialDateColumnFormat);
this.tabMySql.Location = new System.Drawing.Point(4, 26);
this.tabMySql.Location = new System.Drawing.Point(8, 45);
this.tabMySql.Name = "tabMySql";
this.tabMySql.Size = new System.Drawing.Size(661, 336);
this.tabMySql.Size = new System.Drawing.Size(920, 441);
this.tabMySql.TabIndex = 4;
this.tabMySql.Text = "MySql";
this.tabMySql.UseVisualStyleBackColor = true;
@@ -888,7 +888,7 @@
this.label14.AutoSize = true;
this.label14.Location = new System.Drawing.Point(99, 60);
this.label14.Name = "label14";
this.label14.Size = new System.Drawing.Size(104, 17);
this.label14.Size = new System.Drawing.Size(206, 31);
this.label14.TabIndex = 86;
this.label14.Text = "自定义查询语句:";
//
@@ -896,7 +896,7 @@
//
this.txtMySqlAutoSqlName.Location = new System.Drawing.Point(207, 57);
this.txtMySqlAutoSqlName.Name = "txtMySqlAutoSqlName";
this.txtMySqlAutoSqlName.Size = new System.Drawing.Size(230, 23);
this.txtMySqlAutoSqlName.Size = new System.Drawing.Size(230, 39);
this.txtMySqlAutoSqlName.TabIndex = 84;
this.txtMySqlAutoSqlName.Enter += new System.EventHandler(this.txtMySqlAutoSqlName_Enter);
this.txtMySqlAutoSqlName.Leave += new System.EventHandler(this.txtMySqlAutoSqlName_Leave);
@@ -916,7 +916,7 @@
this.label18.AutoSize = true;
this.label18.Location = new System.Drawing.Point(97, 25);
this.label18.Name = "label18";
this.label18.Size = new System.Drawing.Size(104, 17);
this.label18.Size = new System.Drawing.Size(206, 31);
this.label18.TabIndex = 80;
this.label18.Text = "日期列特殊格式:";
//
@@ -924,7 +924,7 @@
//
this.txtMySqlSpecialDateColumnFormat.Location = new System.Drawing.Point(207, 22);
this.txtMySqlSpecialDateColumnFormat.Name = "txtMySqlSpecialDateColumnFormat";
this.txtMySqlSpecialDateColumnFormat.Size = new System.Drawing.Size(230, 23);
this.txtMySqlSpecialDateColumnFormat.Size = new System.Drawing.Size(230, 39);
this.txtMySqlSpecialDateColumnFormat.TabIndex = 81;
this.txtMySqlSpecialDateColumnFormat.Enter += new System.EventHandler(this.txtMySqlSpecialDateColumnFormat_Enter);
this.txtMySqlSpecialDateColumnFormat.Leave += new System.EventHandler(this.txtMySqlSpecialDateColumnFormat_Leave);
@@ -936,10 +936,10 @@
this.tabOracle.Controls.Add(this.txtOracleAutoSql);
this.tabOracle.Controls.Add(this.label10);
this.tabOracle.Controls.Add(this.txtOracleSpecialDateColumnFormat);
this.tabOracle.Location = new System.Drawing.Point(4, 26);
this.tabOracle.Location = new System.Drawing.Point(8, 45);
this.tabOracle.Name = "tabOracle";
this.tabOracle.Padding = new System.Windows.Forms.Padding(3);
this.tabOracle.Size = new System.Drawing.Size(661, 336);
this.tabOracle.Size = new System.Drawing.Size(920, 441);
this.tabOracle.TabIndex = 5;
this.tabOracle.Text = "Oracle";
this.tabOracle.UseVisualStyleBackColor = true;
@@ -949,7 +949,7 @@
this.label4.AutoSize = true;
this.label4.Location = new System.Drawing.Point(102, 65);
this.label4.Name = "label4";
this.label4.Size = new System.Drawing.Size(104, 17);
this.label4.Size = new System.Drawing.Size(206, 31);
this.label4.TabIndex = 91;
this.label4.Text = "自定义查询语句:";
//
@@ -957,7 +957,7 @@
//
this.txtOracleAutoSqlName.Location = new System.Drawing.Point(210, 62);
this.txtOracleAutoSqlName.Name = "txtOracleAutoSqlName";
this.txtOracleAutoSqlName.Size = new System.Drawing.Size(230, 23);
this.txtOracleAutoSqlName.Size = new System.Drawing.Size(230, 39);
this.txtOracleAutoSqlName.TabIndex = 89;
this.txtOracleAutoSqlName.Enter += new System.EventHandler(this.txtOracleAutoSqlName_Enter);
this.txtOracleAutoSqlName.Leave += new System.EventHandler(this.txtOracleAutoSqlName_Leave);
@@ -977,7 +977,7 @@
this.label10.AutoSize = true;
this.label10.Location = new System.Drawing.Point(97, 30);
this.label10.Name = "label10";
this.label10.Size = new System.Drawing.Size(104, 17);
this.label10.Size = new System.Drawing.Size(206, 31);
this.label10.TabIndex = 87;
this.label10.Text = "日期列特殊格式:";
//
@@ -985,7 +985,7 @@
//
this.txtOracleSpecialDateColumnFormat.Location = new System.Drawing.Point(210, 27);
this.txtOracleSpecialDateColumnFormat.Name = "txtOracleSpecialDateColumnFormat";
this.txtOracleSpecialDateColumnFormat.Size = new System.Drawing.Size(230, 23);
this.txtOracleSpecialDateColumnFormat.Size = new System.Drawing.Size(230, 39);
this.txtOracleSpecialDateColumnFormat.TabIndex = 88;
this.txtOracleSpecialDateColumnFormat.Enter += new System.EventHandler(this.txtOracleSpecialDateColumnFormat_Enter);
this.txtOracleSpecialDateColumnFormat.Leave += new System.EventHandler(this.txtOracleSpecialDateColumnFormat_Leave);
@@ -1010,10 +1010,10 @@
this.tabTxt.Controls.Add(this.txtNormalFileNameFormat);
this.tabTxt.Controls.Add(this.label28);
this.tabTxt.Controls.Add(this.txtNormalFileSpecialDateColumnFormat);
this.tabTxt.Location = new System.Drawing.Point(4, 26);
this.tabTxt.Location = new System.Drawing.Point(8, 45);
this.tabTxt.Name = "tabTxt";
this.tabTxt.Padding = new System.Windows.Forms.Padding(3);
this.tabTxt.Size = new System.Drawing.Size(661, 336);
this.tabTxt.Size = new System.Drawing.Size(920, 441);
this.tabTxt.TabIndex = 7;
this.tabTxt.Text = "TXT";
this.tabTxt.UseVisualStyleBackColor = true;
@@ -1025,7 +1025,7 @@
this.cbxNormalFileNoCustomDate.CheckState = System.Windows.Forms.CheckState.Checked;
this.cbxNormalFileNoCustomDate.Location = new System.Drawing.Point(270, 283);
this.cbxNormalFileNoCustomDate.Name = "cbxNormalFileNoCustomDate";
this.cbxNormalFileNoCustomDate.Size = new System.Drawing.Size(39, 21);
this.cbxNormalFileNoCustomDate.Size = new System.Drawing.Size(70, 35);
this.cbxNormalFileNoCustomDate.TabIndex = 67;
this.cbxNormalFileNoCustomDate.Text = "否";
this.cbxNormalFileNoCustomDate.UseVisualStyleBackColor = true;
@@ -1036,7 +1036,7 @@
this.cbxNormalFileCustomDate.AutoSize = true;
this.cbxNormalFileCustomDate.Location = new System.Drawing.Point(208, 283);
this.cbxNormalFileCustomDate.Name = "cbxNormalFileCustomDate";
this.cbxNormalFileCustomDate.Size = new System.Drawing.Size(39, 21);
this.cbxNormalFileCustomDate.Size = new System.Drawing.Size(70, 35);
this.cbxNormalFileCustomDate.TabIndex = 66;
this.cbxNormalFileCustomDate.Text = "是";
this.cbxNormalFileCustomDate.UseVisualStyleBackColor = true;
@@ -1051,7 +1051,7 @@
0,
0});
this.numNormalFileStartIndex.Name = "numNormalFileStartIndex";
this.numNormalFileStartIndex.Size = new System.Drawing.Size(120, 23);
this.numNormalFileStartIndex.Size = new System.Drawing.Size(120, 39);
this.numNormalFileStartIndex.TabIndex = 65;
this.numNormalFileStartIndex.Value = new decimal(new int[] {
1,
@@ -1064,7 +1064,7 @@
this.label20.AutoSize = true;
this.label20.Location = new System.Drawing.Point(61, 283);
this.label20.Name = "label20";
this.label20.Size = new System.Drawing.Size(140, 17);
this.label20.Size = new System.Drawing.Size(278, 31);
this.label20.TabIndex = 64;
this.label20.Text = "是否由系统创建日期列:";
//
@@ -1073,7 +1073,7 @@
this.label19.AutoSize = true;
this.label19.Location = new System.Drawing.Point(97, 248);
this.label19.Name = "label19";
this.label19.Size = new System.Drawing.Size(104, 17);
this.label19.Size = new System.Drawing.Size(206, 31);
this.label19.TabIndex = 62;
this.label19.Text = "数据行起始行号:";
//
@@ -1082,7 +1082,7 @@
this.label17.AutoSize = true;
this.label17.Location = new System.Drawing.Point(97, 209);
this.label17.Name = "label17";
this.label17.Size = new System.Drawing.Size(104, 17);
this.label17.Size = new System.Drawing.Size(206, 31);
this.label17.TabIndex = 60;
this.label17.Text = "分割数据行选型:";
//
@@ -1090,7 +1090,7 @@
//
this.txtNormalFileReadSplitMode.Location = new System.Drawing.Point(207, 206);
this.txtNormalFileReadSplitMode.Name = "txtNormalFileReadSplitMode";
this.txtNormalFileReadSplitMode.Size = new System.Drawing.Size(230, 23);
this.txtNormalFileReadSplitMode.Size = new System.Drawing.Size(230, 39);
this.txtNormalFileReadSplitMode.TabIndex = 59;
this.txtNormalFileReadSplitMode.Enter += new System.EventHandler(this.txtNormalFileReadSplitMode_Enter);
this.txtNormalFileReadSplitMode.Leave += new System.EventHandler(this.txtNormalFileReadSplitMode_Leave);
@@ -1100,7 +1100,7 @@
this.label30.AutoSize = true;
this.label30.Location = new System.Drawing.Point(109, 170);
this.label30.Name = "label30";
this.label30.Size = new System.Drawing.Size(92, 17);
this.label30.Size = new System.Drawing.Size(182, 31);
this.label30.TabIndex = 58;
this.label30.Text = "读取方法选型:";
//
@@ -1108,7 +1108,7 @@
//
this.txtNormalFileReadDataMode.Location = new System.Drawing.Point(207, 167);
this.txtNormalFileReadDataMode.Name = "txtNormalFileReadDataMode";
this.txtNormalFileReadDataMode.Size = new System.Drawing.Size(230, 23);
this.txtNormalFileReadDataMode.Size = new System.Drawing.Size(230, 39);
this.txtNormalFileReadDataMode.TabIndex = 57;
this.txtNormalFileReadDataMode.Enter += new System.EventHandler(this.txtNormalFileReadDataMode_Enter);
this.txtNormalFileReadDataMode.Leave += new System.EventHandler(this.txtNormalFileReadDataMode_Leave);
@@ -1118,7 +1118,7 @@
this.label29.AutoSize = true;
this.label29.Location = new System.Drawing.Point(85, 132);
this.label29.Name = "label29";
this.label29.Size = new System.Drawing.Size(116, 17);
this.label29.Size = new System.Drawing.Size(230, 31);
this.label29.TabIndex = 56;
this.label29.Text = "自定义文件后缀名:";
//
@@ -1126,7 +1126,7 @@
//
this.txtNormalFileSuffix.Location = new System.Drawing.Point(207, 129);
this.txtNormalFileSuffix.Name = "txtNormalFileSuffix";
this.txtNormalFileSuffix.Size = new System.Drawing.Size(230, 23);
this.txtNormalFileSuffix.Size = new System.Drawing.Size(230, 39);
this.txtNormalFileSuffix.TabIndex = 55;
this.txtNormalFileSuffix.Enter += new System.EventHandler(this.txtNormalFileSuffix_Enter);
this.txtNormalFileSuffix.Leave += new System.EventHandler(this.txtNormalFileSuffix_Leave);
@@ -1136,7 +1136,7 @@
this.cbxNormalFileReadFolder.AutoSize = true;
this.cbxNormalFileReadFolder.Location = new System.Drawing.Point(288, 20);
this.cbxNormalFileReadFolder.Name = "cbxNormalFileReadFolder";
this.cbxNormalFileReadFolder.Size = new System.Drawing.Size(87, 21);
this.cbxNormalFileReadFolder.Size = new System.Drawing.Size(166, 35);
this.cbxNormalFileReadFolder.TabIndex = 54;
this.cbxNormalFileReadFolder.Text = "读取文件夹";
this.cbxNormalFileReadFolder.UseVisualStyleBackColor = true;
@@ -1149,7 +1149,7 @@
this.cbxNormalFileReadFile.CheckState = System.Windows.Forms.CheckState.Checked;
this.cbxNormalFileReadFile.Location = new System.Drawing.Point(207, 20);
this.cbxNormalFileReadFile.Name = "cbxNormalFileReadFile";
this.cbxNormalFileReadFile.Size = new System.Drawing.Size(75, 21);
this.cbxNormalFileReadFile.Size = new System.Drawing.Size(142, 35);
this.cbxNormalFileReadFile.TabIndex = 53;
this.cbxNormalFileReadFile.Text = "读取文件";
this.cbxNormalFileReadFile.UseVisualStyleBackColor = true;
@@ -1160,7 +1160,7 @@
this.label25.AutoSize = true;
this.label25.Location = new System.Drawing.Point(60, 20);
this.label25.Name = "label25";
this.label25.Size = new System.Drawing.Size(141, 17);
this.label25.Size = new System.Drawing.Size(280, 31);
this.label25.TabIndex = 52;
this.label25.Text = "读取模式(文件/文件夹):";
//
@@ -1169,7 +1169,7 @@
this.label26.AutoSize = true;
this.label26.Location = new System.Drawing.Point(85, 93);
this.label26.Name = "label26";
this.label26.Size = new System.Drawing.Size(116, 17);
this.label26.Size = new System.Drawing.Size(230, 31);
this.label26.TabIndex = 51;
this.label26.Text = "自定义文件名格式:";
//
@@ -1177,7 +1177,7 @@
//
this.txtNormalFileNameFormat.Location = new System.Drawing.Point(207, 90);
this.txtNormalFileNameFormat.Name = "txtNormalFileNameFormat";
this.txtNormalFileNameFormat.Size = new System.Drawing.Size(230, 23);
this.txtNormalFileNameFormat.Size = new System.Drawing.Size(230, 39);
this.txtNormalFileNameFormat.TabIndex = 50;
this.txtNormalFileNameFormat.Enter += new System.EventHandler(this.txtNormalFileNameFormat_Enter);
this.txtNormalFileNameFormat.Leave += new System.EventHandler(this.txtNormalFileNameFormat_Leave);
@@ -1187,7 +1187,7 @@
this.label28.AutoSize = true;
this.label28.Location = new System.Drawing.Point(97, 56);
this.label28.Name = "label28";
this.label28.Size = new System.Drawing.Size(104, 17);
this.label28.Size = new System.Drawing.Size(206, 31);
this.label28.TabIndex = 48;
this.label28.Text = "日期列特殊格式:";
//
@@ -1195,7 +1195,7 @@
//
this.txtNormalFileSpecialDateColumnFormat.Location = new System.Drawing.Point(207, 53);
this.txtNormalFileSpecialDateColumnFormat.Name = "txtNormalFileSpecialDateColumnFormat";
this.txtNormalFileSpecialDateColumnFormat.Size = new System.Drawing.Size(230, 23);
this.txtNormalFileSpecialDateColumnFormat.Size = new System.Drawing.Size(230, 39);
this.txtNormalFileSpecialDateColumnFormat.TabIndex = 49;
this.txtNormalFileSpecialDateColumnFormat.Enter += new System.EventHandler(this.txtNormalFileSpecialDateColumnFormat_Enter);
this.txtNormalFileSpecialDateColumnFormat.Leave += new System.EventHandler(this.txtNormalFileSpecialDateColumnFormat_Leave);
@@ -1208,14 +1208,14 @@
this.pnlAll.Dock = System.Windows.Forms.DockStyle.Fill;
this.pnlAll.Location = new System.Drawing.Point(0, 0);
this.pnlAll.Name = "pnlAll";
this.pnlAll.Size = new System.Drawing.Size(669, 418);
this.pnlAll.Size = new System.Drawing.Size(936, 546);
this.pnlAll.TabIndex = 1;
//
// frmSourceSetting
//
this.AutoScaleDimensions = new System.Drawing.SizeF(7F, 17F);
this.AutoScaleDimensions = new System.Drawing.SizeF(14F, 31F);
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
this.ClientSize = new System.Drawing.Size(669, 418);
this.ClientSize = new System.Drawing.Size(936, 546);
this.Controls.Add(this.pnlAll);
this.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon")));
@@ -1225,6 +1225,8 @@
this.StartPosition = System.Windows.Forms.FormStartPosition.CenterParent;
this.Text = "数据来源设置";
this.Load += new System.EventHandler(this.frmSourceSetting_Load);
this.Shown += new System.EventHandler(this.frmSourceSetting_Shown);
this.Resize += new System.EventHandler(this.frmSourceSetting_Resize);
this.pnlBottom.ResumeLayout(false);
this.pnlCenter.ResumeLayout(false);
this.tabcDS.ResumeLayout(false);
@@ -1263,7 +1265,7 @@
private System.Windows.Forms.Label lblExcelRemoteUser;
private System.Windows.Forms.TextBox txtExcelFileNameFormat;
private System.Windows.Forms.CheckBox cbxExcelOldVersion;
private System.Windows.Forms.Label label3;
private System.Windows.Forms.Label lbExcelDateFormat;
private System.Windows.Forms.TextBox txtExcelSpecialDateColumnFormat;
private System.Windows.Forms.TabPage tabFoxPro;
private System.Windows.Forms.TabPage tabAccess;
@@ -1303,7 +1305,7 @@
private System.Windows.Forms.Label label27;
private System.Windows.Forms.TextBox txtExcelAutoSql;
private System.Windows.Forms.TextBox txtExcelAutoSqlName;
private System.Windows.Forms.Label label1;
private System.Windows.Forms.Label lbExcelDynQuery;
private System.Windows.Forms.Label label5;
private System.Windows.Forms.TextBox txtSqliteAutoSqlName;
private System.Windows.Forms.CheckBox cbxSqliteReadFolder;


+ 28
- 0
CNAS_DBSync/frmSourceSetting.cs Прегледај датотеку

@@ -959,8 +959,36 @@ namespace CNAS_DBSync
{
cbxNormalFileCustomDate.Checked = !cbxNormalFileNoCustomDate.Checked;
}

#endregion

private void frmSourceSetting_Resize(object sender, EventArgs e)
{
arrayFields();
btnOK.Left = (this.Width - btnOK.Width) / 2;
}

private void frmSourceSetting_Shown(object sender, EventArgs e)
{
arrayFields();
btnOK.Left = (this.Width - btnOK.Width) / 2;
}

private void arrayFields() {
switch (tabcDS.SelectedIndex)
{
case 0:
FieldLine[] fields = {
new FieldLine(lbExcelDateFormat,txtExcelSpecialDateColumnFormat),
new FieldLine(lblExcelRemoteUser,txtExcelFileNameFormat),
new FieldLine(lbExcelDynQuery,txtExcelAutoSqlName)
};
FormSizeHelper.Arrange(tabExcel, fields);
txtExcelAutoSql.Width = txtExcelAutoSqlName.Width;
txtExcelAutoSql.Height = tabExcel.Height - txtExcelAutoSql.Top - 24;
break;
}
}

}
}

+ 8
- 5
CNAS_RunSync/frmSynchrousMain.Designer.cs Прегледај датотеку

@@ -104,6 +104,8 @@
//
// menuButton
//
this.menuButton.GripMargin = new System.Windows.Forms.Padding(2, 2, 0, 2);
this.menuButton.ImageScalingSize = new System.Drawing.Size(24, 24);
this.menuButton.Items.AddRange(new System.Windows.Forms.ToolStripItem[] {
this.tsmDbSeting,
this.tsmSynchrousSetting,
@@ -111,28 +113,29 @@
this.menuButton.Location = new System.Drawing.Point(0, 0);
this.menuButton.Name = "menuButton";
this.menuButton.Padding = new System.Windows.Forms.Padding(7, 3, 0, 3);
this.menuButton.Size = new System.Drawing.Size(934, 27);
this.menuButton.Size = new System.Drawing.Size(934, 34);
this.menuButton.TabIndex = 0;
this.menuButton.Text = "menuStrip1";
this.menuButton.ItemClicked += new System.Windows.Forms.ToolStripItemClickedEventHandler(this.menuButton_ItemClicked);
//
// tsmDbSeting
//
this.tsmDbSeting.Name = "tsmDbSeting";
this.tsmDbSeting.Size = new System.Drawing.Size(96, 21);
this.tsmDbSeting.Size = new System.Drawing.Size(139, 28);
this.tsmDbSeting.Text = "数据库配置(&B)";
this.tsmDbSeting.Click += new System.EventHandler(this.tsmDbSeting_Click);
//
// tsmSynchrousSetting
//
this.tsmSynchrousSetting.Name = "tsmSynchrousSetting";
this.tsmSynchrousSetting.Size = new System.Drawing.Size(83, 21);
this.tsmSynchrousSetting.Size = new System.Drawing.Size(120, 28);
this.tsmSynchrousSetting.Text = "同步配置(&S)";
this.tsmSynchrousSetting.Click += new System.EventHandler(this.tsmSynchrousSetting_Click);
//
// tsmHelper
//
this.tsmHelper.Name = "tsmHelper";
this.tsmHelper.Size = new System.Drawing.Size(61, 21);
this.tsmHelper.Size = new System.Drawing.Size(88, 28);
this.tsmHelper.Text = "帮助(&H)";
this.tsmHelper.Click += new System.EventHandler(this.tsmHelper_Click);
//
@@ -174,7 +177,7 @@
//
// frmSynchrousMain
//
this.AutoScaleDimensions = new System.Drawing.SizeF(7F, 17F);
this.AutoScaleDimensions = new System.Drawing.SizeF(11F, 24F);
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
this.ClientSize = new System.Drawing.Size(944, 621);
this.Controls.Add(this.pnlAll);


+ 5
- 0
CNAS_RunSync/frmSynchrousMain.cs Прегледај датотеку

@@ -109,5 +109,10 @@ namespace CNAS_RunSync
//Help.ShowHelp(null, strHelpFilePath, HelpNavigator.TopicId, "1");
System.Diagnostics.Process.Start(strHelpFilePath);
}

private void menuButton_ItemClicked(object sender, ToolStripItemClickedEventArgs e)
{

}
}
}

+ 2
- 1
CNAS_SyncService/SyncServiceOperation.cs Прегледај датотеку

@@ -84,7 +84,8 @@ namespace CNAS_SyncService
strNowDate = DateTime.Now.ToString("yyyyMMdd");
//删除日志文件
string logDays = FileOperation.GetSystemFormatConfigData().ShowLogDays;
if (int.TryParse(logDays, out int logday))
int logday;
if (int.TryParse(logDays, out logday))
AppLog.DeleteLog(logday);
}



+ 21
- 13
CnasSynchronusClient/CnasInsertOperation.cs Прегледај датотеку

@@ -162,23 +162,27 @@ namespace CnasSynchronusClient
ChangeStartEndSubStringConditonValue(item, drNewTarget);
break;
case MapCondition.Divided:
if (double.TryParse(drNewTarget[item.ColumnName].ToString(), out double db1))
double db1, db2;
if (double.TryParse(drNewTarget[item.ColumnName].ToString(), out db1))
{
if (double.TryParse(item.Value.ToString(), out double db2))
if (double.TryParse(item.Value.ToString(), out db2))
drNewTarget[item.ColumnName] = db1 / db2;
}
break;
case MapCondition.Multiplied:
if (double.TryParse(drNewTarget[item.ColumnName].ToString(), out double db3))
double db3, db4;
if (double.TryParse(drNewTarget[item.ColumnName].ToString(), out db3))
{
if (double.TryParse(item.Value.ToString(), out double db4))
if (double.TryParse(item.Value.ToString(), out db4))
drNewTarget[item.ColumnName] = db3 * db4;
}
break;
case MapCondition.DecimalDigits:
if (double.TryParse(drNewTarget[item.ColumnName].ToString(), out double db5))
double db5;
int count;
if (double.TryParse(drNewTarget[item.ColumnName].ToString(), out db5))
{
if (int.TryParse(item.Value.ToString(), out int count))
if (int.TryParse(item.Value.ToString(), out count))
drNewTarget[item.ColumnName] = Math.Round(db5, count);
}
break;
@@ -344,6 +348,8 @@ namespace CnasSynchronusClient
}
else
{
double result;
double conditionresult;
switch (item.Algorithm)
{
case "=":
@@ -360,22 +366,22 @@ namespace CnasSynchronusClient
break;
case ">":
if (dr[item.ColumnName] != null)
if (double.TryParse(dr[item.ColumnName].ToString(), out double result) && double.TryParse(item.ConditionValue, out double conditionresult))
if (double.TryParse(dr[item.ColumnName].ToString(), out result) && double.TryParse(item.ConditionValue, out conditionresult))
bIsMatch = result > conditionresult ? true : false;
break;
case "<":
if (dr[item.ColumnName] != null)
if (double.TryParse(dr[item.ColumnName].ToString(), out double result) && double.TryParse(item.ConditionValue, out double conditionresult))
if (double.TryParse(dr[item.ColumnName].ToString(), out result) && double.TryParse(item.ConditionValue, out conditionresult))
bIsMatch = result < conditionresult ? true : false;
break;
case ">=":
if (dr[item.ColumnName] != null)
if (double.TryParse(dr[item.ColumnName].ToString(), out double result) && double.TryParse(item.ConditionValue, out double conditionresult))
if (double.TryParse(dr[item.ColumnName].ToString(), out result) && double.TryParse(item.ConditionValue, out conditionresult))
bIsMatch = result >= conditionresult ? true : false;
break;
case "<=":
if (dr[item.ColumnName] != null)
if (double.TryParse(dr[item.ColumnName].ToString(), out double result) && double.TryParse(item.ConditionValue, out double conditionresult))
if (double.TryParse(dr[item.ColumnName].ToString(), out result) && double.TryParse(item.ConditionValue, out conditionresult))
bIsMatch = result <= conditionresult ? true : false;
break;
}
@@ -490,6 +496,7 @@ namespace CnasSynchronusClient
{
string strParam1 = strValues[0];
string strParam2 = strValues[2];
double db1, db2;

string[] strParam1s = strParam1.Split(new string[] { "[", "]" }, StringSplitOptions.RemoveEmptyEntries);
if (strParam1s.Length >= 1)
@@ -498,9 +505,9 @@ namespace CnasSynchronusClient
if (strParam2s.Length >= 1)
{
if (dtReadySource.Columns.Contains(strParam1s[0]) && dtReadySource.Columns.Contains(strParam2s[0]))
if (double.TryParse(drSource[strParam1s[0]].ToString(), out double db1))
if (double.TryParse(drSource[strParam1s[0]].ToString(), out db1))
{
if (double.TryParse(drSource[strParam2s[0]].ToString(), out double db2))
if (double.TryParse(drSource[strParam2s[0]].ToString(), out db2))
{
if (strParam1s.Length == 3)
db1 = GetDividedMultipliedData(db1, strParam1s[1], strParam1s[2]);
@@ -531,7 +538,8 @@ namespace CnasSynchronusClient
/// <returns></returns>
public double GetDividedMultipliedData(double db1, string strExpresstion, string strValue)
{
if (double.TryParse(strValue, out double db2))
double db2;
if (double.TryParse(strValue, out db2))
{
db1 = strExpresstion == "*" ? db1 * db2 : db1 / db2;
}


+ 10
- 0
CnasSynchronusClient/TargetCnasData/DB2CNASDataOperation.cs Прегледај датотеку

@@ -63,11 +63,21 @@ namespace CnasSynchronusClient
return db2DataBaseService.GetMaxTimeByTableName(dataBase, strTableName, strDateColumn, strInstrumentColumn, strInstrumentValue);
}

public DataTable GetTableData(DataBaseInfo dataBase, string strSql)
{
throw new NotImplementedException();
}

public int InsertDataToCNASTable(DataTable dt, DataBaseInfo dataBase, List<SyncParamasInfo> syncParamasInfos, string strInsturmentColumn, List<CnasConditionMapValue> lstFixedValue)
{
return db2DataBaseService.InsertDataToCNASTable(dt, dataBase, syncParamasInfos, strInsturmentColumn, lstFixedValue);
}

public bool InsertTableData(DataBaseInfo dataBase, string strSql)
{
throw new NotImplementedException();
}

public bool TestConnect(DataBaseInfo dataBase)
{
return db2DataBaseService.TestConnect(dataBase.DBHost, dataBase.DBName, dataBase.DBUser, dataBase.DBPwd, dataBase.DBPort);


+ 21
- 1
CnasSynchronusClient/TargetCnasData/ICnasDataOperation.cs Прегледај датотеку

@@ -1,4 +1,6 @@
using CnasSynchrousModel;
using CnasSynchronousCommon;
using CnasSynchronusDAL;
using CnasSynchrousModel;
using System;
using System.Collections.Generic;
using System.Data;
@@ -52,6 +54,24 @@ namespace CnasSynchronusClient
/// <param name="strMac"></param>
/// <returns></returns>
bool CheckMacMessage(DataBaseInfo dataBase, string strMac);

/// <summary>
/// 获取某个表的数据
/// </summary>
/// <param name="dataBase"></param>
/// <param name="strSql"></param>
/// <returns></returns>
DataTable GetTableData(DataBaseInfo dataBase, string strSql);


/// <summary>
/// 插入某个表的数据
/// </summary>
/// <param name="dataBase"></param>
/// <param name="strSql"></param>
/// <returns></returns>
bool InsertTableData(DataBaseInfo dataBase, string strSql);

}




+ 42
- 1
CnasSynchronusClient/TargetCnasData/MySQLCNASDataOperation.cs Прегледај датотеку

@@ -1,4 +1,5 @@
using CnasSynchronusDAL;
using CnasSynchronousCommon;
using CnasSynchronusDAL;
using CnasSynchronusIDAL;
using CnasSynchrousModel;
using System;
@@ -73,5 +74,45 @@ namespace CnasSynchronusClient
{
return mysqlDataBaseService.TestConnect(dataBase.DBHost, dataBase.DBName, dataBase.DBUser, dataBase.DBPwd, dataBase.DBPort);
}


/// <summary>
/// 获取某个表的数据
/// </summary>
/// <param name="dataBase"></param>
/// <param name="strSql"></param>
/// <returns></returns>
public DataTable GetTableData(DataBaseInfo dataBase, string strSql)
{
DataTable dt = new DataTable();
try
{
dt = mysqlDataBaseService.GetTableData(dataBase, strSql);
}
catch (Exception ex)
{
AppLog.Error(ex.Message);
}
return dt;
}

/// <summary>
/// 插入某个表的数据
/// </summary>
/// <param name="dataBase"></param>
/// <param name="strSql"></param>
/// <returns></returns>
public bool InsertTableData(DataBaseInfo dataBase, string strSql)
{
try
{
return mysqlDataBaseService.InsertTableData(dataBase, strSql);
}
catch (Exception ex)
{
AppLog.Error(ex.Message);
}
return false;
}
}
}

+ 10
- 0
CnasSynchronusClient/TargetCnasData/MySQLCNASDataOperationByWeb.cs Прегледај датотеку

@@ -321,5 +321,15 @@ namespace CnasSynchronusClient
}
return dt;
}

public DataTable GetTableData(DataBaseInfo dataBase, string strSql)
{
throw new NotImplementedException();
}

public bool InsertTableData(DataBaseInfo dataBase, string strSql)
{
throw new NotImplementedException();
}
}
}

+ 10
- 0
CnasSynchronusClient/TargetCnasData/OracleCnasDataOperation.cs Прегледај датотеку

@@ -46,11 +46,21 @@ namespace CnasSynchronusClient
return oracleDatabaseService.GetMaxTimeByTableName(dataBase, strTableName, strDateColumn, strInstrumentColumn, strInstrumentValue);
}

public DataTable GetTableData(DataBaseInfo dataBase, string strSql)
{
throw new System.NotImplementedException();
}

public int InsertDataToCNASTable(DataTable dt, DataBaseInfo dataBase, List<SyncParamasInfo> syncParamasInfos, string strInstrumentColumn, List<CnasConditionMapValue> lstFixedValue = null)
{
return oracleDatabaseService.InsertDataToCNASTable(dt, dataBase, syncParamasInfos, strInstrumentColumn, lstFixedValue);
}

public bool InsertTableData(DataBaseInfo dataBase, string strSql)
{
throw new System.NotImplementedException();
}

public bool TestConnect(DataBaseInfo dataBase)
{
return oracleDatabaseService.TestConnect(dataBase.DBHost, dataBase.DBName, dataBase.DBUser, dataBase.DBPwd, dataBase.DBPort);


+ 40
- 0
CnasSynchronusDAL/DAL/MySQLDAL.cs Прегледај датотеку

@@ -7,6 +7,7 @@ using MySql.Data.MySqlClient;
using CnasSynchronousCommon;
using CnasSynchrousModel;
using System.Reflection;
using Devart.Common;

namespace CnasSynchronusDAL
{
@@ -553,5 +554,44 @@ namespace CnasSynchronusDAL
//返回数据
return dtNewFormat;
}

/// <summary>
/// 获取某个表的数据
/// </summary>
/// <param name="strSql"></param>
/// <returns></returns>
public DataTable GetTableData(string strSql)
{
DataTable dt = new DataTable();
try
{
dt = MySQLHelper.ExecuteDataSet(strSql).Tables[0];
}
catch (Exception ex)
{
AppLog.Error(ex.Message);
}
return dt;
}

/// <summary>
/// 插入某个表的数据
/// </summary>
/// <param name="strSql"></param>
/// <returns></returns>
public bool InsertTableData(string strSql)
{
try
{
return MySQLHelper.ExecuteNonQuery(strSql)>0;
}
catch (Exception ex)
{
AppLog.Error(ex.Message);
}
return false;
}

}
}

+ 10
- 0
CnasSynchronusDAL/Service/Db2DBService.cs Прегледај датотеку

@@ -55,6 +55,11 @@ namespace CnasSynchronusDAL
return baseDAL.GetMaxTimeByTableName(strTableName, strDateColumn, strInstrumentColumn, strInstrumentValue);
}

public DataTable GetTableData(DataBaseInfo dataBase, string strSql)
{
throw new NotImplementedException();
}

public int InsertDataToCNASTable(DataTable dt, DataBaseInfo dataBase, List<SyncParamasInfo> syncParamasInfos,string strInstrumentColumn, List<CnasConditionMapValue> lstFixedValue = null)
{
SQLDB2DAL baseDAL = new SQLDB2DAL();
@@ -62,6 +67,11 @@ namespace CnasSynchronusDAL
return baseDAL.InsertCnasData(dt, syncParamasInfos, strInstrumentColumn, lstFixedValue);
}

public bool InsertTableData(DataBaseInfo dataBase, string strSql)
{
throw new NotImplementedException();
}

public bool TestConnect(string strHost, string strName, string strUser, string strPwd, string strPort)
{
SQLDB2DAL basedal = new SQLDB2DAL();


+ 32
- 1
CnasSynchronusDAL/Service/MySqlDBService.cs Прегледај датотеку

@@ -1,6 +1,7 @@
using System;
using System.Collections.Generic;
using System.Data;
using System.Data.Entity;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
@@ -106,6 +107,36 @@ namespace CnasSynchronusDAL
MySQLDAL mySQLBase = new MySQLDAL();
mySQLBase.CreateConnectString(dataBase.DBHost, dataBase.DBPort, dataBase.DBName, dataBase.DBUser, dataBase.DBPwd);
return mySQLBase.GetMaxTimeByTableName(strTableName, strDateColumn, strInstrumentColumn, strInstrumentValue);
}
}


/// <summary>
/// 获取某个表的数据
/// </summary>
/// <param name="dataBase"></param>
/// <param name="strSql"></param>
/// <returns></returns>
public DataTable GetTableData(DataBaseInfo dataBase, string strSql)
{
MySQLDAL mySQLBase = new MySQLDAL();
mySQLBase.CreateConnectString(dataBase.DBHost, dataBase.DBPort, dataBase.DBName, dataBase.DBUser, dataBase.DBPwd);
return mySQLBase.GetTableData(strSql);
}

/// <summary>
/// 插入某个表的数据
/// </summary>
/// <param name="dataBase"></param>
/// <param name="strSql"></param>
/// <returns></returns>
public bool InsertTableData(DataBaseInfo dataBase, string strSql)
{
MySQLDAL mySQLBase = new MySQLDAL();
mySQLBase.CreateConnectString(dataBase.DBHost, dataBase.DBPort, dataBase.DBName, dataBase.DBUser, dataBase.DBPwd);

return mySQLBase.InsertTableData(strSql);
}

}
}

+ 10
- 0
CnasSynchronusDAL/Service/OracleDBService.cs Прегледај датотеку

@@ -75,12 +75,22 @@ namespace CnasSynchronusDAL
return OracleDAL.GetMaxTimeByTableName(strTableName, strDateColumn, strInstrumentColumn, strInstrumentValue);
}

public DataTable GetTableData(DataBaseInfo dataBase, string strSql)
{
throw new NotImplementedException();
}

public int InsertDataToCNASTable(DataTable dt, DataBaseInfo dataBase, List<SyncParamasInfo> syncParamasInfos, string strInstrumentColumn, List<CnasConditionMapValue> lstFixedValue = null)
{
OracleDAL.CreateConnection(dataBase.DBHost, dataBase.DBName, dataBase.DBUser, dataBase.DBPwd, dataBase.DBPort);
return OracleDAL.InsertCnasData(dt, syncParamasInfos, lstFixedValue, strInstrumentColumn);
}

public bool InsertTableData(DataBaseInfo dataBase, string strSql)
{
throw new NotImplementedException();
}

public bool TestConnect(string strHost, string strName, string strUser, string strPwd, string strPort)
{
OracleDAL.CreateConnection(strHost, strName, strUser, strPwd, strPort);


+ 19
- 2
CnasSynchronusIDAL/ITargetDataBaseService.cs Прегледај датотеку

@@ -44,7 +44,7 @@ namespace CnasSynchronusIDAL
/// <param name="syncParamasInfos"></param>
/// <param name="lstFixedValue"></param>
/// <returns></returns>
int InsertDataToCNASTable(DataTable dt, DataBaseInfo dataBase, List<SyncParamasInfo> syncParamasInfos,string strInstrumentColumn,List<CnasConditionMapValue> lstFixedValue = null);
int InsertDataToCNASTable(DataTable dt, DataBaseInfo dataBase, List<SyncParamasInfo> syncParamasInfos, string strInstrumentColumn, List<CnasConditionMapValue> lstFixedValue = null);

/// <summary>
/// 获取所有表的数据类型和长度
@@ -61,7 +61,7 @@ namespace CnasSynchronusIDAL
/// <param name="strTableName"></param>
/// <param name="strDateColumn"></param>
/// <returns></returns>
string GetMaxTimeByTableName(DataBaseInfo dataBase, string strTableName, string strDateColumn,string strInstrumentColumn,string strInstrumentValue);
string GetMaxTimeByTableName(DataBaseInfo dataBase, string strTableName, string strDateColumn, string strInstrumentColumn, string strInstrumentValue);

/// <summary>
/// 根据用户名密码获取登陆信息
@@ -79,5 +79,22 @@ namespace CnasSynchronusIDAL
/// <param name="strMac"></param>
/// <returns></returns>
bool CheckMacMessage(DataBaseInfo dataBase, string strMac);

/// <summary>
///
/// </summary>
/// <param name="dataBase"></param>
/// <param name="strSql"></param>
/// <returns></returns>
DataTable GetTableData(DataBaseInfo dataBase, string strSql);

/// <summary>
/// 插入某个表的数据
/// </summary>
/// <param name="dataBase"></param>
/// <param name="strSql"></param>
/// <returns></returns>
bool InsertTableData(DataBaseInfo dataBase, string strSql);

}
}


BIN
dll/CNASBalanceDBManage.exe Прегледај датотеку


BIN
dll/CNASBalanceDBManage.vshost.exe Прегледај датотеку


+ 49
- 0
dll/CNASBalanceDBManage.vshost.exe.config Прегледај датотеку

@@ -0,0 +1,49 @@
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<configSections>
<section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler, log4net"/>
</configSections>
<appSettings>
<add key="TargetDBType" value="Oracle"/>
<add key="InitalOperationPwd" value="123456"/>
<add key="StartWebApiUrl" value="0"/>
</appSettings>
<log4net>
<logger name="Log">
<level value="INFO"/>
<appender-ref ref="RollingLog"/>
</logger>
<logger name="Err">
<level value="ERROR"/>
<appender-ref ref="RollingErr"/>
</logger>
<appender name="RollingLog" type="log4net.Appender.RollingFileAppender">
<file value="Log\"/>
<appendToFile value="true"/>
<rollingStyle value="Date"/>
<datePattern value="yyyyMMdd'.txt'"/>
<staticLogFileName value="false"/>
<layout type="log4net.Layout.PatternLayout">
<conversionPattern value="记录时间:%d 线程ID:[%thread]- 操作信息:%m%n"/>
</layout>
<filter type="log4net.Filter.LevelRangeFilter">
<param name="LevelMin" value="INFO"/>
<param name="LevelMax" value="INFO"/>
</filter>
</appender>
<appender name="RollingErr" type="log4net.Appender.RollingFileAppender">
<file value="ErrorLog\"/>
<appendToFile value="true"/>
<rollingStyle value="Date"/>
<datePattern value="yyyyMMdd'.txt'"/>
<staticLogFileName value="false"/>
<layout type="log4net.Layout.PatternLayout">
<conversionPattern value="记录时间:%d 线程ID:[%thread]- 错误描述:%m%n"/>
</layout>
<filter type="log4net.Filter.LevelRangeFilter">
<param name="LevelMin" value="ERROR"/>
<param name="LevelMax" value="ERROR"/>
</filter>
</appender>
</log4net>
<startup><supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.8"/></startup></configuration>

+ 11
- 0
dll/CNASBalanceDBManage.vshost.exe.manifest Прегледај датотеку

@@ -0,0 +1,11 @@
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0">
<assemblyIdentity version="1.0.0.0" name="MyApplication.app"/>
<trustInfo xmlns="urn:schemas-microsoft-com:asm.v2">
<security>
<requestedPrivileges xmlns="urn:schemas-microsoft-com:asm.v3">
<requestedExecutionLevel level="asInvoker" uiAccess="false"/>
</requestedPrivileges>
</security>
</trustInfo>
</assembly>

BIN
dll/CNAS_BalanceClient.exe Прегледај датотеку


+ 27
- 27
dll/CNAS_BalanceClient.exe.config Прегледај датотеку

@@ -1,56 +1,56 @@
<?xml version="1.0" encoding="utf-8"?>
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<configSections>
<section name="log4net" type="System.Configuration.IgnoreSectionHandler" />
<section name="log4net" type="System.Configuration.IgnoreSectionHandler"/>
</configSections>
<appSettings>
<add key="TargetDBType" value="Mysql" />
<add key="InitalOperationPwd" value="123456" />
<add key="TargetDBType" value="Mysql"/>
<add key="InitalOperationPwd" value="123456"/>
</appSettings>
<log4net>
<logger name="Log">
<level value="INFO" />
<appender-ref ref="RollingLog" />
<level value="INFO"/>
<appender-ref ref="RollingLog"/>
</logger>
<logger name="Err">
<level value="ERROR" />
<appender-ref ref="RollingErr" />
<level value="ERROR"/>
<appender-ref ref="RollingErr"/>
</logger>
<appender name="RollingLog" type="log4net.Appender.RollingFileAppender">
<file value="Log\" />
<appendToFile value="true" />
<rollingStyle value="Date" />
<datePattern value="yyyyMMdd'.txt'" />
<staticLogFileName value="false" />
<file value="Log\"/>
<appendToFile value="true"/>
<rollingStyle value="Date"/>
<datePattern value="yyyyMMdd'.txt'"/>
<staticLogFileName value="false"/>
<layout type="log4net.Layout.PatternLayout">
<conversionPattern value="记录时间:%d 线程ID:[%thread]- 操作信息:%m%n" />
<conversionPattern value="记录时间:%d 线程ID:[%thread]- 操作信息:%m%n"/>
</layout>
<filter type="log4net.Filter.LevelRangeFilter">
<param name="LevelMin" value="INFO" />
<param name="LevelMax" value="INFO" />
<param name="LevelMin" value="INFO"/>
<param name="LevelMax" value="INFO"/>
</filter>
</appender>
<appender name="RollingErr" type="log4net.Appender.RollingFileAppender">
<file value="ErrorLog\" />
<appendToFile value="true" />
<rollingStyle value="Date" />
<datePattern value="yyyyMMdd'.txt'" />
<staticLogFileName value="false" />
<file value="ErrorLog\"/>
<appendToFile value="true"/>
<rollingStyle value="Date"/>
<datePattern value="yyyyMMdd'.txt'"/>
<staticLogFileName value="false"/>
<layout type="log4net.Layout.PatternLayout">
<conversionPattern value="记录时间:%d 线程ID:[%thread]- 错误描述:%m%n" />
<conversionPattern value="记录时间:%d 线程ID:[%thread]- 错误描述:%m%n"/>
</layout>
<filter type="log4net.Filter.LevelRangeFilter">
<param name="LevelMin" value="ERROR" />
<param name="LevelMax" value="ERROR" />
<param name="LevelMin" value="ERROR"/>
<param name="LevelMax" value="ERROR"/>
</filter>
</appender>
</log4net>
<runtime>
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
<dependentAssembly>
<assemblyIdentity name="Devart.Data" publicKeyToken="09af7300eec23701" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-5.0.2194.0" newVersion="5.0.2194.0" />
<assemblyIdentity name="Devart.Data" publicKeyToken="09af7300eec23701" culture="neutral"/>
<bindingRedirect oldVersion="0.0.0.0-5.0.2194.0" newVersion="5.0.2194.0"/>
</dependentAssembly>
</assemblyBinding>
</runtime>
</configuration>
<startup><supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.8"/></startup></configuration>

BIN
dll/CNAS_DBSync.exe Прегледај датотеку


+ 15
- 3
dll/CNAS_DBSync.exe.config Прегледај датотеку

@@ -4,10 +4,15 @@
<!-- For more information on Entity Framework configuration, visit http://go.microsoft.com/fwlink/?LinkID=237468 -->
<section name="entityFramework" type="System.Data.Entity.Internal.ConfigFile.EntityFrameworkSection, EntityFramework, Version=6.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" requirePermission="false"/>
<section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler, log4net"/>
<sectionGroup name="applicationSettings" type="System.Configuration.ApplicationSettingsGroup, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" >
<section name="CNAS_DBSync.Properties.Settings" type="System.Configuration.ClientSettingsSection, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" requirePermission="false" />
</sectionGroup>
</configSections>
<connectionStrings>
<add name="CoreDb" connectionString="Driver={IBM DB2 ODBC DRIVER};DataBase=SAMPLE; HostName=127.0.0.1; Protocol=TCPIP;Port=50000;Uid=db2admin;Pwd=123"/>
<add name="CNAS_DBSync.Properties.Settings.ConnectionString" connectionString="Data Source=E:\JXD\CNASClient\CNAS_DBSync\dll\database.db" providerName="Devart.Data.SQLite"/>
<add name="CoreDb" connectionString="Driver={IBM DB2 ODBC DRIVER};DataBase=SAMPLE; HostName=127.0.0.1; Protocol=TCPIP;Port=50000;Uid=db2admin;Pwd=123" />
<add name="CNAS_DBSync.Properties.Settings.ConnectionString"
connectionString="Data Source=C:\DEV\CNAS\CNASClient\CNAS_DBSync\dll\database.db"
providerName="Devart.Data.SQLite" />
</connectionStrings>
<appSettings>
<add key="TargetDBType" value="Mysql"/>
@@ -72,4 +77,11 @@
</filter>
</appender>
</log4net>
<startup><supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.8"/></startup></configuration>
<startup><supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.8"/></startup><applicationSettings>
<CNAS_DBSync.Properties.Settings>
<setting name="SyncParamSize" serializeAs="String">
<value />
</setting>
</CNAS_DBSync.Properties.Settings>
</applicationSettings>
</configuration>

BIN
dll/CNAS_DBSync.vshost.exe Прегледај датотеку


+ 87
- 0
dll/CNAS_DBSync.vshost.exe.config Прегледај датотеку

@@ -0,0 +1,87 @@
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<configSections>
<!-- For more information on Entity Framework configuration, visit http://go.microsoft.com/fwlink/?LinkID=237468 -->
<section name="entityFramework" type="System.Data.Entity.Internal.ConfigFile.EntityFrameworkSection, EntityFramework, Version=6.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" requirePermission="false"/>
<section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler, log4net"/>
<sectionGroup name="applicationSettings" type="System.Configuration.ApplicationSettingsGroup, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" >
<section name="CNAS_DBSync.Properties.Settings" type="System.Configuration.ClientSettingsSection, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" requirePermission="false" />
</sectionGroup>
</configSections>
<connectionStrings>
<add name="CoreDb" connectionString="Driver={IBM DB2 ODBC DRIVER};DataBase=SAMPLE; HostName=127.0.0.1; Protocol=TCPIP;Port=50000;Uid=db2admin;Pwd=123" />
<add name="CNAS_DBSync.Properties.Settings.ConnectionString"
connectionString="Data Source=C:\DEV\CNAS\CNASClient\CNAS_DBSync\dll\database.db"
providerName="Devart.Data.SQLite" />
</connectionStrings>
<appSettings>
<add key="TargetDBType" value="Mysql"/>
<add key="InitalOperationPwd" value="123456"/>
<add key="GetMacMethod" value="1"/>
<add key="StartGeneralVersion" value="1"/>
<add key="StartWebApiUrl" value="1"/>
<add key="WebApiUrl" value="http://localhost:60101/api"/>
</appSettings>
<entityFramework>
<defaultConnectionFactory type="System.Data.Entity.Infrastructure.LocalDbConnectionFactory, EntityFramework">
<parameters>
<parameter value="mssqllocaldb"/>
</parameters>
</defaultConnectionFactory>
<providers>
<provider invariantName="System.Data.SqlClient" type="System.Data.Entity.SqlServer.SqlProviderServices, EntityFramework.SqlServer"/>
<provider invariantName="System.Data.SQLite.EF6" type="System.Data.SQLite.EF6.SQLiteProviderServices, System.Data.SQLite.EF6"/>
</providers>
</entityFramework>
<system.data>
<DbProviderFactories>
<remove invariant="System.Data.SQLite.EF6"/>
<add name="SQLite Data Provider (Entity Framework 6)" invariant="System.Data.SQLite.EF6" description=".NET Framework Data Provider for SQLite (Entity Framework 6)" type="System.Data.SQLite.EF6.SQLiteProviderFactory, System.Data.SQLite.EF6"/>
<remove invariant="System.Data.SQLite"/><add name="SQLite Data Provider" invariant="System.Data.SQLite" description=".NET Framework Data Provider for SQLite" type="System.Data.SQLite.SQLiteFactory, System.Data.SQLite"/></DbProviderFactories>
</system.data>
<log4net>
<logger name="Log">
<level value="INFO"/>
<appender-ref ref="RollingLog"/>
</logger>
<logger name="Err">
<level value="ERROR"/>
<appender-ref ref="RollingErr"/>
</logger>
<appender name="RollingLog" type="log4net.Appender.RollingFileAppender">
<file value="Log\"/>
<appendToFile value="true"/>
<rollingStyle value="Date"/>
<datePattern value="yyyyMMdd'.txt'"/>
<staticLogFileName value="false"/>
<layout type="log4net.Layout.PatternLayout">
<conversionPattern value="记录时间:%d 线程ID:[%thread]- 操作信息:%m%n"/>
</layout>
<filter type="log4net.Filter.LevelRangeFilter">
<param name="LevelMin" value="INFO"/>
<param name="LevelMax" value="INFO"/>
</filter>
</appender>
<appender name="RollingErr" type="log4net.Appender.RollingFileAppender">
<file value="ErrorLog\"/>
<appendToFile value="true"/>
<rollingStyle value="Date"/>
<datePattern value="yyyyMMdd'.txt'"/>
<staticLogFileName value="false"/>
<layout type="log4net.Layout.PatternLayout">
<conversionPattern value="记录时间:%d 线程ID:[%thread]- 错误描述:%m%n"/>
</layout>
<filter type="log4net.Filter.LevelRangeFilter">
<param name="LevelMin" value="ERROR"/>
<param name="LevelMax" value="ERROR"/>
</filter>
</appender>
</log4net>
<startup><supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.8"/></startup><applicationSettings>
<CNAS_DBSync.Properties.Settings>
<setting name="SyncParamSize" serializeAs="String">
<value />
</setting>
</CNAS_DBSync.Properties.Settings>
</applicationSettings>
</configuration>

BIN
dll/CNAS_RunSync.exe Прегледај датотеку


BIN
dll/CNAS_SerialPort.dll Прегледај датотеку


BIN
dll/CNAS_SyncService.exe Прегледај датотеку


+ 35
- 35
dll/CNAS_SyncService.exe.config Прегледај датотеку

@@ -1,68 +1,68 @@
<?xml version="1.0" encoding="utf-8" ?>
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<configSections>
<section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler, log4net" />
<section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler, log4net"/>
</configSections>
<appSettings>
<add key="TargetDBType" value="MySQL" />
<add key="InitalOperationPwd" value="123456" />
<add key="TargetDBType" value="MySQL"/>
<add key="InitalOperationPwd" value="123456"/>
<add key="StartWebApiUrl" value="0"/>
<add key="WebApiUrl" value="http://localhost:60101/api"/>
</appSettings>
<log4net>
<logger name="Log">
<level value="INFO" />
<appender-ref ref="RollingLog" />
<level value="INFO"/>
<appender-ref ref="RollingLog"/>
</logger>
<logger name="Err">
<level value="ERROR" />
<appender-ref ref="RollingErr" />
<level value="ERROR"/>
<appender-ref ref="RollingErr"/>
</logger>
<logger name="ServiceLog">
<level value="INFO" />
<appender-ref ref="RollingServiceLog" />
<level value="INFO"/>
<appender-ref ref="RollingServiceLog"/>
</logger>
<appender name="RollingLog" type="log4net.Appender.RollingFileAppender">
<file value="Log\" />
<appendToFile value="true" />
<rollingStyle value="Date" />
<datePattern value="yyyyMMdd'.txt'" />
<staticLogFileName value="false" />
<file value="Log\"/>
<appendToFile value="true"/>
<rollingStyle value="Date"/>
<datePattern value="yyyyMMdd'.txt'"/>
<staticLogFileName value="false"/>
<layout type="log4net.Layout.PatternLayout">
<conversionPattern value="记录时间:%d 线程ID:[%thread]- 操作信息:%m%n" />
<conversionPattern value="记录时间:%d 线程ID:[%thread]- 操作信息:%m%n"/>
</layout>
<filter type="log4net.Filter.LevelRangeFilter">
<param name="LevelMin" value="INFO" />
<param name="LevelMax" value="INFO" />
<param name="LevelMin" value="INFO"/>
<param name="LevelMax" value="INFO"/>
</filter>
</appender>
<appender name="RollingErr" type="log4net.Appender.RollingFileAppender">
<file value="ErrorLog\" />
<appendToFile value="true" />
<rollingStyle value="Date" />
<datePattern value="yyyyMMdd'.txt'" />
<staticLogFileName value="false" />
<file value="ErrorLog\"/>
<appendToFile value="true"/>
<rollingStyle value="Date"/>
<datePattern value="yyyyMMdd'.txt'"/>
<staticLogFileName value="false"/>
<layout type="log4net.Layout.PatternLayout">
<conversionPattern value="记录时间:%d 线程ID:[%thread]- 错误描述:%m%n" />
<conversionPattern value="记录时间:%d 线程ID:[%thread]- 错误描述:%m%n"/>
</layout>
<filter type="log4net.Filter.LevelRangeFilter">
<param name="LevelMin" value="ERROR" />
<param name="LevelMax" value="ERROR" />
<param name="LevelMin" value="ERROR"/>
<param name="LevelMax" value="ERROR"/>
</filter>
</appender>
<appender name="RollingServiceLog" type="log4net.Appender.RollingFileAppender">
<file value="ServiceLog\" />
<appendToFile value="true" />
<rollingStyle value="Date" />
<datePattern value="yyyyMMdd'.txt'" />
<staticLogFileName value="false" />
<file value="ServiceLog\"/>
<appendToFile value="true"/>
<rollingStyle value="Date"/>
<datePattern value="yyyyMMdd'.txt'"/>
<staticLogFileName value="false"/>
<layout type="log4net.Layout.PatternLayout">
<conversionPattern value="记录时间:%d 线程ID:[%thread]- 信息描述:%m%n" />
<conversionPattern value="记录时间:%d 线程ID:[%thread]- 信息描述:%m%n"/>
</layout>
<filter type="log4net.Filter.LevelRangeFilter">
<param name="LevelMin" value="INFO" />
<param name="LevelMax" value="INFO" />
<param name="LevelMin" value="INFO"/>
<param name="LevelMax" value="INFO"/>
</filter>
</appender>
</log4net>
</configuration>
<startup><supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.8"/></startup></configuration>

BIN
dll/CnasLocalIDAL.dll Прегледај датотеку


BIN
dll/CnasSynchronousCommon.dll Прегледај датотеку


BIN
dll/CnasSynchronusClient.dll Прегледај датотеку


BIN
dll/CnasSynchronusDAL.dll Прегледај датотеку


BIN
dll/CnasSynchronusIDAL.dll Прегледај датотеку


BIN
dll/CnasSynchrousModel.dll Прегледај датотеку


+ 4
- 0
dll/Data/FormSize.xml Прегледај датотеку

@@ -0,0 +1,4 @@
<?xml version="1.0" encoding="utf-8"?>
<Forms>
<FormSyncParams>0,0,1727,1032,400</FormSyncParams>
</Forms>

+ 1
- 1
dll/Data/SyncCnasDataBase.mes Прегледај датотеку

@@ -1 +1 @@
/4OjQUpsGecll0xqHycz/L+lPK0LSkds3kpbfxPz8zCPd+s16KzzZc3RYrVagEFqWUlC2NWJgBLtc+tMLc2HJkq++Ewf/5QYIWw0dwMY90kkel2nmqRBK0dWfVWDOZOpdcAY+4YOYSFG98a3Wg3WLDyR5VozZDPfA41720qsQqCR1q7YoyEApjVWEQyk+r9gLfaCY8Z1EtVtdmrzpENRhrpsyi0u4Kb2RDuUW7nDgf4qfJbApbw7Kdae7ke6EMlO9V671gjh/78m404bQXztnKfgNOlb+A4bujFMxbSO41eL0IJrzvvEJQ4UoMTYj6zSUr6hRC60+eUBkB19OZr4zdksO5+a+okvRV58HMYgf+qt2ZJi/8hFoQ==
/4OjQUpsGecll0xqHycz/L+lPK0LSkds3kpbfxPz8zCPd+s16KzzZc3RYrVagEFqWUlC2NWJgBLtc+tMLc2HJkq++Ewf/5QYIWw0dwMY90kkel2nmqRBK0dWfVWDOZOpdcAY+4YOYSFG98a3Wg3WLDyR5VozZDPfA41720qsQqCR1q7YoyEApjVWEQyk+r9gLfaCY8Z1EtUxembAlb3j7elM+qBGcYnXd5Pb8M4TpopE/5fZCldOXIhfqAk5bYu6iMgHtcRH42D9X1cWE/19FUCq04Rt4BZKODKJAiSIU3YFyq7VBU+Ii3NHnw592fpfu09SHAs65vjpijd31AKUJzpTkvhBIBo3sJhknfamWRI=

+ 1
- 1
dll/Data/SyncInStrumentData.mes Прегледај датотеку

@@ -1 +1 @@
/4OjQUpsGecll0xqHycz/L+lPK0LSkds3kpbfxPz8zCW1I/HueTuOJOcD40MLI2D0tMGBACgOQKJ6uY/zxinGkLrJDCtdmDmvCeR1n1Hv+sdVxRY8tWYGGLijvZWhOzTx+NIPsCCPxG2JhtyMdOmPXaw9rO2jOmxYYzqi+uTe4RSnvmlg2X5u1T39xZueFOnurq+m5Q3v1PRYgqU2LlZXdR+P4SwRnjM07xrUsBgEyB6DIJlrLWpuf3zIYTNaGpbsC4ELycWtPudfCVNDLSxlrKZyc9NpAT04XeJAwX8Lq2tp4OKijLU76pLxi1ISQOg2kkl+XdtRfktDNPOFSDAsFtMo4DoqH/YXyMh/Pa0dVcaDEkCdaDGD6QLi7OMnDephI7djzAxy1gTzaF3z4mGYx2zBU4lgOKBQi4IqPYP34yJnakvc7w6vYlbWwTSIZveu98wVuSo+z3C0CSK8MwitpWfFKvL9fb3kyvXuRKe9EU9gFfugDOl+kNbphhBR6eC+t6WLC0fERVA9bl+2/DQ5EoyM0s8xVUX+liTfQv8DXLga1OUYM3gxVZRZwinrRvpxbp3f/qQVDuIlrHqy7yof99P1QOsnNYewbDjgzEt3/dFK08t0wTIVPl/T4YYkdC2NmO5/vaQHRQjF/nedaeI+AucsteqE4/UqD8B6wUL00+UX5iD4SxDJjeeRWAxBmH8Z9JKRDr7ZjICWxEDT5/X2rRYyPRdug4XaSJyTfVsJ/5B58UBJph5BWhOhsZ90gkHojhKXd7LtMfe66eunn2OMlI0aaAqT822QSZQqI8fN7KkKppg/iAIOmW/ZrH1s+RTjpMOb9lQWDZewXHaZrG8Plakm/JSxKTlUm/bO+1VhEesz9NuXDRMhoC+iQwRUpJV3xepenueVhHZcfAzOdkAFOVwPnbDXjhMPzi6nJFiZU4OsjXSj7D+LGKAg3COv2r9Ao+Sxyi+XEhcw8XBPv3eq6vWN4jcVeijI1Sgv8dn8ywOaceEP4lh8lgj9T8ozFMG7dAdaeD6D4yp0zwe33XnfeNgKfBChft7gcrkJa+6EjWnzpUBUmA5VOF4OIXMp51vi+QdV2qfqvGsh04/twSDhx01qlP0lSrjDqbPj5FCsdONu3y33o/AIAj+OTHaapQBpodxTdPxSzv4iTMvd7/AhEtELnMPmul6NMksb79/Lnovul5oeRPZYewGLWaNHg1vs+grrNZXcZ4bKoWBn7ep2nte4Cu0glkAw6YyvgFxMrSlI7mf5mJZJuQlu7WcQxCBQIyP7+nBFoMuVM1VKar0KcxCfN1tOeHw3HEW+IQA6bN89b4Eubbzfy+FviSCT4tZ943lZ/1f409dTnHN1EBO7T4vYaY2Cvb2GpkYUDPF89wicWLEvnl0JEiyA39RAnYOna+JbluiifgNcxMea77nPIyJFeRpRLso9Cf3r1Xhpqrrf8xnTSJJt0nni5FkVHZ3tzHbTPVQBHmQ5Bb5DZ05RLG8kO2jHV+CKPvDQ+wv0ycr71CnobJAOs/W4j3kVUtBhO7kbLO1w/kyZpKNzZU/Qrm91T9h7S4mJvImq7UIP24N16s08xk/03UEMTQXj70KOER86iPln8TuiT1oM/TZWcVhhK9Vo7UUSteHGOrnyw1kp54xD/74dNxEAXDkuXfuPq9T0i0Q74au412DUgi5/taF/SUeLU0JFPdIXhgM2dWMmXnOepBSZGD6S2WuxJOPdOTuaVCI8z6AZptO4ksb3os23WJJdPAzj3zHkMD5jG32BOECF1IUa049JKPhFC5jEqTN5R0C2NkDnkBEYKg9ASNTNComyyRGCTW+2mFzXFzv1iqdXH/gEaQ+DPTqJGc1JiH+Qf1YVjnSTW1m5XeFW4aiotV7UfNYWrgporzeJeOHs84zBKHVfDlcN6h56J3d29eZqfBByd5yi/XX1OO9s7o60EtSOEieLRR5t4tsmXO7NqWivEhFYLzniRVmuzUZzKtKXjlESID2/DhjP9zpn3b+4UPjBoCupbSeYGGTD+K77bOxNBpZbklavi9LOE+oA7YFvzzc9ElhwhDt91GNql3Dwg12+pxiMB1r8Pt8/Gd8dvfXKDHaTVUvTA2BLA9pNJQBIRtv3SM+SoIwY7LNvegPA2Bqp60XH2f8UDQJaCuY3A1S+ZuLSXOomlOe28CR0A/luBggT3mEawLcIs4PdgCC8wycEmIIW1geIxh4QvOS/U8VbbkDNnel8KzYCHEr4nbUl6HYAQ/ZOHuyILiX7ZxSIomC87vicE+yYyVhH/gOplE9K/bm+2RDaf2uhVbOv9bszV3dVyjOGFXkszmSX/s3/AnQ8fi2oqKln8LdIygWqBIox824BHupei/ietH6hUFcYSTsFmY=
/4OjQUpsGecll0xqHycz/L+lPK0LSkds3kpbfxPz8zCW1I/HueTuOJOcD40MLI2D0tMGBACgOQKJ6uY/zxinGkLrJDCtdmDmvCeR1n1Hv+sdVxRY8tWYGGLijvZWhOzTx+NIPsCCPxG2JhtyMdOmPXaw9rO2jOmxYYzqi+uTe4RSnvmlg2X5u1T39xZueFOnurq+m5Q3v1PRYgqU2LlZXdR+P4SwRnjM07xrUsBgEyB6DIJlrLWpuf3zIYTNaGpbsC4ELycWtPudfCVNDLSxlrKZyc9NpAT04XeJAwX8Lq2tp4OKijLU76pLxi1ISQOg2kkl+XdtRfktDNPOFSDAsFtMo4DoqH/YXyMh/Pa0dVcaDEkCdaDGD6QLi7OMnDephI7djzAxy1gTzaF3z4mGYx2zBU4lgOKBQi4IqPYP34yJnakvc7w6vYlbWwTSIZveu98wVuSo+z3C0CSK8MwitpWfFKvL9fb3kyvXuRKe9EU9gFfugDOl+kNbphhBR6eC+t6WLC0fERVA9bl+2/DQ5EoyM0s8xVUX+liTfQv8DXLga1OUYM3gxVZRZwinrRvpxbp3f/qQVDuIlrHqy7yof99P1QOsnNYewbDjgzEt3/dFK08t0wTIVPl/T4YYkdC2NmO5/vaQHRQjF/nedaeI+AucsteqE4/UqD8B6wUL00+UX5iD4SxDJjeeRWAxBmH8Z9JKRDr7ZjICWxEDT5/X2rRYyPRdug4XaSJyTfVsJ/5B58UBJph5BWhOhsZ90gkHojhKXd7LtMfe66eunn2OMlI0aaAqT822QSZQqI8fN7KkKppg/iAIOmW/ZrH1s+RTjpMOb9lQWDZewXHaZrG8Plakm/JSxKTlUm/bO+1VhEesz9NuXDRMhoC+iQwRUpJV3xepenueVhHZcfAzOdkAFOVwPnbDXjhMPzi6nJFiZU4OsjXSj7D+LGKAg3COv2r9Ao+Sxyi+XEhcw8XBPv3eq6vWN4jcVeijI1Sgv8dn8ywOaceEP4lh8lgj9T8ozFMG7dAdaeD6D4yp0zwe33XnfeNgKfBChft7gcrkJa+6EjWnzpUBUmA5VOF4OIXMp51vi+QdV2qfqvGsh04/twSDhx01qlP0lSrjDqbPj5FCsdONu3y33o/AIAj+OTHaapQBpodxTdPxSzv4iTMvd7/AhEtELnMPmul6NMksb79/Lnovul5oeRPZYewGLWaNHg1vs+grrNZXcZ4bKoWBn7ep2nte4Cu0glkAw6YyvgFxMrSlI7mf5mJZJuQlu7WcQxCBQIyP7+nBFoMuVM1VKar0KcxCfN1tOeHw3HEW+IQA6bN89b4Eubbzfy+FviSCT4tZ943lZ/1f409dTnHN1EBO7T4vYaY2Cvb2GpkYUDPF89wicWLEvnl0JEiyA39RAnYOna+JbluiifgNcxMea77nPIyJFeRpRLso9Cf3r1Xhpqrrf8xnTSJJt0nni5FkVHZ3tzHbTPVQBHmQ5Bb5DZ05RLG8kO2jHV+CKPvDQ+wv0ycr71CnobJAOs/W4j3kVUtBhO7kbLO1w/kyZpKNzZU/Qrm91T9h7S4mJvImq7UIP24N16s08xk/03UEMTQXj70KOER86iPln8TuiT1oM/TZWcVhhK9Vo7UUSteHGOrnyw1kp54xD/74dNxEAXDkuXfuPq9T0i0Q74au412DUgi5/taF/SUeLU0JFPdIXhgM2dWMmXnOepBSZGD6S2WuxJOPdOTuaVCI8z6AZptO4ksb3os23WJJdPAzj3zHkMD5jG32BOECF1IUa049JKPhFC5jEqTN5R0C2NkDnkBEYKg9ASNTNComyyRGCTW+2mFzXFzv1iqdXH/gEaQ+DPTqJGc1JiH+Qf1YVjnSTW1m5XeFW4aiotV7UfNYWrgporzeJeOHs84zBKHVfDlcN6h56J3d29eZqfBByd5yi/XX1OO9s7o60EtSOEieLRR5t4tsmXO7NqWivEhFYLzniRVmuzUZzKtKXjlESID2/DhjP9zpn3b+4UPjBoCupbSeYGGTD+K77bOxNBpZbklavi9LOE+oA7YFvzzc9ElhwhDt91GNql3Dwg12+pxiMB1r8Pt8/Gd8dvfXKDHaTVUvTA2BLA9pNJQBIRtv3SM+SoIwY7LNvegPA2Bqp60XH2f8UDQJaCuY3A1S+ZuLSXOomlOe28CR0A/luBggT3mEawLcIs4PdgCC8wycEmIIW1geIxh4QvOS/U8VbbkDNnel8KzYCHEr4nbUl6HYAQ/ZOHuyILiX7ZxSIomC87vicE+yYyVhH/gOplE9K/bm+2RDaf2uhVbOv9bszV3dVyjOGFXkszmSX6v2XvMw5A90RceiM+MXObrAh89JOcWhtLkkFyfPKSX5vbEbdVKrvdWtuEH/0cUpKHpx1sdfHOKJDPpXD/zLqowlg+ahuxeC3FC6MR7TYGm9zXeUZWetqC9bKWtxbbc0O+IKUAB3kgpWZrZYQ/PNy+bSRuyrhZPFNVo2rLX5wXDyxod2nSGOKgzKLtX3pytCk6szGoPZ16hI1S6uYWdwFMEU+2cCBeSTkfgLQ0sewLb29k5DRbDxjpXX3AjcVugayUvXaHPlPtDXir8QMGgX72Y3ELPuaQ85u/abaiYioNpdnfOiiSOAnU04js1bDkufdCO25EKIq3mauMpIYed8sAUtl7pz2vO/j2zfqwB2sGbWfIAolFLl8fju6ot72RLr5AMNGl4mGjP3fUxifNMJCrcgx1hZtggGbSoFhVi5xeplFGAqH80INC8+fOlxOb1/Re3oM2fN8IEgu+fRM33d+WUjR9gA4SLvncsq8JzxUywkkdjd3y62Bb3iWFOzwKB6kUwZgs0uU9abz9lLPbOBzdDzAU7RSZzW1FWqi+vdX9JIhjnLyksXVdFQKPCN52vIgujyKgbckoCUrJt1oCjnC3kmupdr0v90NuCYXzFRcNMXV2RV+IWT5NRjpbmn2hHQW3fRoVdoSuihZmavtpool4BN9N4vaohNMAeB2DKQBcnnAlxBom9PJPLTTF/JsstcBFTXlY9zSod1uQjt9kVjRJmAFtENhL7+nQmwkKV07gCpGSu1L2R9D8KZxLYSXw4x6oGIg1B14BrmWo2Tt/Me/3B5mda9adH5oSFVEjrID0UPbwm8quRcKNdecI8DmimxhofG5ltVfM2XI2iNm2Zo+sHkgqowk06mObWhV6M6iT8+ron0yC5mFnnlqQk65FRbSDgPxHDHEfd8BM8SaKFZNpn+eW8eRxxH3kDOXGzrVCQYihRNkIw6rwUcaNbdQVFsQLj/pVR9YpsVjwrp4B0IXFg105sDDv2yuOwyUCiY9I/zHFX1dQGAz9XEkqE511OdaDPzt52Q114LZERZbBuwShJwMJ6DcdDSqbKqOwh7lB7CpV5dq4XxsvowOytNyOOOWKS4O9k3SR1ZH373ajD3XqBQ4mnLZ/NkTTzJHJtBZTnXeD1CnrT8HIq8SaT/k80aPVdzG8ssDY/Zps8fVYHqogo8Qf1FxHcSiUDuTI+s0pbHGSRPEkmtquBnlNBQGjYsxywiTFr7Fi6XEB2iyYtKoCn2jY+OwiUzIvpFGSnapKCGvJ1uEhgBdxVgk78974X1mvtGv8eNRBJH2Snuelr/Ysa856ysWLlb1QeVwmd/2DjoXwzXf7U7Qs8hXZIH1KWpY1kDpck4FUhBQ+l1r+ZUEIC/1y+uITslNbADaRgvvrk5wVYUm84tMMR8HG0Lth5Xr1mpLq55jtlA82uB5PRd8isDhxpm1OhLMtaEJlzXeUv29YgCHDMmts7suV5jxxx8lYRIYFQu9Z3mBxIhJfUT+apSPJvDNwyPv2HHst1ovhvq9CC62/Lkff0b6mtrjJKxVPvBjqnTqfxOCbIDAHGVwoskmQHScwznxvK74vqm9hPZZmTTM+vMvU/mM42r/K0yAJVIki4NSjvAdqin5xQdY2NtkBZtqt3bnycF0JkbCDUz7FWt4hgqCT0NfkneSUGWI0VnGr0Q0FiU1YbtzpNK/h1wo5MEPvuQtQ==

+ 1
- 1
dll/Data/SyncOperationPwd.mes Прегледај датотеку

@@ -1 +1 @@
zIU7s3Rawog=
PIiCmqDq6wk=

+ 1
- 1
dll/Data/SyncPlatDataBase.mes Прегледај датотеку

@@ -1 +1 @@
/4OjQUpsGecll0xqHycz/L+lPK0LSkds3kpbfxPz8zCPd+s16KzzZc3RYrVagEFqWUlC2NWJgBLtc+tMLc2HJkq++Ewf/5QYIWw0dwMY90kkel2nmqRBK0dWfVWDOZOpdcAY+4YOYSFG98a3Wg3WLDyR5VozZDPfA41720qsQqCR1q7YoyEApjVWEQyk+r9gLfaCY8Z1EtVtdmrzpENRhrpsyi0u4Kb2RDuUW7nDgf4qfJbApbw7KcEIljW7G5S/2rGejSLLcKezyMkYa/R6H7ltweb0eY2sSwLVr6ni04AQL7Cm6IqRTvkMQgQ3pwUqNZdMj317NiCeiOEcdSEXdh1l/Gq82ixIwOinrLehWRYmYqfOSfyPTA==
/4OjQUpsGecll0xqHycz/L+lPK0LSkds3kpbfxPz8zCPd+s16KzzZc3RYrVagEFqWUlC2NWJgBLtc+tMLc2HJkq++Ewf/5QYIWw0dwMY90kkel2nmqRBK0dWfVWDOZOpdcAY+4YOYSFG98a3Wg3WLDyR5VozZDPfA41720qsQqCR1q7YoyEApjVWEQyk+r9gLfaCY8Z1EtUxembAlb3j7elM+qBGcYnXd5Pb8M4TpopE/5fZCldOXIzUoHW/wcqpiG3docnnCSsnNwonHPryUY00lQgo/ytfhc4ATmWyfe3XFi5eKUPysKgSA6SVxVNPKtHiMsDbUPWowwduuXkpX/OLQH4aBGWMnYIRob6ZzWMGg+f97YPw6g==

+ 1
- 1
dll/DataConfig/SystemFormatConfig.xml Прегледај датотеку

@@ -1 +1 @@
<?xml version="1.0" encoding="utf-8"?><SystemFormatConfig xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema"><ShowDelayDays>-100</ShowDelayDays><TableInfoMode>0</TableInfoMode><ShowLogDays>-10</ShowLogDays><TargetDBType>mysql</TargetDBType><StartGeneralVersion>0</StartGeneralVersion><StartWebApi>1</StartWebApi><WebApiUrl>http://localhost:8080/api</WebApiUrl></SystemFormatConfig>
<?xml version="1.0" encoding="utf-8"?><SystemFormatConfig xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema"><ShowDelayDays>-10</ShowDelayDays><TableInfoMode>1</TableInfoMode><ShowLogDays>-10</ShowLogDays><TargetDBType>mysql</TargetDBType><StartGeneralVersion>0</StartGeneralVersion><StartWebApi>0</StartWebApi><WebApiUrl>http://localhost:8080/api</WebApiUrl></SystemFormatConfig>

BIN
dll/Document/AshMeltingPoint.xls Прегледај датотеку


+ 6
- 0
dll/ErrorLog/20241231.txt Прегледај датотеку

@@ -0,0 +1,6 @@
记录时间:2024-12-31 17:11:59,040 线程ID:[9]- 错误描述:类名:AccessInstrumentData 方法名:.ctor 信息:未能找到路径“C:\Users\Li\Desktop\calorimeter.mdb”的一部分。
记录时间:2024-12-31 17:12:11,445 线程ID:[9]- 错误描述:类名:AccessInstrumentData 方法名:.ctor 信息:未能找到路径“C:\Users\Li\Desktop\calorimeter.mdb”的一部分。
记录时间:2024-12-31 17:12:15,138 线程ID:[9]- 错误描述:类名:MySQLDAL 方法名:GetTableStruct 信息:===-222-===CNAS_ANALYSIS_ASHSELECT * FROM CNAS_ANALYSIS_ASH Where 0=1
记录时间:2024-12-31 17:12:17,284 线程ID:[9]- 错误描述:类名:MySQLHelper 方法名:ExecuteDataSet 信息:Unable to connect to any of the specified MySQL hosts.
记录时间:2024-12-31 17:12:17,312 线程ID:[9]- 错误描述:类名:MySQLDAL 方法名:GetTableStruct 信息:Unable to connect to any of the specified MySQL hosts.
记录时间:2024-12-31 17:12:55,175 线程ID:[9]- 错误描述:类名:AccessInstrumentData 方法名:.ctor 信息:未能找到路径“C:\Users\Li\Desktop\calorimeter.mdb”的一部分。

+ 1
- 0
dll/ErrorLog/20250131.txt Прегледај датотеку

@@ -0,0 +1 @@
记录时间:2025-01-31 22:35:47,976 线程ID:[9]- 错误描述:类名:FormSizeHelper 方法名:Init 信息:“<”是意外的标记。标记应为“>”。 第 4 行,位置 1。

+ 22
- 0
dll/ErrorLog/20250212.txt Прегледај датотеку

@@ -0,0 +1,22 @@
记录时间:2025-02-12 08:27:08,398 线程ID:[1]- 错误描述:类名:MySQLHelper 方法名:ExecuteDataSet 信息:===-3113-===select * FROM macaddress WHERE MAC_ADDRESS='74-13-EA-0C-EB-71'server=localhost;port=3306;user=root;password=1;database=cnas;CharSet=utf8;Allow User Variables=True
记录时间:2025-02-12 08:27:08,404 线程ID:[1]- 错误描述:类名:MySQLHelper 方法名:ExecuteDataSet 信息:===-3223-===select * FROM macaddress WHERE MAC_ADDRESS='74-13-EA-0C-EB-71'server=localhost;port=3306;user=root;password=1;database=cnas;CharSet=utf8;Allow User Variables=True
记录时间:2025-02-12 08:27:08,406 线程ID:[1]- 错误描述:类名:MySQLHelper 方法名:ExecuteDataSet 信息:===-3223-===select * FROM macaddress WHERE MAC_ADDRESS='74-13-EA-0C-EB-71'System.Data.DataSet
记录时间:2025-02-12 08:27:08,475 线程ID:[1]- 错误描述:类名:MySQLHelper 方法名:ExecuteDataSet 信息:===-3333-===select * FROM macaddress WHERE MAC_ADDRESS='74-13-EA-0C-EB-71'System.Data.DataSet
记录时间:2025-02-12 08:27:08,476 线程ID:[1]- 错误描述:类名:MySQLHelper 方法名:ExecuteDataSet 信息:===-3443-===select * FROM macaddress WHERE MAC_ADDRESS='74-13-EA-0C-EB-71'System.Data.DataSet
记录时间:2025-02-12 08:27:47,053 线程ID:[1]- 错误描述:类名:MySQLHelper 方法名:ExecuteDataSet 信息:===-3113-===select * FROM macaddress WHERE MAC_ADDRESS='74-13-EA-0C-EB-71'server=localhost;port=3306;user=root;password=1;database=cnas;CharSet=utf8;Allow User Variables=True
记录时间:2025-02-12 08:27:47,058 线程ID:[1]- 错误描述:类名:MySQLHelper 方法名:ExecuteDataSet 信息:===-3223-===select * FROM macaddress WHERE MAC_ADDRESS='74-13-EA-0C-EB-71'server=localhost;port=3306;user=root;password=1;database=cnas;CharSet=utf8;Allow User Variables=True
记录时间:2025-02-12 08:27:47,059 线程ID:[1]- 错误描述:类名:MySQLHelper 方法名:ExecuteDataSet 信息:===-3223-===select * FROM macaddress WHERE MAC_ADDRESS='74-13-EA-0C-EB-71'System.Data.DataSet
记录时间:2025-02-12 08:27:47,084 线程ID:[1]- 错误描述:类名:MySQLHelper 方法名:ExecuteDataSet 信息:===-3333-===select * FROM macaddress WHERE MAC_ADDRESS='74-13-EA-0C-EB-71'System.Data.DataSet
记录时间:2025-02-12 08:27:47,085 线程ID:[1]- 错误描述:类名:MySQLHelper 方法名:ExecuteDataSet 信息:===-3443-===select * FROM macaddress WHERE MAC_ADDRESS='74-13-EA-0C-EB-71'System.Data.DataSet
记录时间:2025-02-12 08:34:55,503 线程ID:[1]- 错误描述:类名:MySQLHelper 方法名:ExecuteDataSet 信息:===-3113-===select * FROM macaddress WHERE MAC_ADDRESS='74-13-EA-0C-EB-71'server=localhost;port=3306;user=root;password=1;database=cnas;CharSet=utf8;Allow User Variables=True
记录时间:2025-02-12 08:34:55,509 线程ID:[1]- 错误描述:类名:MySQLHelper 方法名:ExecuteDataSet 信息:===-3223-===select * FROM macaddress WHERE MAC_ADDRESS='74-13-EA-0C-EB-71'server=localhost;port=3306;user=root;password=1;database=cnas;CharSet=utf8;Allow User Variables=True
记录时间:2025-02-12 08:34:55,510 线程ID:[1]- 错误描述:类名:MySQLHelper 方法名:ExecuteDataSet 信息:===-3223-===select * FROM macaddress WHERE MAC_ADDRESS='74-13-EA-0C-EB-71'System.Data.DataSet
记录时间:2025-02-12 08:34:55,540 线程ID:[1]- 错误描述:类名:MySQLHelper 方法名:ExecuteDataSet 信息:===-3333-===select * FROM macaddress WHERE MAC_ADDRESS='74-13-EA-0C-EB-71'System.Data.DataSet
记录时间:2025-02-12 08:34:55,540 线程ID:[1]- 错误描述:类名:MySQLHelper 方法名:ExecuteDataSet 信息:===-3443-===select * FROM macaddress WHERE MAC_ADDRESS='74-13-EA-0C-EB-71'System.Data.DataSet
记录时间:2025-02-12 08:41:01,437 线程ID:[1]- 错误描述:类名:MySQLHelper 方法名:ExecuteDataSet 信息:===-3113-===select * FROM macaddress WHERE MAC_ADDRESS='74-13-EA-0C-EB-71'server=localhost;port=3306;user=root;password=1;database=cnas;CharSet=utf8;Allow User Variables=True
记录时间:2025-02-12 08:41:01,442 线程ID:[1]- 错误描述:类名:MySQLHelper 方法名:ExecuteDataSet 信息:===-3223-===select * FROM macaddress WHERE MAC_ADDRESS='74-13-EA-0C-EB-71'server=localhost;port=3306;user=root;password=1;database=cnas;CharSet=utf8;Allow User Variables=True
记录时间:2025-02-12 08:41:01,444 线程ID:[1]- 错误描述:类名:MySQLHelper 方法名:ExecuteDataSet 信息:===-3223-===select * FROM macaddress WHERE MAC_ADDRESS='74-13-EA-0C-EB-71'System.Data.DataSet
记录时间:2025-02-12 08:41:01,482 线程ID:[1]- 错误描述:类名:MySQLHelper 方法名:ExecuteDataSet 信息:===-3333-===select * FROM macaddress WHERE MAC_ADDRESS='74-13-EA-0C-EB-71'System.Data.DataSet
记录时间:2025-02-12 08:41:01,483 线程ID:[1]- 错误描述:类名:MySQLHelper 方法名:ExecuteDataSet 信息:===-3443-===select * FROM macaddress WHERE MAC_ADDRESS='74-13-EA-0C-EB-71'System.Data.DataSet
记录时间:2025-02-12 08:41:10,942 线程ID:[1]- 错误描述:类名:AccessInstrumentData 方法名:.ctor 信息:未能找到路径“C:\Users\Li\Desktop\calorimeter.mdb”的一部分。
记录时间:2025-02-12 11:09:03,674 线程ID:[1]- 错误描述:类名:AccessInstrumentData 方法名:.ctor 信息:未能找到路径“C:\Users\Li\Desktop\calorimeter.mdb”的一部分。

+ 2471
- 4852
dll/ErrorLog/20250213.txt
Разлика између датотеке није приказан због своје велике величине
Прегледај датотеку


+ 33
- 0
dll/ErrorLog/20250213.txt20250213.txt Прегледај датотеку

@@ -0,0 +1,33 @@
记录时间:2025-02-13 10:00:47,358 线程ID:[1]- 错误描述:类名:MySQLHelper 方法名:ExecuteDataSet 信息:===-3113-===SELECT table_name as TABNAME FROM information_schema.TABLES WHERE table_schema='test'server=localhost;port=3306;user=root;password=1;database=test;CharSet=utf8;Allow User Variables=True
记录时间:2025-02-13 10:00:47,364 线程ID:[1]- 错误描述:类名:MySQLHelper 方法名:ExecuteDataSet 信息:===-3223-===SELECT table_name as TABNAME FROM information_schema.TABLES WHERE table_schema='test'server=localhost;port=3306;user=root;password=1;database=test;CharSet=utf8;Allow User Variables=True
记录时间:2025-02-13 10:00:47,365 线程ID:[1]- 错误描述:类名:MySQLHelper 方法名:ExecuteDataSet 信息:===-3223-===SELECT table_name as TABNAME FROM information_schema.TABLES WHERE table_schema='test'System.Data.DataSet
记录时间:2025-02-13 10:00:47,394 线程ID:[1]- 错误描述:类名:MySQLHelper 方法名:ExecuteDataSet 信息:===-3333-===SELECT table_name as TABNAME FROM information_schema.TABLES WHERE table_schema='test'System.Data.DataSet
记录时间:2025-02-13 10:00:47,395 线程ID:[1]- 错误描述:类名:MySQLHelper 方法名:ExecuteDataSet 信息:===-3443-===SELECT table_name as TABNAME FROM information_schema.TABLES WHERE table_schema='test'System.Data.DataSet
记录时间:2025-02-13 10:00:47,395 线程ID:[1]- 错误描述:类名:MySQLDAL 方法名:GetAllTableNameAndStructure 信息:===---===stuGetTableStruct(strTableName, )
记录时间:2025-02-13 10:00:47,395 线程ID:[1]- 错误描述:类名:MySQLDAL 方法名:GetTableStruct 信息:===-222-===stuSELECT * FROM stu Where 0=1
记录时间:2025-02-13 10:00:47,396 线程ID:[1]- 错误描述:类名:MySQLHelper 方法名:ExecuteDataSet 信息:===-3113-===SELECT * FROM stu Where 0=1server=localhost;port=3306;user=root;password=1;database=test;CharSet=utf8;Allow User Variables=True
记录时间:2025-02-13 10:00:47,396 线程ID:[1]- 错误描述:类名:MySQLHelper 方法名:ExecuteDataSet 信息:===-3223-===SELECT * FROM stu Where 0=1server=localhost;port=3306;user=root;password=1;database=test;CharSet=utf8;Allow User Variables=True
记录时间:2025-02-13 10:00:47,396 线程ID:[1]- 错误描述:类名:MySQLHelper 方法名:ExecuteDataSet 信息:===-3223-===SELECT * FROM stu Where 0=1System.Data.DataSet
记录时间:2025-02-13 10:00:47,398 线程ID:[1]- 错误描述:类名:MySQLHelper 方法名:ExecuteDataSet 信息:===-3333-===SELECT * FROM stu Where 0=1System.Data.DataSet
记录时间:2025-02-13 10:00:47,399 线程ID:[1]- 错误描述:类名:MySQLHelper 方法名:ExecuteDataSet 信息:===-3443-===SELECT * FROM stu Where 0=1System.Data.DataSet
记录时间:2025-02-13 10:00:47,399 线程ID:[1]- 错误描述:类名:MySQLDAL 方法名:GetTableStruct 信息:===-333-===stuMySQLHelper.ExecuteDataSet(strSql)Table
记录时间:2025-02-13 10:00:50,656 线程ID:[1]- 错误描述:类名:MySQLHelper 方法名:ExecuteDataSet 信息:Access denied for user ''@'localhost' (using password: NO)
记录时间:2025-02-13 10:00:50,661 线程ID:[1]- 错误描述:类名:MySQLDAL 方法名:GetTableNames 信息:Access denied for user ''@'localhost' (using password: NO)
记录时间:2025-02-13 10:01:12,615 线程ID:[1]- 错误描述:类名:MySQLHelper 方法名:ExecuteDataSet 信息:===-3113-===SELECT table_name as TABNAME FROM information_schema.TABLES WHERE table_schema='test'server=localhost;port=3306;user=root;password=1;database=test;CharSet=utf8;Allow User Variables=True
记录时间:2025-02-13 10:01:12,615 线程ID:[1]- 错误描述:类名:MySQLHelper 方法名:ExecuteDataSet 信息:===-3223-===SELECT table_name as TABNAME FROM information_schema.TABLES WHERE table_schema='test'server=localhost;port=3306;user=root;password=1;database=test;CharSet=utf8;Allow User Variables=True
记录时间:2025-02-13 10:01:12,615 线程ID:[1]- 错误描述:类名:MySQLHelper 方法名:ExecuteDataSet 信息:===-3223-===SELECT table_name as TABNAME FROM information_schema.TABLES WHERE table_schema='test'System.Data.DataSet
记录时间:2025-02-13 10:01:12,616 线程ID:[1]- 错误描述:类名:MySQLHelper 方法名:ExecuteDataSet 信息:===-3333-===SELECT table_name as TABNAME FROM information_schema.TABLES WHERE table_schema='test'System.Data.DataSet
记录时间:2025-02-13 10:01:12,617 线程ID:[1]- 错误描述:类名:MySQLHelper 方法名:ExecuteDataSet 信息:===-3443-===SELECT table_name as TABNAME FROM information_schema.TABLES WHERE table_schema='test'System.Data.DataSet
记录时间:2025-02-13 10:01:12,617 线程ID:[1]- 错误描述:类名:MySQLDAL 方法名:GetAllTableNameAndStructure 信息:===---===stuGetTableStruct(strTableName, )
记录时间:2025-02-13 10:01:12,617 线程ID:[1]- 错误描述:类名:MySQLDAL 方法名:GetTableStruct 信息:===-222-===stuSELECT * FROM stu Where 0=1
记录时间:2025-02-13 10:01:12,618 线程ID:[1]- 错误描述:类名:MySQLHelper 方法名:ExecuteDataSet 信息:===-3113-===SELECT * FROM stu Where 0=1server=localhost;port=3306;user=root;password=1;database=test;CharSet=utf8;Allow User Variables=True
记录时间:2025-02-13 10:01:12,618 线程ID:[1]- 错误描述:类名:MySQLHelper 方法名:ExecuteDataSet 信息:===-3223-===SELECT * FROM stu Where 0=1server=localhost;port=3306;user=root;password=1;database=test;CharSet=utf8;Allow User Variables=True
记录时间:2025-02-13 10:01:12,618 线程ID:[1]- 错误描述:类名:MySQLHelper 方法名:ExecuteDataSet 信息:===-3223-===SELECT * FROM stu Where 0=1System.Data.DataSet
记录时间:2025-02-13 10:01:12,619 线程ID:[1]- 错误描述:类名:MySQLHelper 方法名:ExecuteDataSet 信息:===-3333-===SELECT * FROM stu Where 0=1System.Data.DataSet
记录时间:2025-02-13 10:01:12,619 线程ID:[1]- 错误描述:类名:MySQLHelper 方法名:ExecuteDataSet 信息:===-3443-===SELECT * FROM stu Where 0=1System.Data.DataSet
记录时间:2025-02-13 10:01:12,619 线程ID:[1]- 错误描述:类名:MySQLDAL 方法名:GetTableStruct 信息:===-333-===stuMySQLHelper.ExecuteDataSet(strSql)Table
记录时间:2025-02-13 10:01:15,908 线程ID:[1]- 错误描述:类名:MySQLHelper 方法名:ExecuteDataSet 信息:===-3113-===SELECT table_name as TABNAME FROM information_schema.TABLES WHERE table_schema='cnas'server=localhost;port=3306;user=root;password=1;database=cnas;CharSet=utf8;Allow User Variables=True
记录时间:2025-02-13 10:01:15,908 线程ID:[1]- 错误描述:类名:MySQLHelper 方法名:ExecuteDataSet 信息:===-3223-===SELECT table_name as TABNAME FROM information_schema.TABLES WHERE table_schema='cnas'server=localhost;port=3306;user=root;password=1;database=cnas;CharSet=utf8;Allow User Variables=True
记录时间:2025-02-13 10:01:15,908 线程ID:[1]- 错误描述:类名:MySQLHelper 方法名:ExecuteDataSet 信息:===-3223-===SELECT table_name as TABNAME FROM information_schema.TABLES WHERE table_schema='cnas'System.Data.DataSet
记录时间:2025-02-13 10:01:15,911 线程ID:[1]- 错误描述:类名:MySQLHelper 方法名:ExecuteDataSet 信息:===-3333-===SELECT table_name as TABNAME FROM information_schema.TABLES WHERE table_schema='cnas'System.Data.DataSet
记录时间:2025-02-13 10:01:15,911 线程ID:[1]- 错误描述:类名:MySQLHelper 方法名:ExecuteDataSet 信息:===-3443-===SELECT table_name as TABNAME FROM information_schema.TABLES WHERE table_schema='cnas'System.Data.DataSet

BIN
dll/Newtonsoft.Json.dll Прегледај датотеку


+ 14
- 0
dll/ServiceLog/20250213.txt Прегледај датотеку

@@ -0,0 +1,14 @@
记录时间:2025-02-13 09:50:13,804 线程ID:[1]- 信息描述:类名:SyncServiceOperation 方法名:Start 信息:SyncSerivce:服务启动
记录时间:2025-02-13 10:02:14,564 线程ID:[9]- 信息描述:类名:SyncServiceOperation 方法名:timerSync_Elapsed 信息:定时器启动
记录时间:2025-02-13 10:02:14,565 线程ID:[9]- 信息描述:类名:SyncServiceOperation 方法名:timerSync_Elapsed 信息:清理过期日志
记录时间:2025-02-13 10:02:14,600 线程ID:[9]- 信息描述:类名:SyncServiceOperation 方法名:ReadSyncInstruments 信息:读取到本地配置信息行数1
记录时间:2025-02-13 10:02:14,609 线程ID:[9]- 信息描述:类名:SyncServiceOperation 方法名:RunSyncByInstrument 信息:准备根据日期字段查询筛选
记录时间:2025-02-13 10:02:14,765 线程ID:[9]- 信息描述:类名:SyncServiceOperation 方法名:RunSyncByInstrument 信息:读取上次最晚执行时间失败,请检查原因。
记录时间:2025-02-13 10:20:50,476 线程ID:[8]- 信息描述:类名:SyncServiceOperation 方法名:timerSync_Elapsed 信息:定时器启动
记录时间:2025-02-13 10:20:50,479 线程ID:[8]- 信息描述:类名:SyncServiceOperation 方法名:ReadSyncInstruments 信息:读取到本地配置信息行数1
记录时间:2025-02-13 10:20:50,481 线程ID:[8]- 信息描述:类名:SyncServiceOperation 方法名:RunSyncByInstrument 信息:准备根据日期字段查询筛选
记录时间:2025-02-13 10:20:51,854 线程ID:[8]- 信息描述:类名:SyncServiceOperation 方法名:RunSyncByInstrument 信息:读取上次最晚执行时间失败,请检查原因。
记录时间:2025-02-13 10:23:30,585 线程ID:[7]- 信息描述:类名:SyncServiceOperation 方法名:timerSync_Elapsed 信息:定时器启动
记录时间:2025-02-13 10:23:30,586 线程ID:[7]- 信息描述:类名:SyncServiceOperation 方法名:ReadSyncInstruments 信息:读取到本地配置信息行数1
记录时间:2025-02-13 10:23:30,586 线程ID:[7]- 信息描述:类名:SyncServiceOperation 方法名:RunSyncByInstrument 信息:准备根据日期字段查询筛选
记录时间:2025-02-13 10:23:34,404 线程ID:[7]- 信息描述:类名:SyncServiceOperation 方法名:RunSyncByInstrument 信息:读取上次最晚执行时间失败,请检查原因。

BIN
dll/SyncLocalDAL.dll Прегледај датотеку


BIN
dll/WF-ChangeGUID.exe Прегледај датотеку


+ 4
- 4
dll/WF-ChangeGUID.exe.config Прегледај датотеку

@@ -1,7 +1,7 @@
<?xml version="1.0" encoding="utf-8" ?>
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<appSettings>
<add key="TargetDBType" value="MYSQL" />
<add key="InitalOperationPwd" value="123456" />
<add key="TargetDBType" value="MYSQL"/>
<add key="InitalOperationPwd" value="123456"/>
</appSettings>
</configuration>
<startup><supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.8"/></startup></configuration>

+ 1
- 0
dll/activation.config Прегледај датотеку

@@ -0,0 +1 @@
BFEBFBFF000B06A2_7413EA0CEB72_7613EA0CEB71_7413EA0CEB71_7413EA0CEB75


Loading…
Откажи
Сачувај