### 2022-11-30更新
------ #### VSoft V1.0.2211.3001 - *.[改进]翻译多线程进行,并解决不能多行翻译的BUG。
This commit is contained in:
parent
28d84616e8
commit
4afd0f7c6f
Binary file not shown.
Binary file not shown.
|
|
@ -1,8 +1,8 @@
|
|||
[VSoft]
|
||||
hwnd=134844
|
||||
hwnd=132806
|
||||
width=745
|
||||
height=543
|
||||
[VSoft_Test]
|
||||
hwnd=1911702
|
||||
hwnd=657946
|
||||
width=733
|
||||
height=570
|
||||
|
|
|
|||
Binary file not shown.
Binary file not shown.
|
|
@ -1,4 +1,9 @@
|
|||
### 2022-04-16更新
|
||||
### 2022-11-30更新
|
||||
------
|
||||
#### VSoft V1.0.2211.3001
|
||||
- *.[改进]翻译多线程进行,并解决不能多行翻译的BUG。
|
||||
|
||||
### 2022-04-16更新
|
||||
------
|
||||
#### VSoft V1.0.2204.1601
|
||||
- *.[改进]启动时加载图标缓存,增加切换分组的流畅度。
|
||||
|
|
|
|||
Binary file not shown.
Binary file not shown.
|
|
@ -19,7 +19,7 @@
|
|||
<DebugType>full</DebugType>
|
||||
<Optimize>false</Optimize>
|
||||
<OutputPath>..\..\Bin\Debug\VSoft\</OutputPath>
|
||||
<DefineConstants>DEBUG;TRACE;DY</DefineConstants>
|
||||
<DefineConstants>DEBUG;TRACE;DY;TEST</DefineConstants>
|
||||
<ErrorReport>prompt</ErrorReport>
|
||||
<WarningLevel>4</WarningLevel>
|
||||
<Prefer32Bit>false</Prefer32Bit>
|
||||
|
|
|
|||
|
|
@ -32,5 +32,5 @@ using System.Runtime.InteropServices;
|
|||
//可以指定所有这些值,也可以使用“生成号”和“修订号”的默认值
|
||||
//通过使用 "*",如下所示:
|
||||
// [assembly: AssemblyVersion("1.0.*")]
|
||||
[assembly: AssemblyVersion("1.0.2112.1401")]
|
||||
[assembly: AssemblyFileVersion("1.0.2112.1401")]
|
||||
[assembly: AssemblyVersion("1.0.2205.2701")]
|
||||
[assembly: AssemblyFileVersion("1.0.2205.2701")]
|
||||
|
|
@ -18,7 +18,7 @@
|
|||
<DebugType>full</DebugType>
|
||||
<Optimize>false</Optimize>
|
||||
<OutputPath>..\..\Bin\Debug\VSoft\</OutputPath>
|
||||
<DefineConstants>TRACE;DEBUG;DY</DefineConstants>
|
||||
<DefineConstants>TRACE;DEBUG;DY;TEST</DefineConstants>
|
||||
<ErrorReport>prompt</ErrorReport>
|
||||
<WarningLevel>4</WarningLevel>
|
||||
</PropertyGroup>
|
||||
|
|
|
|||
|
|
@ -3,6 +3,7 @@ using System;
|
|||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Windows.Forms;
|
||||
|
||||
namespace VSoft.Config
|
||||
{
|
||||
|
|
@ -39,6 +40,7 @@ namespace VSoft.Config
|
|||
/// 启动软件后隐藏自身
|
||||
/// </summary>
|
||||
public static bool HideAfterRun = true;
|
||||
public static Form MainForm { get; set; }
|
||||
/// <summary>
|
||||
/// 当前软件加载的热键列表
|
||||
/// </summary>
|
||||
|
|
|
|||
|
|
@ -1,83 +1,83 @@
|
|||
using ryCommon;
|
||||
using ryCommonDb;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.ComponentModel;
|
||||
using System.Data;
|
||||
using System.Drawing;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Windows.Forms;
|
||||
using VSoft.Prams;
|
||||
|
||||
namespace VSoft
|
||||
{
|
||||
public partial class FrmAddType : Skins.SKinForm
|
||||
{
|
||||
public string SQLConnStr { get; set; } = Itrycn_Db.SQLConnStr;
|
||||
public FrmAddType()
|
||||
{
|
||||
InitializeComponent();
|
||||
}
|
||||
public string tableName = "Columns";
|
||||
public int IsAdd { get; set; } = 1;
|
||||
public int SelectId { get; set; } = -1;
|
||||
public int ParentId { get; set; } = -1;
|
||||
using ryCommonDb;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.ComponentModel;
|
||||
using System.Data;
|
||||
using System.Drawing;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Windows.Forms;
|
||||
using VSoft.Prams;
|
||||
|
||||
namespace VSoft
|
||||
{
|
||||
public partial class FrmAddType : Skins.SKinForm
|
||||
{
|
||||
public string SQLConnStr { get; set; } = Itrycn_Db.SQLConnStr;
|
||||
public FrmAddType()
|
||||
{
|
||||
InitializeComponent();
|
||||
}
|
||||
public string tableName = "Columns";
|
||||
public int IsAdd { get; set; } = 1;
|
||||
public int SelectId { get; set; } = -1;
|
||||
public int ParentId { get; set; } = -1;
|
||||
/// <summary>
|
||||
/// 当前操作的id
|
||||
/// </summary>
|
||||
public int Op_Id { get; set; } = -1;
|
||||
public void GetInfo(int id)
|
||||
{
|
||||
SelectId = id;
|
||||
Text = "修改分类";
|
||||
DataProvider mydb = new DataProvider();
|
||||
IDbInterface db = Itrycn_Db.CreateDataProvider(Itrycn_Db.dataType);
|
||||
if (db.ConnDb(SQLConnStr) == 1)
|
||||
{
|
||||
DataSet ds = db.ReadData(tableName, id.ToString());
|
||||
if (mydb.HaveData(ds))
|
||||
{
|
||||
DataRow reader = ds.Tables[0].Rows[0];
|
||||
#region 读取信息
|
||||
TxtName.Text = reader["Name"].ToString();
|
||||
/// </summary>
|
||||
public int Op_Id { get; set; } = -1;
|
||||
public void GetInfo(int id)
|
||||
{
|
||||
SelectId = id;
|
||||
Text = "修改分类";
|
||||
DataProvider mydb = new DataProvider();
|
||||
IDbInterface db = Itrycn_Db.CreateDataProvider(Itrycn_Db.dataType);
|
||||
if (db.ConnDb(SQLConnStr) == 1)
|
||||
{
|
||||
DataSet ds = db.ReadData(tableName, id.ToString());
|
||||
if (mydb.HaveData(ds))
|
||||
{
|
||||
DataRow reader = ds.Tables[0].Rows[0];
|
||||
#region 读取信息
|
||||
TxtName.Text = reader["Name"].ToString();
|
||||
TxtDes.Text = reader["Des"].ToString();
|
||||
hotkeyTextBox1.HotKey = reader["Hotkey"].ToString();
|
||||
#endregion
|
||||
}
|
||||
ds.Dispose();
|
||||
}
|
||||
db.Free();
|
||||
}
|
||||
private void BtnCancel_Click(object sender, EventArgs e)
|
||||
{
|
||||
DialogResult = DialogResult.Cancel;
|
||||
}
|
||||
|
||||
private void BtnOK_Click(object sender, EventArgs e)
|
||||
{
|
||||
if (TxtName.Text.Length == 0)
|
||||
{
|
||||
Msg.ShowMsg("名称不能为空。", "提示", MessageBoxButtons.OK, MessageBoxIcon.Information);
|
||||
return;
|
||||
}
|
||||
RyQuickSQL mySQL = new RyQuickSQL(tableName);
|
||||
mySQL.AddField("Name", TxtName.Text);
|
||||
hotkeyTextBox1.HotKey = reader["Hotkey"].ToString();
|
||||
#endregion
|
||||
}
|
||||
ds.Dispose();
|
||||
}
|
||||
db.Free();
|
||||
}
|
||||
private void BtnCancel_Click(object sender, EventArgs e)
|
||||
{
|
||||
DialogResult = DialogResult.Cancel;
|
||||
}
|
||||
|
||||
private void BtnOK_Click(object sender, EventArgs e)
|
||||
{
|
||||
if (TxtName.Text.Length == 0)
|
||||
{
|
||||
Msg.ShowMsg("名称不能为空。", "提示", MessageBoxButtons.OK, MessageBoxIcon.Information);
|
||||
return;
|
||||
}
|
||||
RyQuickSQL mySQL = new RyQuickSQL(tableName);
|
||||
mySQL.AddField("Name", TxtName.Text);
|
||||
mySQL.AddField("Des", TxtDes.Text);
|
||||
mySQL.AddField("Hotkey", hotkeyTextBox1.HaveHotKey ? hotkeyTextBox1.HotKey : "");//快捷键
|
||||
mySQL.AddField("editTime", DateTime.Now);
|
||||
IDbInterface db = Itrycn_Db.CreateDataProvider(Itrycn_Db.dataType);
|
||||
if (db.ConnDb(SQLConnStr) == 1)
|
||||
{
|
||||
if (hotkeyTextBox1.HaveHotKey)
|
||||
{
|
||||
var ds_type = db.ReadData("select * from " + tableName + " where Hotkey='" + hotkeyTextBox1.HotKey + "' and id<>" + SelectId + " limit 1");
|
||||
var ds_soft = db.ReadData("select * from Softs where Hotkey='" + hotkeyTextBox1.HotKey + "' limit 1");
|
||||
if (ds_soft.HaveData() || ds_type.HaveData())
|
||||
{
|
||||
Msg.ShowMsg("当前热键已经存在,请更换热键。", "提示", MessageBoxButtons.OK, MessageBoxIcon.Information);
|
||||
ds_soft.Dispose(); ds_type.Dispose(); return;
|
||||
}
|
||||
mySQL.AddField("Hotkey", hotkeyTextBox1.HaveHotKey ? hotkeyTextBox1.HotKey : "");//快捷键
|
||||
mySQL.AddField("editTime", DateTime.Now);
|
||||
IDbInterface db = Itrycn_Db.CreateDataProvider(Itrycn_Db.dataType);
|
||||
if (db.ConnDb(SQLConnStr) == 1)
|
||||
{
|
||||
if (hotkeyTextBox1.HaveHotKey)
|
||||
{
|
||||
var ds_type = db.ReadData("select * from " + tableName + " where Hotkey='" + hotkeyTextBox1.HotKey + "' and id<>" + SelectId + " limit 1");
|
||||
var ds_soft = db.ReadData("select * from Softs where Hotkey='" + hotkeyTextBox1.HotKey + "' limit 1");
|
||||
if (ds_soft.HaveData() || ds_type.HaveData())
|
||||
{
|
||||
Msg.ShowMsg("当前热键已经存在,请更换热键。", "提示", MessageBoxButtons.OK, MessageBoxIcon.Information);
|
||||
ds_soft.Dispose(); ds_type.Dispose(); return;
|
||||
}
|
||||
else
|
||||
{
|
||||
if (Config.Soft_Config.IsHotKeyExistInList(hotkeyTextBox1.HotKey) >= 0)
|
||||
|
|
@ -85,30 +85,30 @@ namespace VSoft
|
|||
Msg.ShowMsg("当前热键已经存在,请更换热键。", "提示", MessageBoxButtons.OK, MessageBoxIcon.Information);
|
||||
ds_soft.Dispose(); ds_type.Dispose(); return;
|
||||
}
|
||||
}
|
||||
ds_soft.Dispose();
|
||||
ds_type.Dispose();
|
||||
}
|
||||
if (IsAdd >= 1)
|
||||
{
|
||||
mySQL.AddField("sortindex", Itrycn_Db.GetColumnCount(db, ParentId) + 1);
|
||||
mySQL.AddField("parentId", ParentId);
|
||||
}
|
||||
ds_soft.Dispose();
|
||||
ds_type.Dispose();
|
||||
}
|
||||
if (IsAdd >= 1)
|
||||
{
|
||||
mySQL.AddField("sortindex", Itrycn_Db.GetColumnCount(db, ParentId) + 1);
|
||||
mySQL.AddField("parentId", ParentId);
|
||||
mySQL.AddField("addTime", DateTime.Now);
|
||||
var ds = db.ReadData(mySQL.GetInsertSQL() + ";select last_insert_rowid();", mySQL);
|
||||
if (ds.HaveData())
|
||||
{
|
||||
var ds = db.ReadData(mySQL.GetInsertSQL() + ";select last_insert_rowid();", mySQL);
|
||||
if (ds.HaveData())
|
||||
{
|
||||
Op_Id = ds.GetFirstRowCellValue();
|
||||
}
|
||||
ds.Dispose();
|
||||
}
|
||||
else
|
||||
{
|
||||
db.ExecuteNonQuery(mySQL.GetUpdateSQL() + " where id=" + SelectId, mySQL);
|
||||
Op_Id = SelectId;
|
||||
}
|
||||
}
|
||||
db.Free();
|
||||
DialogResult = DialogResult.OK;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
ds.Dispose();
|
||||
}
|
||||
else
|
||||
{
|
||||
db.ExecuteNonQuery(mySQL.GetUpdateSQL() + " where id=" + SelectId, mySQL);
|
||||
Op_Id = SelectId;
|
||||
}
|
||||
}
|
||||
db.Free();
|
||||
DialogResult = DialogResult.OK;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -10,6 +10,7 @@ using System.Diagnostics;
|
|||
using System.Drawing;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading;
|
||||
using System.Windows.Forms;
|
||||
using VSoft.Config;
|
||||
using VSoft.Prams;
|
||||
|
|
@ -291,6 +292,7 @@ namespace VSoft
|
|||
SysFuns.WinHotReg hotkey;
|
||||
private void FrmVSoft_Load(object sender, EventArgs e)
|
||||
{
|
||||
Config.Soft_Config.MainForm = this;
|
||||
MinimumSize = new Size(400, 200);
|
||||
LblEmpty.Left =((panelEx1.Width - LblEmpty.Width) / 2);
|
||||
Config.Soft_Info.UserDataFolder = ryCommon.RyFiles.GetRealPath(Config.Soft_Info.UserDataFolder);
|
||||
|
|
@ -995,8 +997,18 @@ namespace VSoft
|
|||
{
|
||||
if (IconViewEx1.SelectedItems.Count == 0) { return; }
|
||||
var info = (SoftInfo)IconViewEx1.SelectedItems[0].Tag;
|
||||
var result= VSoft.Prams.Run.Open(info, RunasAdmin);
|
||||
if (result>36 && VSoft.Config.Soft_Config.HideAfterRun) { this.Hide(); }
|
||||
Thread th = new Thread(Start);
|
||||
th.Start();
|
||||
void Start()
|
||||
{
|
||||
var result = VSoft.Prams.Run.Open(info, RunasAdmin);
|
||||
if (result > 36 && VSoft.Config.Soft_Config.HideAfterRun) {
|
||||
this.Invoke(new Action(() =>
|
||||
{
|
||||
this.Hide();
|
||||
}));
|
||||
}
|
||||
}
|
||||
}
|
||||
private void IconViewEx1_KeyDown(object sender, KeyEventArgs e)
|
||||
{
|
||||
|
|
|
|||
|
|
@ -1,254 +1,254 @@
|
|||
using ryCommon;
|
||||
using ryCommonDb;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Data;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using ryCommon;
|
||||
using ryCommonDb;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Data;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using VSoft.Config;
|
||||
using static ryCommonDb.DataProvider;
|
||||
|
||||
namespace VSoft.Prams
|
||||
{
|
||||
public class Itrycn_Db
|
||||
{
|
||||
public static string SQLConnStr_SysDb = "<app>\\SysDb\\SysConfig.dat";
|
||||
public static string SQLConnStr = Soft_Info.UserDataFolder+ "\\Softs.dat|";
|
||||
public static string SQLConnStr_Logs = Soft_Info.UserDataFolder + "\\logs.dat|";
|
||||
public static DataProvider.DataProviderType dataType = DataProvider.DataProviderType.SQLiteDataProvider;
|
||||
public static IDbInterface CreateDataProvider(DataProviderType dataProviderType)
|
||||
{
|
||||
switch (dataProviderType)
|
||||
{
|
||||
//case DataProviderType.OdbcDataProvider:
|
||||
// return new OdbcDataProvider();
|
||||
//case DataProviderType.OleDbDataProvider:
|
||||
// return new OleDbDataProvider();
|
||||
//case DataProviderType.OracleDataProvider:
|
||||
// return new OracleDataProvider();
|
||||
case DataProviderType.SQLiteDataProvider:
|
||||
return new SQLiteDataProvider();
|
||||
default:
|
||||
return null;
|
||||
}
|
||||
}
|
||||
/// <summary>
|
||||
/// 写入设置
|
||||
/// </summary>
|
||||
/// <param name="name"></param>
|
||||
/// <param name="value"></param>
|
||||
public static int SetSetting(string _SQLConnStr, string name, string value)
|
||||
{
|
||||
IDbInterface db = CreateDataProvider(dataType);
|
||||
if (db.ConnDb(_SQLConnStr) == 1)
|
||||
{
|
||||
RyQuickSQL mySQL = new RyQuickSQL("Setting");
|
||||
mySQL.AddField("sName", name);
|
||||
mySQL.AddField("sValue", value);
|
||||
var result = db.ExecuteNonQuery(mySQL.GetUpdateSQL() + " where sName=@sName", mySQL);
|
||||
if (result == 0)
|
||||
{
|
||||
result = db.ExecuteNonQuery(mySQL.GetInsertSQL(), mySQL);
|
||||
}
|
||||
return result;
|
||||
}
|
||||
db.Free();
|
||||
return -1000;
|
||||
}
|
||||
/// <summary>
|
||||
/// 写入设置
|
||||
/// </summary>
|
||||
/// <param name="name"></param>
|
||||
/// <param name="value"></param>
|
||||
public static int SetSetting(string name, string value)
|
||||
{
|
||||
return SetSetting(SQLConnStr, name, value);
|
||||
}
|
||||
/// <summary>
|
||||
/// 读取设置
|
||||
/// </summary>
|
||||
/// <param name="name"></param>
|
||||
/// <param name="def_value"></param>
|
||||
/// <returns></returns>
|
||||
public static string GetSetting(string _SQLConnStr, string name, string def_value)
|
||||
{
|
||||
DataProvider mydb = new DataProvider();
|
||||
IDbInterface db = CreateDataProvider(dataType);
|
||||
string _value = def_value;
|
||||
if (db.ConnDb(_SQLConnStr) == 1)
|
||||
{
|
||||
RyQuickSQL mySQL = new RyQuickSQL("Setting");
|
||||
mySQL.AddField("sName", name);
|
||||
DataSet ds = db.ReadData("select * from Setting where sName=@sName", mySQL);
|
||||
if (mydb.HaveData(ds))
|
||||
{
|
||||
DataRow reader = ds.Tables[0].Rows[0];
|
||||
_value = reader["sValue"].ToString();
|
||||
}
|
||||
}
|
||||
db.Free();
|
||||
return _value;
|
||||
}
|
||||
/// <summary>
|
||||
/// 读取设置
|
||||
/// </summary>
|
||||
/// <param name="name"></param>
|
||||
/// <param name="def_value"></param>
|
||||
/// <returns></returns>
|
||||
public static string GetSetting(string name, string def_value)
|
||||
{
|
||||
return GetSetting(SQLConnStr, name, def_value);
|
||||
}
|
||||
public static int GetColumnCount(IDbInterface db, int ColumnId)
|
||||
{
|
||||
var ds = db.ReadData("select count(*) from Columns where parentId=" + ColumnId);
|
||||
var icount = ds.Tables[0].Rows[0][0].ToInt();
|
||||
ds.Dispose();
|
||||
return icount;
|
||||
}
|
||||
public static int GetSoftCount(IDbInterface db, int ColumnId)
|
||||
{
|
||||
var ds = db.ReadData("select count(*) from Softs where ColumnId=" + ColumnId);
|
||||
var icount = ds.Tables[0].Rows[0][0].ToInt();
|
||||
ds.Dispose();
|
||||
return icount;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 获取指定栏目的第一个分类id
|
||||
/// </summary>
|
||||
/// <param name="db"></param>
|
||||
/// <param name="ColumnId"></param>
|
||||
/// <returns></returns>
|
||||
public static int GetFirstColumnId(IDbInterface db, int ColumnId)
|
||||
{
|
||||
var ds = db.ReadData("select id from Columns where parentId=" + ColumnId+ " order by sortindex asc limit 1");
|
||||
if (ds.Tables[0].Rows.Count == 0)
|
||||
{ return -1; }
|
||||
else
|
||||
{
|
||||
var icount = ds.Tables[0].Rows[0][0].ToInt();
|
||||
ds.Dispose();
|
||||
return icount;
|
||||
}
|
||||
}
|
||||
/// <summary>
|
||||
/// 获取数据库版本
|
||||
/// </summary>
|
||||
/// <returns></returns>
|
||||
public static int GetDbVer()
|
||||
{
|
||||
return GetSetting("dbVer", "1").ToInt();
|
||||
}
|
||||
/// <summary>
|
||||
/// 设置数据库版本
|
||||
/// </summary>
|
||||
/// <returns></returns>
|
||||
public static int SetDbVer(int DbVer)
|
||||
{
|
||||
return SetSetting("dbVer", DbVer.ToString());
|
||||
}
|
||||
public static void CreateTable(DataProvider.DataProviderType dataType, string ConnStr)
|
||||
{
|
||||
IDbInterface db = CreateDataProvider(dataType);
|
||||
if (db.ConnDb(ConnStr) == 1)
|
||||
{
|
||||
#region 软件表
|
||||
RyQuickSQL mySQL = new RyQuickSQL("Softs");
|
||||
mySQL.AddField("Name", "");
|
||||
mySQL.AddField("CmdId", "");
|
||||
mySQL.AddField("SoftType", 0);//0表示运行文件,1表示执行快速命令,2表示执行脚本
|
||||
mySQL.AddField("Path", "");
|
||||
mySQL.AddField("RunPram", "");
|
||||
mySQL.AddField("StartPath", "");//起始路径
|
||||
mySQL.AddField("IconPath","");//图标路径
|
||||
mySQL.AddField("ClickCount",0);//点击量
|
||||
mySQL.AddField("SetJson", "");//设置
|
||||
mySQL.AddField("Des", "");//备注
|
||||
mySQL.AddField("Hotkey", "");//快捷键
|
||||
mySQL.AddField("PinYin", "");//拼音
|
||||
mySQL.AddField("ColumnId", 0);//栏目ID
|
||||
mySQL.AddField("sortindex", 0);
|
||||
mySQL.AddField("editTime", DateTime.Now);
|
||||
mySQL.AddField("addTime", DateTime.Now);
|
||||
db.CreateDb(mySQL);
|
||||
#endregion
|
||||
#region 栏目表
|
||||
mySQL.Clear();
|
||||
mySQL.TableName = "Columns";
|
||||
mySQL.AddField("Name", "");
|
||||
mySQL.AddField("sortindex", 0);
|
||||
mySQL.AddField("depth", 0);//深度,0表示栏目,1表示分类
|
||||
mySQL.AddField("parentId", 0);
|
||||
mySQL.AddField("Hotkey", "");//快捷键
|
||||
mySQL.AddField("Des", "");//备注
|
||||
mySQL.AddField("editTime", DateTime.Now);
|
||||
mySQL.AddField("addTime", DateTime.Now);
|
||||
db.CreateDb(mySQL);
|
||||
#endregion
|
||||
//
|
||||
#region 设置表
|
||||
mySQL.Clear();
|
||||
mySQL.TableName = "Setting";
|
||||
mySQL.AddField("sName", "");
|
||||
mySQL.AddField("sValue", "");
|
||||
db.CreateDb(mySQL);
|
||||
#endregion
|
||||
}
|
||||
db.Free();
|
||||
}
|
||||
public static void CreateSysTable(DataProvider.DataProviderType dataType, string ConnStr)
|
||||
{
|
||||
IDbInterface db = CreateDataProvider(dataType);
|
||||
if (db.ConnDb(ConnStr) == 1)
|
||||
{
|
||||
//
|
||||
#region 设置表
|
||||
RyQuickSQL mySQL = new RyQuickSQL("Setting");
|
||||
mySQL.AddField("sName", "");
|
||||
mySQL.AddField("sValue", "");
|
||||
db.CreateDb(mySQL);
|
||||
#endregion
|
||||
}
|
||||
db.Free();
|
||||
}
|
||||
public static void CreateTable_Logs(DataProvider.DataProviderType dataType)
|
||||
{
|
||||
DataProvider mydb = new DataProvider();
|
||||
IDbInterface db = CreateDataProvider(dataType);
|
||||
if (db.ConnDb(SQLConnStr_Logs) == 1)
|
||||
{
|
||||
#region 日志表
|
||||
RyQuickSQL mySQL = new RyQuickSQL("Logs");
|
||||
mySQL.AddField("LogId", "");
|
||||
mySQL.AddField("LogStr", "");
|
||||
mySQL.AddField("TaskId", 1);
|
||||
mySQL.AddField("TaskGUID", "");
|
||||
mySQL.AddField("LogResult", "");
|
||||
mySQL.AddField("CreateId", 1);
|
||||
mySQL.AddField("addTime", DateTime.Now);
|
||||
db.CreateDb(mySQL);
|
||||
#endregion
|
||||
//
|
||||
#region 设置表
|
||||
mySQL.Clear();
|
||||
mySQL.TableName = "Setting";
|
||||
mySQL.AddField("sName", "");
|
||||
mySQL.AddField("sValue", "");
|
||||
db.CreateDb(mySQL);
|
||||
#endregion
|
||||
}
|
||||
db.Free();
|
||||
}
|
||||
/// <summary>
|
||||
/// 创建数据库
|
||||
/// </summary>
|
||||
public static void CreateTable()
|
||||
{
|
||||
CreateTable(dataType, SQLConnStr_SysDb);
|
||||
CreateTable(dataType, SQLConnStr);
|
||||
CreateTable_Logs(dataType);
|
||||
//CreateSysTable(dataType, SQLConnStr_SysDb);
|
||||
}
|
||||
}
|
||||
}
|
||||
using static ryCommonDb.DataProvider;
|
||||
|
||||
namespace VSoft.Prams
|
||||
{
|
||||
public class Itrycn_Db
|
||||
{
|
||||
public static string SQLConnStr_SysDb = "<app>\\SysDb\\SysConfig.dat";
|
||||
public static string SQLConnStr = Soft_Info.UserDataFolder+ "\\Softs.dat|";
|
||||
public static string SQLConnStr_Logs = Soft_Info.UserDataFolder + "\\logs.dat|";
|
||||
public static DataProvider.DataProviderType dataType = DataProvider.DataProviderType.SQLiteDataProvider;
|
||||
public static IDbInterface CreateDataProvider(DataProviderType dataProviderType)
|
||||
{
|
||||
switch (dataProviderType)
|
||||
{
|
||||
//case DataProviderType.OdbcDataProvider:
|
||||
// return new OdbcDataProvider();
|
||||
//case DataProviderType.OleDbDataProvider:
|
||||
// return new OleDbDataProvider();
|
||||
//case DataProviderType.OracleDataProvider:
|
||||
// return new OracleDataProvider();
|
||||
case DataProviderType.SQLiteDataProvider:
|
||||
return new SQLiteDataProvider();
|
||||
default:
|
||||
return null;
|
||||
}
|
||||
}
|
||||
/// <summary>
|
||||
/// 写入设置
|
||||
/// </summary>
|
||||
/// <param name="name"></param>
|
||||
/// <param name="value"></param>
|
||||
public static int SetSetting(string _SQLConnStr, string name, string value)
|
||||
{
|
||||
IDbInterface db = CreateDataProvider(dataType);
|
||||
if (db.ConnDb(_SQLConnStr) == 1)
|
||||
{
|
||||
RyQuickSQL mySQL = new RyQuickSQL("Setting");
|
||||
mySQL.AddField("sName", name);
|
||||
mySQL.AddField("sValue", value);
|
||||
var result = db.ExecuteNonQuery(mySQL.GetUpdateSQL() + " where sName=@sName", mySQL);
|
||||
if (result == 0)
|
||||
{
|
||||
result = db.ExecuteNonQuery(mySQL.GetInsertSQL(), mySQL);
|
||||
}
|
||||
return result;
|
||||
}
|
||||
db.Free();
|
||||
return -1000;
|
||||
}
|
||||
/// <summary>
|
||||
/// 写入设置
|
||||
/// </summary>
|
||||
/// <param name="name"></param>
|
||||
/// <param name="value"></param>
|
||||
public static int SetSetting(string name, string value)
|
||||
{
|
||||
return SetSetting(SQLConnStr, name, value);
|
||||
}
|
||||
/// <summary>
|
||||
/// 读取设置
|
||||
/// </summary>
|
||||
/// <param name="name"></param>
|
||||
/// <param name="def_value"></param>
|
||||
/// <returns></returns>
|
||||
public static string GetSetting(string _SQLConnStr, string name, string def_value)
|
||||
{
|
||||
DataProvider mydb = new DataProvider();
|
||||
IDbInterface db = CreateDataProvider(dataType);
|
||||
string _value = def_value;
|
||||
if (db.ConnDb(_SQLConnStr) == 1)
|
||||
{
|
||||
RyQuickSQL mySQL = new RyQuickSQL("Setting");
|
||||
mySQL.AddField("sName", name);
|
||||
DataSet ds = db.ReadData("select * from Setting where sName=@sName", mySQL);
|
||||
if (mydb.HaveData(ds))
|
||||
{
|
||||
DataRow reader = ds.Tables[0].Rows[0];
|
||||
_value = reader["sValue"].ToString();
|
||||
}
|
||||
}
|
||||
db.Free();
|
||||
return _value;
|
||||
}
|
||||
/// <summary>
|
||||
/// 读取设置
|
||||
/// </summary>
|
||||
/// <param name="name"></param>
|
||||
/// <param name="def_value"></param>
|
||||
/// <returns></returns>
|
||||
public static string GetSetting(string name, string def_value)
|
||||
{
|
||||
return GetSetting(SQLConnStr, name, def_value);
|
||||
}
|
||||
public static int GetColumnCount(IDbInterface db, int ColumnId)
|
||||
{
|
||||
var ds = db.ReadData("select count(*) from Columns where parentId=" + ColumnId);
|
||||
var icount = ds.Tables[0].Rows[0][0].ToInt();
|
||||
ds.Dispose();
|
||||
return icount;
|
||||
}
|
||||
public static int GetSoftCount(IDbInterface db, int ColumnId)
|
||||
{
|
||||
var ds = db.ReadData("select count(*) from Softs where ColumnId=" + ColumnId);
|
||||
var icount = ds.Tables[0].Rows[0][0].ToInt();
|
||||
ds.Dispose();
|
||||
return icount;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 获取指定栏目的第一个分类id
|
||||
/// </summary>
|
||||
/// <param name="db"></param>
|
||||
/// <param name="ColumnId"></param>
|
||||
/// <returns></returns>
|
||||
public static int GetFirstColumnId(IDbInterface db, int ColumnId)
|
||||
{
|
||||
var ds = db.ReadData("select id from Columns where parentId=" + ColumnId+ " order by sortindex asc limit 1");
|
||||
if (ds.Tables[0].Rows.Count == 0)
|
||||
{ return -1; }
|
||||
else
|
||||
{
|
||||
var icount = ds.Tables[0].Rows[0][0].ToInt();
|
||||
ds.Dispose();
|
||||
return icount;
|
||||
}
|
||||
}
|
||||
/// <summary>
|
||||
/// 获取数据库版本
|
||||
/// </summary>
|
||||
/// <returns></returns>
|
||||
public static int GetDbVer()
|
||||
{
|
||||
return GetSetting("dbVer", "1").ToInt();
|
||||
}
|
||||
/// <summary>
|
||||
/// 设置数据库版本
|
||||
/// </summary>
|
||||
/// <returns></returns>
|
||||
public static int SetDbVer(int DbVer)
|
||||
{
|
||||
return SetSetting("dbVer", DbVer.ToString());
|
||||
}
|
||||
public static void CreateTable(DataProvider.DataProviderType dataType, string ConnStr)
|
||||
{
|
||||
IDbInterface db = CreateDataProvider(dataType);
|
||||
if (db.ConnDb(ConnStr) == 1)
|
||||
{
|
||||
#region 软件表
|
||||
RyQuickSQL mySQL = new RyQuickSQL("Softs");
|
||||
mySQL.AddField("Name", "");
|
||||
mySQL.AddField("CmdId", "");
|
||||
mySQL.AddField("SoftType", 0);//0表示运行文件,1表示执行快速命令,2表示执行脚本
|
||||
mySQL.AddField("Path", "");
|
||||
mySQL.AddField("RunPram", "");
|
||||
mySQL.AddField("StartPath", "");//起始路径
|
||||
mySQL.AddField("IconPath","");//图标路径
|
||||
mySQL.AddField("ClickCount",0);//点击量
|
||||
mySQL.AddField("SetJson", "");//设置
|
||||
mySQL.AddField("Des", "");//备注
|
||||
mySQL.AddField("Hotkey", "");//快捷键
|
||||
mySQL.AddField("PinYin", "");//拼音
|
||||
mySQL.AddField("ColumnId", 0);//栏目ID
|
||||
mySQL.AddField("sortindex", 0);
|
||||
mySQL.AddField("editTime", DateTime.Now);
|
||||
mySQL.AddField("addTime", DateTime.Now);
|
||||
db.CreateDb(mySQL);
|
||||
#endregion
|
||||
#region 栏目表
|
||||
mySQL.Clear();
|
||||
mySQL.TableName = "Columns";
|
||||
mySQL.AddField("Name", "");
|
||||
mySQL.AddField("sortindex", 0);
|
||||
mySQL.AddField("depth", 0);//深度,0表示栏目,1表示分类
|
||||
mySQL.AddField("parentId", 0);
|
||||
mySQL.AddField("Hotkey", "");//快捷键
|
||||
mySQL.AddField("Des", "");//备注
|
||||
mySQL.AddField("editTime", DateTime.Now);
|
||||
mySQL.AddField("addTime", DateTime.Now);
|
||||
db.CreateDb(mySQL);
|
||||
#endregion
|
||||
//
|
||||
#region 设置表
|
||||
mySQL.Clear();
|
||||
mySQL.TableName = "Setting";
|
||||
mySQL.AddField("sName", "");
|
||||
mySQL.AddField("sValue", "");
|
||||
db.CreateDb(mySQL);
|
||||
#endregion
|
||||
}
|
||||
db.Free();
|
||||
}
|
||||
public static void CreateSysTable(DataProvider.DataProviderType dataType, string ConnStr)
|
||||
{
|
||||
IDbInterface db = CreateDataProvider(dataType);
|
||||
if (db.ConnDb(ConnStr) == 1)
|
||||
{
|
||||
//
|
||||
#region 设置表
|
||||
RyQuickSQL mySQL = new RyQuickSQL("Setting");
|
||||
mySQL.AddField("sName", "");
|
||||
mySQL.AddField("sValue", "");
|
||||
db.CreateDb(mySQL);
|
||||
#endregion
|
||||
}
|
||||
db.Free();
|
||||
}
|
||||
public static void CreateTable_Logs(DataProvider.DataProviderType dataType)
|
||||
{
|
||||
DataProvider mydb = new DataProvider();
|
||||
IDbInterface db = CreateDataProvider(dataType);
|
||||
if (db.ConnDb(SQLConnStr_Logs) == 1)
|
||||
{
|
||||
#region 日志表
|
||||
RyQuickSQL mySQL = new RyQuickSQL("Logs");
|
||||
mySQL.AddField("LogId", "");
|
||||
mySQL.AddField("LogStr", "");
|
||||
mySQL.AddField("TaskId", 1);
|
||||
mySQL.AddField("TaskGUID", "");
|
||||
mySQL.AddField("LogResult", "");
|
||||
mySQL.AddField("CreateId", 1);
|
||||
mySQL.AddField("addTime", DateTime.Now);
|
||||
db.CreateDb(mySQL);
|
||||
#endregion
|
||||
//
|
||||
#region 设置表
|
||||
mySQL.Clear();
|
||||
mySQL.TableName = "Setting";
|
||||
mySQL.AddField("sName", "");
|
||||
mySQL.AddField("sValue", "");
|
||||
db.CreateDb(mySQL);
|
||||
#endregion
|
||||
}
|
||||
db.Free();
|
||||
}
|
||||
/// <summary>
|
||||
/// 创建数据库
|
||||
/// </summary>
|
||||
public static void CreateTable()
|
||||
{
|
||||
CreateTable(dataType, SQLConnStr_SysDb);
|
||||
CreateTable(dataType, SQLConnStr);
|
||||
CreateTable_Logs(dataType);
|
||||
//CreateSysTable(dataType, SQLConnStr_SysDb);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -32,7 +32,6 @@ namespace VSoft.Prams
|
|||
if (info.SoftType == 1)
|
||||
{
|
||||
#region 重新载入数据
|
||||
DataProvider mydb = new DataProvider();
|
||||
IDbInterface db = Itrycn_Db.CreateDataProvider(Itrycn_Db.dataType);
|
||||
if (db.ConnDb(info.Path) == 1)
|
||||
{
|
||||
|
|
@ -51,7 +50,7 @@ namespace VSoft.Prams
|
|||
if (where.Length > 0)
|
||||
{
|
||||
DataSet ds = db.ReadData("select * from Softs where " + where, mySQL);
|
||||
if (mydb.HaveData(ds))
|
||||
if (ds.HaveData())
|
||||
{
|
||||
DataRow row = ds.Tables[0].Rows[0];
|
||||
path = RyFiles.GetRealPath(row["Path"].ToString());
|
||||
|
|
@ -87,7 +86,6 @@ namespace VSoft.Prams
|
|||
switch(path.Substring(1).ToLower())
|
||||
{
|
||||
case "emptyrecyclebin"://清空回收站
|
||||
|
||||
switch (Msg.ShowMsg("是否确认要清空回收站?\r\n\r\n该操作不可逆!!!", "提示", MessageBoxButtons.YesNo, MessageBoxIcon.Warning, MessageBoxDefaultButton.Button2))
|
||||
{
|
||||
case DialogResult.Yes:
|
||||
|
|
@ -95,6 +93,12 @@ namespace VSoft.Prams
|
|||
return 1;
|
||||
}
|
||||
break;
|
||||
case "trans"://翻译
|
||||
Config.Soft_Config.MainForm.Invoke(new Action(() =>
|
||||
{
|
||||
RyForm.ShowOne(new Tools.FrmTrans());
|
||||
}));
|
||||
break;
|
||||
}
|
||||
return 0;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -32,5 +32,5 @@ using System.Runtime.InteropServices;
|
|||
//可以指定所有这些值,也可以使用“生成号”和“修订号”的默认值
|
||||
//通过使用 "*",如下所示:
|
||||
// [assembly: AssemblyVersion("1.0.*")]
|
||||
[assembly: AssemblyVersion("1.0.2204.1601")]
|
||||
[assembly: AssemblyFileVersion("1.0.2204.1601")]
|
||||
[assembly: AssemblyVersion("1.0.2211.3001")]
|
||||
[assembly: AssemblyFileVersion("1.0.2211.3001")]
|
||||
182
Source/VSoft_Dll/Tools/Trans/FrmTrans.Designer.cs
generated
Normal file
182
Source/VSoft_Dll/Tools/Trans/FrmTrans.Designer.cs
generated
Normal file
|
|
@ -0,0 +1,182 @@
|
|||
namespace VSoft.Tools
|
||||
{
|
||||
partial class FrmTrans
|
||||
{
|
||||
/// <summary>
|
||||
/// Required designer variable.
|
||||
/// </summary>
|
||||
private System.ComponentModel.IContainer components = null;
|
||||
|
||||
/// <summary>
|
||||
/// Clean up any resources being used.
|
||||
/// </summary>
|
||||
/// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
|
||||
protected override void Dispose(bool disposing)
|
||||
{
|
||||
if (disposing && (components != null))
|
||||
{
|
||||
components.Dispose();
|
||||
}
|
||||
base.Dispose(disposing);
|
||||
}
|
||||
|
||||
#region Windows Form Designer generated code
|
||||
|
||||
/// <summary>
|
||||
/// Required method for Designer support - do not modify
|
||||
/// the contents of this method with the code editor.
|
||||
/// </summary>
|
||||
private void InitializeComponent()
|
||||
{
|
||||
System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(FrmTrans));
|
||||
this.label1 = new System.Windows.Forms.Label();
|
||||
this.RichText = new ryControls.Controls.RichTextBox2();
|
||||
this.label2 = new System.Windows.Forms.Label();
|
||||
this.RichResult = new ryControls.Controls.RichTextBox2();
|
||||
this.CbbLngFrom = new ryControls.RyComboBox();
|
||||
this.label3 = new System.Windows.Forms.Label();
|
||||
this.label4 = new System.Windows.Forms.Label();
|
||||
this.CbbLngTo = new ryControls.RyComboBox();
|
||||
this.SuspendLayout();
|
||||
//
|
||||
// label1
|
||||
//
|
||||
this.label1.AutoSize = true;
|
||||
this.label1.Location = new System.Drawing.Point(10, 69);
|
||||
this.label1.Name = "label1";
|
||||
this.label1.Size = new System.Drawing.Size(65, 12);
|
||||
this.label1.TabIndex = 0;
|
||||
this.label1.Text = "待翻译文本";
|
||||
//
|
||||
// RichText
|
||||
//
|
||||
this.RichText.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
|
||||
| System.Windows.Forms.AnchorStyles.Right)));
|
||||
this.RichText.BorderStyle = System.Windows.Forms.BorderStyle.None;
|
||||
this.RichText.DetectUrls = false;
|
||||
this.RichText.EmptyText = "";
|
||||
this.RichText.Font = new System.Drawing.Font("Courier New", 10F);
|
||||
this.RichText.Location = new System.Drawing.Point(12, 84);
|
||||
this.RichText.Name = "RichText";
|
||||
this.RichText.OnlyInputText = false;
|
||||
this.RichText.Size = new System.Drawing.Size(686, 181);
|
||||
this.RichText.TabIndex = 1;
|
||||
this.RichText.Text = "";
|
||||
this.RichText.WordWrap = false;
|
||||
this.RichText.TextChanged += new System.EventHandler(this.RichText_TextChanged);
|
||||
//
|
||||
// label2
|
||||
//
|
||||
this.label2.AutoSize = true;
|
||||
this.label2.Location = new System.Drawing.Point(10, 269);
|
||||
this.label2.Name = "label2";
|
||||
this.label2.Size = new System.Drawing.Size(65, 12);
|
||||
this.label2.TabIndex = 2;
|
||||
this.label2.Text = "待翻译文本";
|
||||
//
|
||||
// RichResult
|
||||
//
|
||||
this.RichResult.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)
|
||||
| System.Windows.Forms.AnchorStyles.Left)
|
||||
| System.Windows.Forms.AnchorStyles.Right)));
|
||||
this.RichResult.BorderStyle = System.Windows.Forms.BorderStyle.None;
|
||||
this.RichResult.DetectUrls = false;
|
||||
this.RichResult.EmptyText = "";
|
||||
this.RichResult.Font = new System.Drawing.Font("Courier New", 10F);
|
||||
this.RichResult.Location = new System.Drawing.Point(12, 285);
|
||||
this.RichResult.Name = "RichResult";
|
||||
this.RichResult.OnlyInputText = false;
|
||||
this.RichResult.Size = new System.Drawing.Size(686, 260);
|
||||
this.RichResult.TabIndex = 3;
|
||||
this.RichResult.Text = "";
|
||||
this.RichResult.WordWrap = false;
|
||||
//
|
||||
// CbbLngFrom
|
||||
//
|
||||
this.CbbLngFrom.DrawMode = System.Windows.Forms.DrawMode.OwnerDrawFixed;
|
||||
this.CbbLngFrom.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
|
||||
this.CbbLngFrom.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
|
||||
this.CbbLngFrom.Font = new System.Drawing.Font("宋体", 10.5F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
|
||||
this.CbbLngFrom.FormattingEnabled = true;
|
||||
this.CbbLngFrom.Items.AddRange(new object[] {
|
||||
"自动",
|
||||
"英文",
|
||||
"中文",
|
||||
"韩语",
|
||||
"日语"});
|
||||
this.CbbLngFrom.Location = new System.Drawing.Point(33, 36);
|
||||
this.CbbLngFrom.Name = "CbbLngFrom";
|
||||
this.CbbLngFrom.Size = new System.Drawing.Size(93, 24);
|
||||
this.CbbLngFrom.TabIndex = 4;
|
||||
this.CbbLngFrom.SelectedIndexChanged += new System.EventHandler(this.CbbFrom_SelectedIndexChanged);
|
||||
//
|
||||
// label3
|
||||
//
|
||||
this.label3.AutoSize = true;
|
||||
this.label3.Location = new System.Drawing.Point(10, 41);
|
||||
this.label3.Name = "label3";
|
||||
this.label3.Size = new System.Drawing.Size(17, 12);
|
||||
this.label3.TabIndex = 5;
|
||||
this.label3.Text = "从";
|
||||
//
|
||||
// label4
|
||||
//
|
||||
this.label4.AutoSize = true;
|
||||
this.label4.Location = new System.Drawing.Point(132, 41);
|
||||
this.label4.Name = "label4";
|
||||
this.label4.Size = new System.Drawing.Size(41, 12);
|
||||
this.label4.TabIndex = 6;
|
||||
this.label4.Text = "翻译成";
|
||||
//
|
||||
// CbbLngTo
|
||||
//
|
||||
this.CbbLngTo.DrawMode = System.Windows.Forms.DrawMode.OwnerDrawFixed;
|
||||
this.CbbLngTo.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
|
||||
this.CbbLngTo.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
|
||||
this.CbbLngTo.Font = new System.Drawing.Font("宋体", 10.5F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
|
||||
this.CbbLngTo.FormattingEnabled = true;
|
||||
this.CbbLngTo.Items.AddRange(new object[] {
|
||||
"英文",
|
||||
"中文",
|
||||
"韩语",
|
||||
"日语"});
|
||||
this.CbbLngTo.Location = new System.Drawing.Point(179, 36);
|
||||
this.CbbLngTo.Name = "CbbLngTo";
|
||||
this.CbbLngTo.Size = new System.Drawing.Size(93, 24);
|
||||
this.CbbLngTo.TabIndex = 7;
|
||||
this.CbbLngTo.SelectedIndexChanged += new System.EventHandler(this.CbbTo_SelectedIndexChanged);
|
||||
//
|
||||
// FrmTrans
|
||||
//
|
||||
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 12F);
|
||||
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
|
||||
this.ClientSize = new System.Drawing.Size(714, 559);
|
||||
this.Controls.Add(this.CbbLngTo);
|
||||
this.Controls.Add(this.label4);
|
||||
this.Controls.Add(this.label3);
|
||||
this.Controls.Add(this.CbbLngFrom);
|
||||
this.Controls.Add(this.RichResult);
|
||||
this.Controls.Add(this.label2);
|
||||
this.Controls.Add(this.RichText);
|
||||
this.Controls.Add(this.label1);
|
||||
this.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon")));
|
||||
this.Name = "FrmTrans";
|
||||
this.Text = "快速翻译";
|
||||
this.Load += new System.EventHandler(this.FrmTrans_Load);
|
||||
this.ResumeLayout(false);
|
||||
this.PerformLayout();
|
||||
|
||||
}
|
||||
|
||||
#endregion
|
||||
|
||||
private System.Windows.Forms.Label label1;
|
||||
private ryControls.Controls.RichTextBox2 RichText;
|
||||
private System.Windows.Forms.Label label2;
|
||||
private ryControls.Controls.RichTextBox2 RichResult;
|
||||
private ryControls.RyComboBox CbbLngFrom;
|
||||
private System.Windows.Forms.Label label3;
|
||||
private System.Windows.Forms.Label label4;
|
||||
private ryControls.RyComboBox CbbLngTo;
|
||||
}
|
||||
}
|
||||
148
Source/VSoft_Dll/Tools/Trans/FrmTrans.cs
Normal file
148
Source/VSoft_Dll/Tools/Trans/FrmTrans.cs
Normal file
|
|
@ -0,0 +1,148 @@
|
|||
using Newtonsoft.Json.Linq;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.ComponentModel;
|
||||
using System.Data;
|
||||
using System.Drawing;
|
||||
using System.IO;
|
||||
using System.Linq;
|
||||
using System.Net;
|
||||
using System.Security.Cryptography;
|
||||
using System.Text;
|
||||
using System.Threading;
|
||||
using System.Windows.Forms;
|
||||
|
||||
namespace VSoft.Tools
|
||||
{
|
||||
public partial class FrmTrans : Skins.SKinForm
|
||||
{
|
||||
public FrmTrans()
|
||||
{
|
||||
InitializeComponent();
|
||||
CbbLngFrom.SelectedIndex = 0;
|
||||
CbbLngTo.SelectedIndex = 0;
|
||||
}
|
||||
private string Tran(string from_txt,string lng_from,string lng_to)
|
||||
{
|
||||
try
|
||||
{
|
||||
if (from_txt.Length == 0) { return ""; }
|
||||
// 原文
|
||||
string q = from_txt;
|
||||
// 源语言
|
||||
string from = lng_from;
|
||||
// 目标语言
|
||||
string to = lng_to;
|
||||
// 改成您的APP ID
|
||||
string appId = "20220508001207657";
|
||||
Random rd = new Random();
|
||||
string salt = rd.Next(100000).ToString();
|
||||
// 改成您的密钥
|
||||
string secretKey = "l6ngE7GjtdvRESJqQzDL";
|
||||
string sign = EncryptString(appId + q + salt + secretKey);
|
||||
string url = "http://api.fanyi.baidu.com/api/trans/vip/translate?";
|
||||
url += "q=" + RyWeb.WebDecode.UrlEncode(q);
|
||||
url += "&from=" + from;
|
||||
url += "&to=" + to;
|
||||
url += "&appid=" + appId;
|
||||
url += "&salt=" + salt;
|
||||
url += "&sign=" + sign;
|
||||
HttpWebRequest request = (HttpWebRequest)WebRequest.Create(url);
|
||||
request.Method = "GET";
|
||||
request.ContentType = "text/html;charset=UTF-8";
|
||||
request.UserAgent = null;
|
||||
request.Timeout = 6000;
|
||||
HttpWebResponse response = (HttpWebResponse)request.GetResponse();
|
||||
Stream myResponseStream = response.GetResponseStream();
|
||||
StreamReader myStreamReader = new StreamReader(myResponseStream, Encoding.GetEncoding("utf-8"));
|
||||
string retString = myStreamReader.ReadToEnd();
|
||||
myStreamReader.Close();
|
||||
myResponseStream.Close();
|
||||
JObject jo = JObject.Parse(retString);
|
||||
var trans_result = jo["trans_result"];
|
||||
if (trans_result != null)
|
||||
{
|
||||
var jarr = (JArray)trans_result;
|
||||
var text = "";
|
||||
for (int i = 0; i < jarr.Count; i++)
|
||||
{
|
||||
if (text.Length > 0) { text += "\r\n"; }
|
||||
if (jarr[i] != null)
|
||||
{
|
||||
var dst = jarr[i]["dst"];
|
||||
if (dst != null) { text+= dst.ToString(); }
|
||||
}
|
||||
}
|
||||
last_text = from_txt;
|
||||
return text;
|
||||
}
|
||||
return "";
|
||||
}
|
||||
catch(Exception ex) { return "错误=>"+ex.Message; }
|
||||
}
|
||||
string last_text = "";
|
||||
// 计算MD5值
|
||||
public static string EncryptString(string str)
|
||||
{
|
||||
MD5 md5 = MD5.Create();
|
||||
// 将字符串转换成字节数组
|
||||
byte[] byteOld = Encoding.UTF8.GetBytes(str);
|
||||
// 调用加密方法
|
||||
byte[] byteNew = md5.ComputeHash(byteOld);
|
||||
// 将加密结果转换为字符串
|
||||
StringBuilder sb = new StringBuilder();
|
||||
foreach (byte b in byteNew)
|
||||
{
|
||||
// 将字节转换成16进制表示的字符串,
|
||||
sb.Append(b.ToString("x2"));
|
||||
}
|
||||
// 返回加密的字符串
|
||||
return sb.ToString();
|
||||
}
|
||||
private void Trans()
|
||||
{
|
||||
var lng_from = lng_convert(CbbLngFrom.Text);
|
||||
var lng_to = lng_convert(CbbLngTo.Text);
|
||||
string lng_convert(string lng_text)
|
||||
{
|
||||
if (lng_text == "自动") { return "auto"; }
|
||||
else if (lng_text == "中文") { return "zh"; }
|
||||
else if (lng_text == "英文") { return "en"; }
|
||||
else if (lng_text == "日语") { return "jp"; }
|
||||
else if (lng_text == "韩语") { return "kor"; }
|
||||
else { return ""; }
|
||||
}
|
||||
var from_text = RichText.Text;
|
||||
Thread th = new Thread(Start);
|
||||
th.Start();
|
||||
void Start()
|
||||
{
|
||||
var to_text= Tran(from_text, lng_from, lng_to);
|
||||
this.Invoke(new Action(() =>
|
||||
{
|
||||
RichResult.Text = to_text;
|
||||
}));
|
||||
}
|
||||
}
|
||||
private void CbbFrom_SelectedIndexChanged(object sender, EventArgs e)
|
||||
{
|
||||
Trans();
|
||||
}
|
||||
|
||||
private void CbbTo_SelectedIndexChanged(object sender, EventArgs e)
|
||||
{
|
||||
Trans();
|
||||
}
|
||||
|
||||
private void RichText_TextChanged(object sender, EventArgs e)
|
||||
{
|
||||
Trans();
|
||||
}
|
||||
|
||||
private void FrmTrans_Load(object sender, EventArgs e)
|
||||
{
|
||||
var screen = Screen.FromPoint(MousePosition).WorkingArea;
|
||||
this.Location = new Point(screen.Left+ ((screen.Width-this.Width)/2),screen.Top+ ((screen.Height - this.Height) / 2));
|
||||
}
|
||||
}
|
||||
}
|
||||
287
Source/VSoft_Dll/Tools/Trans/FrmTrans.resx
Normal file
287
Source/VSoft_Dll/Tools/Trans/FrmTrans.resx
Normal file
|
|
@ -0,0 +1,287 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<root>
|
||||
<!--
|
||||
Microsoft ResX Schema
|
||||
|
||||
Version 2.0
|
||||
|
||||
The primary goals of this format is to allow a simple XML format
|
||||
that is mostly human readable. The generation and parsing of the
|
||||
various data types are done through the TypeConverter classes
|
||||
associated with the data types.
|
||||
|
||||
Example:
|
||||
|
||||
... ado.net/XML headers & schema ...
|
||||
<resheader name="resmimetype">text/microsoft-resx</resheader>
|
||||
<resheader name="version">2.0</resheader>
|
||||
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
|
||||
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
|
||||
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
|
||||
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
|
||||
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
|
||||
<value>[base64 mime encoded serialized .NET Framework object]</value>
|
||||
</data>
|
||||
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
|
||||
<comment>This is a comment</comment>
|
||||
</data>
|
||||
|
||||
There are any number of "resheader" rows that contain simple
|
||||
name/value pairs.
|
||||
|
||||
Each data row contains a name, and value. The row also contains a
|
||||
type or mimetype. Type corresponds to a .NET class that support
|
||||
text/value conversion through the TypeConverter architecture.
|
||||
Classes that don't support this are serialized and stored with the
|
||||
mimetype set.
|
||||
|
||||
The mimetype is used for serialized objects, and tells the
|
||||
ResXResourceReader how to depersist the object. This is currently not
|
||||
extensible. For a given mimetype the value must be set accordingly:
|
||||
|
||||
Note - application/x-microsoft.net.object.binary.base64 is the format
|
||||
that the ResXResourceWriter will generate, however the reader can
|
||||
read any of the formats listed below.
|
||||
|
||||
mimetype: application/x-microsoft.net.object.binary.base64
|
||||
value : The object must be serialized with
|
||||
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
|
||||
: and then encoded with base64 encoding.
|
||||
|
||||
mimetype: application/x-microsoft.net.object.soap.base64
|
||||
value : The object must be serialized with
|
||||
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
|
||||
: and then encoded with base64 encoding.
|
||||
|
||||
mimetype: application/x-microsoft.net.object.bytearray.base64
|
||||
value : The object must be serialized into a byte array
|
||||
: using a System.ComponentModel.TypeConverter
|
||||
: and then encoded with base64 encoding.
|
||||
-->
|
||||
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
|
||||
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
|
||||
<xsd:element name="root" msdata:IsDataSet="true">
|
||||
<xsd:complexType>
|
||||
<xsd:choice maxOccurs="unbounded">
|
||||
<xsd:element name="metadata">
|
||||
<xsd:complexType>
|
||||
<xsd:sequence>
|
||||
<xsd:element name="value" type="xsd:string" minOccurs="0" />
|
||||
</xsd:sequence>
|
||||
<xsd:attribute name="name" use="required" type="xsd:string" />
|
||||
<xsd:attribute name="type" type="xsd:string" />
|
||||
<xsd:attribute name="mimetype" type="xsd:string" />
|
||||
<xsd:attribute ref="xml:space" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
<xsd:element name="assembly">
|
||||
<xsd:complexType>
|
||||
<xsd:attribute name="alias" type="xsd:string" />
|
||||
<xsd:attribute name="name" type="xsd:string" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
<xsd:element name="data">
|
||||
<xsd:complexType>
|
||||
<xsd:sequence>
|
||||
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
|
||||
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
|
||||
</xsd:sequence>
|
||||
<xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
|
||||
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
|
||||
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
|
||||
<xsd:attribute ref="xml:space" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
<xsd:element name="resheader">
|
||||
<xsd:complexType>
|
||||
<xsd:sequence>
|
||||
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
|
||||
</xsd:sequence>
|
||||
<xsd:attribute name="name" type="xsd:string" use="required" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
</xsd:choice>
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
</xsd:schema>
|
||||
<resheader name="resmimetype">
|
||||
<value>text/microsoft-resx</value>
|
||||
</resheader>
|
||||
<resheader name="version">
|
||||
<value>2.0</value>
|
||||
</resheader>
|
||||
<resheader name="reader">
|
||||
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</resheader>
|
||||
<resheader name="writer">
|
||||
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</resheader>
|
||||
<assembly alias="System.Drawing" name="System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
|
||||
<data name="$this.Icon" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||
<value>
|
||||
AAABAAEAMDAAAAEAIACoJQAAFgAAACgAAAAwAAAAYAAAAAEAIAAAAAAAgCUAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAP7+/gz///9x////zv7+/vT///////////7+/v7////////////////+/v7+//////7+
|
||||
/v7///////////7+/v7///////////7+/v7///////////7+/v7///////////7+/v7///////////7+
|
||||
/v7////////////////+/v7+///////////+/v7+///////////+/v7+///////////+/v70////zv//
|
||||
/3H+/v4MAAAAAAAAAAAAAAAA////Gf7+/r7////+//////7+/v7///////////7+/v7/////////////
|
||||
///+/v7+//////7+/v7///////////7+/v7///////////7+/v7///////////7+/v7///////////7+
|
||||
/v7///////////7+/v7////////////////+/v7+///////////+/v7+///////////+/v7+////////
|
||||
///+/v7+//////////7+/v6+////GQAAAAD+/v4M/v7+wv7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+
|
||||
/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+
|
||||
/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+
|
||||
/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+wv7+/gz///9w/////v7+/v7////v////gP7+
|
||||
/h8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD+/v4f////gP///+/+/v7+/////v7+/nD////L//////7+
|
||||
/v7///91AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP///3X+/v7+//////7+
|
||||
/sv+/v70/v7+/v7+/v7+/v4iAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP7+
|
||||
/iL+/v7+/v7+/v7+/vT///////////7+/v4AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAD+/v7+//////7+/v7///////////7+/v4AAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD+/v7+//////7+/v7+/v7+/v7+/v7+/v4AAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD+/v7+/v7+/v7+/v7///////////7+
|
||||
/v4AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD+/v7+//////7+
|
||||
/v7///////////7+/v4AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD///9n////f/7+
|
||||
/n////87AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAD+/v7+//////7+/v7///////////7+/v4AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAP7+/jf///9o////AwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAD////P//////7+/v7///93AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAD+/v7+//////7+/v7+/v7+/v7+/v7+/v4AAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAA/v7+C/7+/sz+/v79/v7+lf7+/gkAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAD+/v7O/v7+/v7+/v7+/v53AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD+/v7+/v7+/v7+/v7///////////7+/v4AAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA////bP7+/v7//////////f7+/q3///8PAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD////P//////7+/v7///93AAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD+/v7+//////7+/v7+/v7+/v7+/v7+
|
||||
/v4AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/v7+Ov7+/vD+/v7+/v7+/v7+
|
||||
/v7+/v67/v7+FwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD+/v7O/v7+/v7+/v7+/v53AAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD+/v7+/v7+/v7+
|
||||
/v7///////////7+/v4AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP7+
|
||||
/rL///////////7+/v7/////////0v7+/iP///8K////Uf7+/lf///9X////V/7+/lf////b//////7+
|
||||
/v7///+f////V////1f+/v5X////V////zAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAD+/v7+//////7+/v7///////////7+/v4AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAP7+/qf///////////7+/vb////9//////7+/sL///8Q////5/7+/v7///////////7+
|
||||
/v7///////////7+/v7////////////////+/v7+/////////4cAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAD+/v7+//////7+/v7+/v7+/v7+/v7+/v4AAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAP7+/qf+/v7+/v7+/v7+/pT+/v5a/v7+yv7+/s7+/v4Q/v7+5/7+
|
||||
/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/ocAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD+/v7+/v7+/v7+/v7///////////7+/v4AAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP7+/qf///////////7+/ocAAAAA////CP7+
|
||||
/m////8Q////vf7+/s/////P////z/7+/s/////z//////7+/v7////h////z////8/+/v7P////z///
|
||||
/28AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD+/v7+//////7+/v7///////////7+
|
||||
/v4AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP7+/qf///////////7+
|
||||
/ocAAAAAAAAAAP7+/gP///8B////B/7+/gf///8H////B/7+/gf////P//////7+/v7///95////B///
|
||||
/wf+/v4H////B////wQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD+/v7+//////7+
|
||||
/v7+/v7+/v7+/v7+/v4AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP7+
|
||||
/qf+/v7+/v7+/v7+/ocAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD+/v4v/v7+L/7+/i/+/v7O/v7+/v7+
|
||||
/v7+/v6M/v7+L/7+/i/+/v4jAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAD+/v7+/v7+/v7+/v7///////////7+/v4AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAP7+/qf///////////7+/ocAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD///////////7+
|
||||
/v7///////////7+/v7////////////////+/v6nAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAD+/v7+//////7+/v7///////////7+/v4AAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAP7+/qf///////////7+/ocAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAD///////////7+/v7///////////7+/v7////////////////+/v6nAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD+/v7+//////7+/v7+/v7+/v7+/v7+/v4AAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP7+/qf+/v7+/v7+/v7+/ocAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAD+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v6nAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD+/v7+/v7+/v7+/v7///////////7+
|
||||
/v4AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP7+/qf///////////7+
|
||||
/ocAAAAAAAAAAAAAAAD///8s////Iv7+/gEAAAAAAAAAAAAAAAD////P//////7+/v7///93AAAAAAAA
|
||||
AAAAAAAA////Cf///yn+/v4+////BgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD+/v7+//////7+
|
||||
/v7///////////7+/v4AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA////C////xf+/v4X////F/7+
|
||||
/q3///////////7+/ocAAAAAAAAAAP7+/gP////d////8P7+/sv///+F////P/7+/gr///+9////5/7+
|
||||
/uf///9u////C////0H+/v6Z////3f////T+/v7t////FwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAD+/v7+//////7+/v7+/v7+/v7+/v7+/v4AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/v7+d/7+
|
||||
/u7+/v7u/v7+7v7+/vT+/v7+/v7+/v7+/ocAAAAAAAAAAP7+/kr+/v7+/v7+/v7+/v7+/v7+/v7+/P7+
|
||||
/tD+/v6G/v7+KP7+/hr+/v58/v7+0f7+/vz+/v7+/v7+/v7+/v7+/v7+/v7+OwAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAD+/v7+/v7+/v7+/v7///////////7+/v4AAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAA////f//////+/v7+//////7+/v7///////////7+/ocAAAAA////Av7+/pb////x/////v7+
|
||||
/v7///////////7+/v7/////////+f7+/u/////////////////+/v7x////5////+D+/v7X////XQAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD+/v7+//////7+/v7///////////7+/v4AAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAA////e/////f+/v72////9/7+/vb////3////9/7+/oUAAAAA////Af7+
|
||||
/g3///8a////Of7+/l7///+N////xf7+/vT///////////7+/v7/////////jf///yr+/v4Y////FP//
|
||||
/xD+/v4M////BAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD+/v7+//////7+/v7+/v7+/v7+/v7+
|
||||
/v4AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/v7+F/7+/i/+/v4v/v7+L/7+/i/+/v4v/v7+L/7+
|
||||
/h0AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/v7+Fv7+/s/+/v7+/v7+/v7+/v7+/v7+/v7+5/7+
|
||||
/kQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD+/v7+/v7+/v7+
|
||||
/v7///////////7+/v4AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAA////I/7+/iIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD///8a////y/7+/v7/////////q/7+
|
||||
/oj////7//////////z+/v5h////AQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAD+/v7+//////7+/v7///////////7+/v4AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAD///8d////0P7+/sL///8HAAAAAAAAAAAAAAAAAAAAAP7+/g3////L//////7+
|
||||
/v7///+w////Df7+/gL///9e////9f/////+/v75////ZQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAD+/v7+//////7+/v7///////////7+/v4AAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAP7+/hH////L//////7+/v7///+U////BAAAAAAAAAAAAAAAAP7+
|
||||
/mn///////////7+/vj///8jAAAAAAAAAAAAAAAA////h//////+/v7+////7v///zYAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD+/v7+//////7+/v7+/v7+/v7+/v7+/v4AAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/v7+G/7+/sn+/v7+/v7+/v7+/v7+/v75/v7+QwAA
|
||||
AAD+/v6H/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+
|
||||
/ocAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD+/v7+/v7+/v7+/v7///////////7+
|
||||
/v4AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD+/v4j////0f7+/v7///////////7+
|
||||
/vf///9w////BgAAAAD///+H//////7+/v7///////////7+/v7///////////7+/v7/////////////
|
||||
///+/v7+/////////4cAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD+/v7+//////7+
|
||||
/v7///////////7+/v4AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD+/v41////8P7+
|
||||
/v7/////////5f7+/lIAAAAAAAAAAAAAAAD///+H//////7+/v7///////////7+/v7///////////7+
|
||||
/v7////////////////+/v7+/////////4cAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAD+/v7+//////7+/v7+/v7+/v7+/v7+/v4AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAA/v7+af7+/vr+/v6n/v7+GgAAAAAAAAAAAAAAAAAAAAD+/v4d/v7+L/7+/i/+/v4v/v7+L/7+
|
||||
/i/+/v4v/v7+L/7+/i/+/v4v/v7+L/7+/i/+/v4v/v7+L/7+/h0AAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAD+/v7+/v7+/v7+/v7///////////7+/v4AAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAA////Bf7+/kb///8FAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD+/v7+//////7+/v7///////////7+/v4AAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD+/v7+//////7+/v7+/v7+/v7+/v7+
|
||||
/v4AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD+/v7+/v7+/v7+
|
||||
/v7///////////7+/v4AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAD+/v7+//////7+/v7///////////7+/v4AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAD+/v7+//////7+/v7+/v70/v7+/v7+/v7+/v4iAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAP7+/iL+/v7+/v7+/v7+/vT////L//////7+/v7///91AAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP///3X+/v7+//////7+/sv///9w/////v7+
|
||||
/v7////v////gP7+/h8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD+/v4f////gP///+/+/v7+/////v7+
|
||||
/nD+/v4M/v7+wv7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+
|
||||
/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+
|
||||
/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+
|
||||
/v7+/v7+/v7+wv7+/gwAAAAA////Gf7+/r7////+//////7+/v7///////////7+/v7/////////////
|
||||
///+/v7+//////7+/v7///////////7+/v7///////////7+/v7///////////7+/v7///////////7+
|
||||
/v7///////////7+/v7////////////////+/v7+///////////+/v7+///////////+/v7+////////
|
||||
///+/v7+//////////7+/v6+////GQAAAAAAAAAAAAAAAP7+/gz+/v5x/v7+zv7+/vT+/v7+/v7+/v7+
|
||||
/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+
|
||||
/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+
|
||||
/v7+/v7+/v7+/v7+/v7+/v70/v7+zv7+/nH+/v4MAAAAAAAAAADAAAAAAAMAAIAAAAAAAQAAAAAAAAAA
|
||||
AAAD/////8AAAA//////8AAAD//////wAAAf//////gAAB//////+AAAH//////4AAAf//////gAAB//
|
||||
/+H/+AAAH/x/4f/4AAAf+D/h//gAAB/4H+H/+AAAH/gP4f/4AAAf/AAAD/gAAB/8AAAP+AAAH/wAAA/4
|
||||
AAAf/CAAD/gAAB/8MAAP+AAAH/w/AD/4AAAf/D8AP/gAAB/8PwA/+AAAH/w/AD/4AAAf/Djhw/gAAB/A
|
||||
MAAD+AAAH8AwAAP4AAAfwCAAA/gAAB/AIAAD+AAAH8A/gH/4AAAf/z8AH/gAAB/+HgAf+AAAH/wODg/4
|
||||
AAAf+AgAD/gAAB/wCAAP+AAAH/A4AA/4AAAf+HgAD/gAAB/4////+AAAH//////4AAAf//////gAAB//
|
||||
////+AAAH//////4AAAP//////AAAA//////8AAAA//////AAAAAAAAAAAAAAIAAAAAAAQAAwAAAAAAD
|
||||
AAA=
|
||||
</value>
|
||||
</data>
|
||||
</root>
|
||||
|
|
@ -52,6 +52,7 @@
|
|||
<Reference Include="System" />
|
||||
<Reference Include="System.Core" />
|
||||
<Reference Include="System.Drawing" />
|
||||
<Reference Include="System.Web" />
|
||||
<Reference Include="System.Windows.Forms" />
|
||||
<Reference Include="System.Xaml" />
|
||||
<Reference Include="System.Xml.Linq" />
|
||||
|
|
@ -141,6 +142,12 @@
|
|||
<DesignTime>True</DesignTime>
|
||||
<DependentUpon>Resources.resx</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="Tools\Trans\FrmTrans.cs">
|
||||
<SubType>Form</SubType>
|
||||
</Compile>
|
||||
<Compile Include="Tools\Trans\FrmTrans.Designer.cs">
|
||||
<DependentUpon>FrmTrans.cs</DependentUpon>
|
||||
</Compile>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<EmbeddedResource Include="Config\frmSetting.resx">
|
||||
|
|
@ -177,6 +184,9 @@
|
|||
<Generator>ResXFileCodeGenerator</Generator>
|
||||
<LastGenOutput>Resources.Designer.cs</LastGenOutput>
|
||||
</EmbeddedResource>
|
||||
<EmbeddedResource Include="Tools\Trans\FrmTrans.resx">
|
||||
<DependentUpon>FrmTrans.cs</DependentUpon>
|
||||
</EmbeddedResource>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<COMReference Include="IWshRuntimeLibrary">
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user