Compare commits
7 Commits
966ebb0259
...
b4830786a0
Author | SHA1 | Date | |
---|---|---|---|
|
b4830786a0 | ||
|
f7c882194c | ||
|
cf9b35d77e | ||
|
bfb3e7a2b3 | ||
|
00c9dec061 | ||
|
6342b9db9d | ||
|
4282403900 |
4
.gitignore
vendored
4
.gitignore
vendored
|
@ -4,3 +4,7 @@ Res/
|
|||
*.pdb
|
||||
**/dcu
|
||||
*.dcu
|
||||
/Source/.vs/公用控件组V4/v17/*.suo
|
||||
/Source/.vs/公用控件组V4/FileContentIndex/*.vsidx
|
||||
/Source/.vs
|
||||
.vs
|
||||
|
|
Binary file not shown.
Binary file not shown.
Binary file not shown.
|
@ -1197,6 +1197,14 @@
|
|||
<param name="input"></param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:ryCommon.VarExtension.ToNString(System.Decimal,System.String)">
|
||||
<summary>
|
||||
将数字转换成字符串,小数点末尾后面不包含0
|
||||
</summary>
|
||||
<param name="input"></param>
|
||||
<param name="format"></param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:ryCommon.VarExtension.ToNString(System.Double)">
|
||||
<summary>
|
||||
将数字转换成字符串,小数点末尾后面不包含0
|
||||
|
@ -1204,6 +1212,14 @@
|
|||
<param name="input"></param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:ryCommon.VarExtension.ToNString(System.Double,System.String)">
|
||||
<summary>
|
||||
将数字转换成字符串,小数点末尾后面不包含0
|
||||
</summary>
|
||||
<param name="input"></param>
|
||||
<param name="format"></param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:ryCommon.VarExtension.ToInt(System.Object)">
|
||||
<summary>
|
||||
将指定类型转换成整型
|
||||
|
@ -1262,23 +1278,61 @@
|
|||
<param name="input"></param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:ryCommon.VarExtension.IsInTime(System.DateTime,System.Int32,System.Int32)">
|
||||
<summary>
|
||||
判断时间是否在指定时间上
|
||||
</summary>
|
||||
<param name="input"></param>
|
||||
<param name="Hour"></param>
|
||||
<param name="Minute"></param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:ryCommon.VarExtension.IsInTime(System.DateTime,System.Int32,System.Int32,System.Int32)">
|
||||
<summary>
|
||||
判断时间是否在指定时间上
|
||||
</summary>
|
||||
<param name="input"></param>
|
||||
<param name="Hour"></param>
|
||||
<param name="Minute"></param>
|
||||
<param name="Second"></param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:ryCommon.VarExtension.IsInDay(System.DateTime,System.Int32,System.Int32)">
|
||||
<summary>
|
||||
判断时间是否在指定日期
|
||||
</summary>
|
||||
<param name="input"></param>
|
||||
<param name="Month"></param>
|
||||
<param name="Day"></param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:ryCommon.VarExtension.IsInDay(System.DateTime,System.Int32,System.Int32,System.Int32)">
|
||||
<summary>
|
||||
判断时间是否在指定日期
|
||||
</summary>
|
||||
<param name="input"></param>
|
||||
<param name="Year"></param>
|
||||
<param name="Month"></param>
|
||||
<param name="Day"></param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:ryCommon.VarExtension.ToDateTimeStr(System.DateTime)">
|
||||
<summary>
|
||||
转换DateTime类型到日期时间字符串
|
||||
转换DateTime类型到日期时间字符串(例如 2000-01-01 08:08:08)
|
||||
</summary>
|
||||
<param name="input"></param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:ryCommon.VarExtension.ToDateStr(System.DateTime)">
|
||||
<summary>
|
||||
转换DateTime类型到日期字符串
|
||||
转换DateTime类型到日期字符串(例如 2000-01-01)
|
||||
</summary>
|
||||
<param name="input"></param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:ryCommon.VarExtension.ToDateWeekStr(System.DateTime)">
|
||||
<summary>
|
||||
转换DateTime类型到日期星期字符串
|
||||
转换DateTime类型到日期星期字符串(例如 2000-01-01 星期六)
|
||||
</summary>
|
||||
<param name="input"></param>
|
||||
<returns></returns>
|
||||
|
@ -1449,6 +1503,68 @@
|
|||
<param name="input"></param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:ryCommon.VarExtension.Get(System.Tuple{System.String,System.Collections.Generic.IEnumerable{System.Collections.Generic.KeyValuePair{System.String,System.String}}},System.String,System.String)">
|
||||
<summary>
|
||||
根据表单字段名,获取对应的值
|
||||
</summary>
|
||||
<param name="input"></param>
|
||||
<param name="Name"></param>
|
||||
<param name="defValue"></param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:ryCommon.VarExtension.Get(System.Tuple{System.String,System.Collections.Generic.IEnumerable{System.Collections.Generic.KeyValuePair{System.String,System.String}}},System.String)">
|
||||
<summary>
|
||||
根据表单字段名,获取对应的值
|
||||
</summary>
|
||||
<param name="input"></param>
|
||||
<param name="Name"></param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:ryCommon.VarExtension.Get(System.Tuple{System.String,System.Collections.Generic.IEnumerable{System.Collections.Generic.KeyValuePair{System.String,System.String}}},System.String,System.Int32)">
|
||||
<summary>
|
||||
根据表单字段名,获取对应的值
|
||||
</summary>
|
||||
<param name="input"></param>
|
||||
<param name="Name"></param>
|
||||
<param name="defValue"></param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:ryCommon.VarExtension.Get(System.Tuple{System.String,System.Collections.Generic.IEnumerable{System.Collections.Generic.KeyValuePair{System.String,System.String}}},System.String,System.Int64)">
|
||||
<summary>
|
||||
根据表单字段名,获取对应的值
|
||||
</summary>
|
||||
<param name="input"></param>
|
||||
<param name="Name"></param>
|
||||
<param name="defValue"></param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:ryCommon.VarExtension.Get(System.Tuple{System.String,System.Collections.Generic.IEnumerable{System.Collections.Generic.KeyValuePair{System.String,System.String}}},System.String,System.Decimal)">
|
||||
<summary>
|
||||
根据表单字段名,获取对应的值
|
||||
</summary>
|
||||
<param name="input"></param>
|
||||
<param name="Name"></param>
|
||||
<param name="defValue"></param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:ryCommon.VarExtension.Get(System.Tuple{System.String,System.Collections.Generic.IEnumerable{System.Collections.Generic.KeyValuePair{System.String,System.String}}},System.String,System.Double)">
|
||||
<summary>
|
||||
根据表单字段名,获取对应的值
|
||||
</summary>
|
||||
<param name="input"></param>
|
||||
<param name="Name"></param>
|
||||
<param name="defValue"></param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:ryCommon.VarExtension.Get(System.Tuple{System.String,System.Collections.Generic.IEnumerable{System.Collections.Generic.KeyValuePair{System.String,System.String}}},System.String,System.Boolean)">
|
||||
<summary>
|
||||
根据表单字段名,获取对应的值
|
||||
</summary>
|
||||
<param name="input"></param>
|
||||
<param name="Name"></param>
|
||||
<param name="defValue"></param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="T:ryCommon.RySoft">
|
||||
<summary>
|
||||
文件信息
|
||||
|
@ -1498,6 +1614,88 @@
|
|||
</summary>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="T:ryCommon.BigFileOp">
|
||||
<summary>
|
||||
大文件与批量文件操作类,支持中途取消操作,本类需要实例化操作
|
||||
</summary>
|
||||
</member>
|
||||
<member name="T:ryCommon.BigFileOp.TranProgressHandler">
|
||||
<summary>
|
||||
传输进度
|
||||
</summary>
|
||||
<param name="curValue">当前传输完成的值</param>
|
||||
<param name="totalValue">全部值,为-1表示无法获取</param>
|
||||
<param name="percent">当前传输的百分比,为-1表示无法获取</param>
|
||||
</member>
|
||||
<member name="E:ryCommon.BigFileOp.OnProgress">
|
||||
<summary>
|
||||
传输进度
|
||||
</summary>
|
||||
</member>
|
||||
<member name="E:ryCommon.BigFileOp.OnCanel">
|
||||
<summary>
|
||||
取消事件
|
||||
</summary>
|
||||
</member>
|
||||
<member name="M:ryCommon.BigFileOp.CopyBigFile(System.String,System.String)">
|
||||
<summary>
|
||||
大文件按流复制文件,支持自动创建目标文件夹。 true:复制成功 false:复制失败
|
||||
</summary>
|
||||
<param name="soucrePath">原始文件路径</param>
|
||||
<param name="targetPath">复制目标文件路径</param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:ryCommon.BigFileOp.CopyFolder(System.String,System.String)">
|
||||
<summary>
|
||||
复制文件夹到目标文件夹,不支持进度事件,支持中途取消
|
||||
</summary>
|
||||
<param name="fromDir">源文件夹</param>
|
||||
<param name="ToDir">目标文件夹</param>
|
||||
<returns>返回复制操作是否成功的标识,成功返回0,负数表示复制失败的文件数量。1表示源文件夹不存在</returns>
|
||||
</member>
|
||||
<member name="M:ryCommon.BigFileOp.CopyFolderByProgress(System.String,System.String)">
|
||||
<summary>
|
||||
复制文件夹到目标文件夹,支持进度事件,支持中途取消
|
||||
</summary>
|
||||
<param name="fromDir">源文件夹</param>
|
||||
<param name="ToDir">目标文件夹</param>
|
||||
<returns>返回复制操作是否成功的标识,成功返回0,负数表示复制失败的文件数量。1表示源文件夹不存在</returns>
|
||||
</member>
|
||||
<member name="M:ryCommon.BigFileOp.CopyFolder(System.String,System.String,System.Int32,System.Int32,System.Int32@)">
|
||||
<summary>
|
||||
复制文件夹到目标文件夹,支持中途取消
|
||||
</summary>
|
||||
<param name="fromDir">源文件夹</param>
|
||||
<param name="ToDir">目标文件夹</param>
|
||||
<param name="StartCount">初始的文件数量</param>
|
||||
<param name="TotalCount">总数量,如果不计算,则使用-1</param>
|
||||
<param name="Count">操作的数量,包含成功的和失败的</param>
|
||||
<returns>返回复制操作是否成功的标识,成功返回0,负数表示复制失败的文件数量。1表示源文件夹不存在</returns>
|
||||
</member>
|
||||
<member name="M:ryCommon.BigFileOp.GetFilesCount(System.String)">
|
||||
<summary>
|
||||
获取文件夹中的文件数量
|
||||
</summary>
|
||||
<param name="Dir">文件夹路径</param>
|
||||
<returns>返回文件数量,中途取消则返回-1</returns>
|
||||
</member>
|
||||
<member name="M:ryCommon.BigFileOp.GetFolderSize(System.String)">
|
||||
<summary>
|
||||
获取文件夹的大小
|
||||
</summary>
|
||||
<param name="Dir">文件夹路径</param>
|
||||
<returns>返回文件数量,中途取消则返回-1</returns>
|
||||
</member>
|
||||
<member name="M:ryCommon.BigFileOp.AddFileToFolder(System.String,System.String,System.Boolean,System.Boolean@)">
|
||||
<summary>
|
||||
添加文件到指定文件夹,会进行自动重命名,并返回重命名后的文件名(含路径)
|
||||
</summary>
|
||||
<param name="filepath">要添加的文件路径</param>
|
||||
<param name="toFolder">要添加到的文件夹</param>
|
||||
<param name="RenameByTime">是否根据时间进行重命名</param>
|
||||
<param name="OK">返回是否成功执行</param>
|
||||
<returns>成功执行则返回路径,否则返回空</returns>
|
||||
</member>
|
||||
<member name="T:ryCommon.Hosts">
|
||||
<summary>
|
||||
Hosts操作类
|
||||
|
@ -1876,11 +2074,11 @@
|
|||
</member>
|
||||
<member name="M:ryCommon.RyFiles.CopyFolder(System.String,System.String)">
|
||||
<summary>
|
||||
复制文件夹到目标文件夹
|
||||
复制文件夹到目标文件夹(从3.0.2205.2601版本起已更换实现底层)
|
||||
</summary>
|
||||
<param name="fromDir">源文件夹</param>
|
||||
<param name="ToDir">目标文件夹</param>
|
||||
<returns>返回移动操作是否成功的标识,成功返回0,负数表示复制失败的文件数量。1表示源文件夹不存在</returns>
|
||||
<returns>返回复制操作是否成功的标识,成功返回0,负数表示复制失败的文件数量。1表示源文件夹不存在</returns>
|
||||
</member>
|
||||
<member name="M:ryCommon.RyFiles.ReNameFile(System.String,System.String,System.Boolean,System.String@)">
|
||||
<summary>
|
||||
|
@ -3042,6 +3240,12 @@
|
|||
</summary>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:ryCommon.RyForm.GetForegroundWindow">
|
||||
<summary>
|
||||
获取当前前台的窗口句柄
|
||||
</summary>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:ryCommon.RyForm.SetActiveWindow(System.IntPtr)">
|
||||
<summary>
|
||||
设置为当前活动窗口
|
||||
|
@ -3122,6 +3326,59 @@
|
|||
<param name="Path"></param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:ryCommon.RyRegedit.DelKey(Microsoft.Win32.RegistryHive,Microsoft.Win32.RegistryView,System.String,System.String)">
|
||||
<summary>
|
||||
删除注册表键(如果存在子键,子键将一并被删除)
|
||||
</summary>
|
||||
<param name="_RegRoot"></param>
|
||||
<param name="_UseSystemBit"></param>
|
||||
<param name="Path"></param>
|
||||
<param name="KeyName"></param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:ryCommon.RyRegedit.DelValue(Microsoft.Win32.RegistryHive,Microsoft.Win32.RegistryView,System.String,System.String)">
|
||||
<summary>
|
||||
删除注册表键值
|
||||
</summary>
|
||||
<param name="_RegRoot"></param>
|
||||
<param name="_UseSystemBit"></param>
|
||||
<param name="Path"></param>
|
||||
<param name="ValueName"></param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:ryCommon.RyRegedit.GetValue(Microsoft.Win32.RegistryHive,Microsoft.Win32.RegistryView,System.String,System.String,System.String)">
|
||||
<summary>
|
||||
获取注册表键值
|
||||
</summary>
|
||||
<param name="_RegRoot"></param>
|
||||
<param name="_UseSystemBit"></param>
|
||||
<param name="Path"></param>
|
||||
<param name="ValueName"></param>
|
||||
<param name="defValue"></param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:ryCommon.RyRegedit.SetValue(Microsoft.Win32.RegistryHive,Microsoft.Win32.RegistryView,System.String,System.String,System.String)">
|
||||
<summary>
|
||||
设置注册表键值
|
||||
</summary>
|
||||
<param name="_RegRoot"></param>
|
||||
<param name="_UseSystemBit"></param>
|
||||
<param name="Path"></param>
|
||||
<param name="ValueName"></param>
|
||||
<param name="Value"></param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:ryCommon.RyRegedit.SetValue(Microsoft.Win32.RegistryHive,Microsoft.Win32.RegistryView,System.String,System.String,System.UInt32)">
|
||||
<summary>
|
||||
设置注册表键值
|
||||
</summary>
|
||||
<param name="_RegRoot"></param>
|
||||
<param name="_UseSystemBit"></param>
|
||||
<param name="Path"></param>
|
||||
<param name="ValueName"></param>
|
||||
<param name="Value"></param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:ryCommon.RyRegedit.SetAutoRun(System.Boolean,System.String,System.String)">
|
||||
<summary>
|
||||
设置是否开机启动
|
||||
|
@ -8488,6 +8745,120 @@
|
|||
CookieCollection格式的Cookie集合同时也返回String类型的cookie
|
||||
</summary>
|
||||
</member>
|
||||
<member name="T:RyWeb.HttpServer">
|
||||
<summary>
|
||||
Http服务器类
|
||||
</summary>
|
||||
</member>
|
||||
<member name="T:RyWeb.HttpServer.HttpRequestHandler">
|
||||
<summary>
|
||||
|
||||
</summary>
|
||||
<param name="sender"></param>
|
||||
<param name="e"></param>
|
||||
</member>
|
||||
<member name="E:RyWeb.HttpServer.OnHandleGETRequest">
|
||||
<summary>
|
||||
当收到Get事件时激发
|
||||
</summary>
|
||||
</member>
|
||||
<member name="E:RyWeb.HttpServer.OnHandlePOSTRequest">
|
||||
<summary>
|
||||
当收到Post事件时激发
|
||||
</summary>
|
||||
</member>
|
||||
<member name="P:RyWeb.HttpServer.ListenerHost">
|
||||
<summary>
|
||||
监听的主机,默认是localhost
|
||||
</summary>
|
||||
</member>
|
||||
<member name="P:RyWeb.HttpServer.ErrorMessage">
|
||||
<summary>
|
||||
最后一次错误信息
|
||||
</summary>
|
||||
</member>
|
||||
<member name="M:RyWeb.HttpServer.#ctor(System.Int32)">
|
||||
<summary>
|
||||
在此端口建立Http服务类
|
||||
</summary>
|
||||
<param name="port">端口号</param>
|
||||
</member>
|
||||
<member name="M:RyWeb.HttpServer.IsRunning">
|
||||
<summary>
|
||||
|
||||
</summary>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:RyWeb.HttpServer.Start">
|
||||
<summary>
|
||||
开始服务
|
||||
</summary>
|
||||
</member>
|
||||
<member name="M:RyWeb.HttpServer.Exit">
|
||||
<summary>
|
||||
退出服务
|
||||
</summary>
|
||||
</member>
|
||||
<member name="M:RyWeb.HttpServer.Finalize">
|
||||
<summary>
|
||||
|
||||
</summary>
|
||||
</member>
|
||||
<member name="T:RyWeb.HttpRequest">
|
||||
<summary>
|
||||
|
||||
</summary>
|
||||
</member>
|
||||
<member name="P:RyWeb.HttpRequest.Url">
|
||||
<summary>
|
||||
|
||||
</summary>
|
||||
</member>
|
||||
<member name="P:RyWeb.HttpRequest.PostDataStr">
|
||||
<summary>
|
||||
|
||||
</summary>
|
||||
</member>
|
||||
<member name="P:RyWeb.HttpRequest.PostData">
|
||||
<summary>
|
||||
|
||||
</summary>
|
||||
</member>
|
||||
<member name="M:RyWeb.HttpRequest.GetPostData(System.String)">
|
||||
<summary>
|
||||
|
||||
</summary>
|
||||
</member>
|
||||
<member name="M:RyWeb.HttpRequest.GetPostData(System.String,System.String)">
|
||||
<summary>
|
||||
|
||||
</summary>
|
||||
</member>
|
||||
<member name="M:RyWeb.HttpRequest.GetPostData(System.String,System.Int32)">
|
||||
<summary>
|
||||
|
||||
</summary>
|
||||
</member>
|
||||
<member name="M:RyWeb.HttpRequest.GetPostData(System.String,System.Boolean)">
|
||||
<summary>
|
||||
|
||||
</summary>
|
||||
</member>
|
||||
<member name="P:RyWeb.HttpRequest.UrlReferrer">
|
||||
<summary>
|
||||
|
||||
</summary>
|
||||
</member>
|
||||
<member name="P:RyWeb.HttpRequest.ReturnHtml">
|
||||
<summary>
|
||||
|
||||
</summary>
|
||||
</member>
|
||||
<member name="P:RyWeb.HttpRequest.StatusCode">
|
||||
<summary>
|
||||
|
||||
</summary>
|
||||
</member>
|
||||
<member name="T:RyWeb.QuickWeb">
|
||||
<summary>
|
||||
|
||||
|
@ -8729,6 +9100,24 @@
|
|||
<param name="str"></param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:RyWeb.WebDecode.UrlToData(System.String)">
|
||||
<summary>
|
||||
将url里的字段分解成表单字典
|
||||
</summary>
|
||||
<param name="url"></param>
|
||||
<returns></returns>
|
||||
<exception cref="T:System.ArgumentNullException"></exception>
|
||||
<exception cref="T:System.FormatException"></exception>
|
||||
</member>
|
||||
<member name="M:RyWeb.WebDecode.GetParam(System.Tuple{System.String,System.Collections.Generic.IEnumerable{System.Collections.Generic.KeyValuePair{System.String,System.String}}},System.String,System.String)">
|
||||
<summary>
|
||||
根据表单字段名获取值
|
||||
</summary>
|
||||
<param name="decoded"></param>
|
||||
<param name="name"></param>
|
||||
<param name="defValue"></param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="T:rySafe.AES">
|
||||
<summary>
|
||||
AES加密解密类
|
||||
|
|
Binary file not shown.
Binary file not shown.
|
@ -1,2 +1,2 @@
|
|||
[Money_Op]
|
||||
hwnd=921334
|
||||
hwnd=4207474
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
<root>
|
||||
<list id="LastUpdateTime" Value="2022/1/27 15:20:41" />
|
||||
<list id="LastUpdateTime" Value="2022/5/8 9:12:56" />
|
||||
<list id="UpdateAfterTime" Value="0" />
|
||||
</root>
|
Binary file not shown.
|
@ -8697,6 +8697,11 @@
|
|||
标题栏图标尺寸
|
||||
</summary>
|
||||
</member>
|
||||
<member name="P:MGdu.WinFormUI.GMForm.GMFormIcon">
|
||||
<summary>
|
||||
窗体图标,如果设置本项,将不使用Icon属性
|
||||
</summary>
|
||||
</member>
|
||||
<member name="P:MGdu.WinFormUI.GMForm.IconLeftMargin">
|
||||
<summary>
|
||||
标题栏图标与窗体左边框的距离
|
||||
|
@ -16148,6 +16153,11 @@
|
|||
将给定对象的文本和HTML表示复制到剪贴板上。
|
||||
</summary>
|
||||
</member>
|
||||
<member name="M:BrightIdeasSoftware.ObjectListView.CopyObjectsToClipboard">
|
||||
<summary>
|
||||
将所有对象的文本和HTML表示复制到剪贴板上。
|
||||
</summary>
|
||||
</member>
|
||||
<member name="M:BrightIdeasSoftware.ObjectListView.ObjectsToHtml(System.Collections.IList)">
|
||||
<summary>
|
||||
返回给定对象的html表示形式
|
||||
|
|
Binary file not shown.
Binary file not shown.
|
@ -1197,6 +1197,14 @@
|
|||
<param name="input"></param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:ryCommon.VarExtension.ToNString(System.Decimal,System.String)">
|
||||
<summary>
|
||||
将数字转换成字符串,小数点末尾后面不包含0
|
||||
</summary>
|
||||
<param name="input"></param>
|
||||
<param name="format"></param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:ryCommon.VarExtension.ToNString(System.Double)">
|
||||
<summary>
|
||||
将数字转换成字符串,小数点末尾后面不包含0
|
||||
|
@ -1204,6 +1212,14 @@
|
|||
<param name="input"></param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:ryCommon.VarExtension.ToNString(System.Double,System.String)">
|
||||
<summary>
|
||||
将数字转换成字符串,小数点末尾后面不包含0
|
||||
</summary>
|
||||
<param name="input"></param>
|
||||
<param name="format"></param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:ryCommon.VarExtension.ToInt(System.Object)">
|
||||
<summary>
|
||||
将指定类型转换成整型
|
||||
|
@ -1262,23 +1278,61 @@
|
|||
<param name="input"></param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:ryCommon.VarExtension.IsInTime(System.DateTime,System.Int32,System.Int32)">
|
||||
<summary>
|
||||
判断时间是否在指定时间上
|
||||
</summary>
|
||||
<param name="input"></param>
|
||||
<param name="Hour"></param>
|
||||
<param name="Minute"></param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:ryCommon.VarExtension.IsInTime(System.DateTime,System.Int32,System.Int32,System.Int32)">
|
||||
<summary>
|
||||
判断时间是否在指定时间上
|
||||
</summary>
|
||||
<param name="input"></param>
|
||||
<param name="Hour"></param>
|
||||
<param name="Minute"></param>
|
||||
<param name="Second"></param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:ryCommon.VarExtension.IsInDay(System.DateTime,System.Int32,System.Int32)">
|
||||
<summary>
|
||||
判断时间是否在指定日期
|
||||
</summary>
|
||||
<param name="input"></param>
|
||||
<param name="Month"></param>
|
||||
<param name="Day"></param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:ryCommon.VarExtension.IsInDay(System.DateTime,System.Int32,System.Int32,System.Int32)">
|
||||
<summary>
|
||||
判断时间是否在指定日期
|
||||
</summary>
|
||||
<param name="input"></param>
|
||||
<param name="Year"></param>
|
||||
<param name="Month"></param>
|
||||
<param name="Day"></param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:ryCommon.VarExtension.ToDateTimeStr(System.DateTime)">
|
||||
<summary>
|
||||
转换DateTime类型到日期时间字符串
|
||||
转换DateTime类型到日期时间字符串(例如 2000-01-01 08:08:08)
|
||||
</summary>
|
||||
<param name="input"></param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:ryCommon.VarExtension.ToDateStr(System.DateTime)">
|
||||
<summary>
|
||||
转换DateTime类型到日期字符串
|
||||
转换DateTime类型到日期字符串(例如 2000-01-01)
|
||||
</summary>
|
||||
<param name="input"></param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:ryCommon.VarExtension.ToDateWeekStr(System.DateTime)">
|
||||
<summary>
|
||||
转换DateTime类型到日期星期字符串
|
||||
转换DateTime类型到日期星期字符串(例如 2000-01-01 星期六)
|
||||
</summary>
|
||||
<param name="input"></param>
|
||||
<returns></returns>
|
||||
|
@ -1449,6 +1503,68 @@
|
|||
<param name="input"></param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:ryCommon.VarExtension.Get(System.Tuple{System.String,System.Collections.Generic.IEnumerable{System.Collections.Generic.KeyValuePair{System.String,System.String}}},System.String,System.String)">
|
||||
<summary>
|
||||
根据表单字段名,获取对应的值
|
||||
</summary>
|
||||
<param name="input"></param>
|
||||
<param name="Name"></param>
|
||||
<param name="defValue"></param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:ryCommon.VarExtension.Get(System.Tuple{System.String,System.Collections.Generic.IEnumerable{System.Collections.Generic.KeyValuePair{System.String,System.String}}},System.String)">
|
||||
<summary>
|
||||
根据表单字段名,获取对应的值
|
||||
</summary>
|
||||
<param name="input"></param>
|
||||
<param name="Name"></param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:ryCommon.VarExtension.Get(System.Tuple{System.String,System.Collections.Generic.IEnumerable{System.Collections.Generic.KeyValuePair{System.String,System.String}}},System.String,System.Int32)">
|
||||
<summary>
|
||||
根据表单字段名,获取对应的值
|
||||
</summary>
|
||||
<param name="input"></param>
|
||||
<param name="Name"></param>
|
||||
<param name="defValue"></param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:ryCommon.VarExtension.Get(System.Tuple{System.String,System.Collections.Generic.IEnumerable{System.Collections.Generic.KeyValuePair{System.String,System.String}}},System.String,System.Int64)">
|
||||
<summary>
|
||||
根据表单字段名,获取对应的值
|
||||
</summary>
|
||||
<param name="input"></param>
|
||||
<param name="Name"></param>
|
||||
<param name="defValue"></param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:ryCommon.VarExtension.Get(System.Tuple{System.String,System.Collections.Generic.IEnumerable{System.Collections.Generic.KeyValuePair{System.String,System.String}}},System.String,System.Decimal)">
|
||||
<summary>
|
||||
根据表单字段名,获取对应的值
|
||||
</summary>
|
||||
<param name="input"></param>
|
||||
<param name="Name"></param>
|
||||
<param name="defValue"></param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:ryCommon.VarExtension.Get(System.Tuple{System.String,System.Collections.Generic.IEnumerable{System.Collections.Generic.KeyValuePair{System.String,System.String}}},System.String,System.Double)">
|
||||
<summary>
|
||||
根据表单字段名,获取对应的值
|
||||
</summary>
|
||||
<param name="input"></param>
|
||||
<param name="Name"></param>
|
||||
<param name="defValue"></param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:ryCommon.VarExtension.Get(System.Tuple{System.String,System.Collections.Generic.IEnumerable{System.Collections.Generic.KeyValuePair{System.String,System.String}}},System.String,System.Boolean)">
|
||||
<summary>
|
||||
根据表单字段名,获取对应的值
|
||||
</summary>
|
||||
<param name="input"></param>
|
||||
<param name="Name"></param>
|
||||
<param name="defValue"></param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="T:ryCommon.RySoft">
|
||||
<summary>
|
||||
文件信息
|
||||
|
@ -1498,6 +1614,88 @@
|
|||
</summary>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="T:ryCommon.BigFileOp">
|
||||
<summary>
|
||||
大文件与批量文件操作类,支持中途取消操作,本类需要实例化操作
|
||||
</summary>
|
||||
</member>
|
||||
<member name="T:ryCommon.BigFileOp.TranProgressHandler">
|
||||
<summary>
|
||||
传输进度
|
||||
</summary>
|
||||
<param name="curValue">当前传输完成的值</param>
|
||||
<param name="totalValue">全部值,为-1表示无法获取</param>
|
||||
<param name="percent">当前传输的百分比,为-1表示无法获取</param>
|
||||
</member>
|
||||
<member name="E:ryCommon.BigFileOp.OnProgress">
|
||||
<summary>
|
||||
传输进度
|
||||
</summary>
|
||||
</member>
|
||||
<member name="E:ryCommon.BigFileOp.OnCanel">
|
||||
<summary>
|
||||
取消事件
|
||||
</summary>
|
||||
</member>
|
||||
<member name="M:ryCommon.BigFileOp.CopyBigFile(System.String,System.String)">
|
||||
<summary>
|
||||
大文件按流复制文件,支持自动创建目标文件夹。 true:复制成功 false:复制失败
|
||||
</summary>
|
||||
<param name="soucrePath">原始文件路径</param>
|
||||
<param name="targetPath">复制目标文件路径</param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:ryCommon.BigFileOp.CopyFolder(System.String,System.String)">
|
||||
<summary>
|
||||
复制文件夹到目标文件夹,不支持进度事件,支持中途取消
|
||||
</summary>
|
||||
<param name="fromDir">源文件夹</param>
|
||||
<param name="ToDir">目标文件夹</param>
|
||||
<returns>返回复制操作是否成功的标识,成功返回0,负数表示复制失败的文件数量。1表示源文件夹不存在</returns>
|
||||
</member>
|
||||
<member name="M:ryCommon.BigFileOp.CopyFolderByProgress(System.String,System.String)">
|
||||
<summary>
|
||||
复制文件夹到目标文件夹,支持进度事件,支持中途取消
|
||||
</summary>
|
||||
<param name="fromDir">源文件夹</param>
|
||||
<param name="ToDir">目标文件夹</param>
|
||||
<returns>返回复制操作是否成功的标识,成功返回0,负数表示复制失败的文件数量。1表示源文件夹不存在</returns>
|
||||
</member>
|
||||
<member name="M:ryCommon.BigFileOp.CopyFolder(System.String,System.String,System.Int32,System.Int32,System.Int32@)">
|
||||
<summary>
|
||||
复制文件夹到目标文件夹,支持中途取消
|
||||
</summary>
|
||||
<param name="fromDir">源文件夹</param>
|
||||
<param name="ToDir">目标文件夹</param>
|
||||
<param name="StartCount">初始的文件数量</param>
|
||||
<param name="TotalCount">总数量,如果不计算,则使用-1</param>
|
||||
<param name="Count">操作的数量,包含成功的和失败的</param>
|
||||
<returns>返回复制操作是否成功的标识,成功返回0,负数表示复制失败的文件数量。1表示源文件夹不存在</returns>
|
||||
</member>
|
||||
<member name="M:ryCommon.BigFileOp.GetFilesCount(System.String)">
|
||||
<summary>
|
||||
获取文件夹中的文件数量
|
||||
</summary>
|
||||
<param name="Dir">文件夹路径</param>
|
||||
<returns>返回文件数量,中途取消则返回-1</returns>
|
||||
</member>
|
||||
<member name="M:ryCommon.BigFileOp.GetFolderSize(System.String)">
|
||||
<summary>
|
||||
获取文件夹的大小
|
||||
</summary>
|
||||
<param name="Dir">文件夹路径</param>
|
||||
<returns>返回文件数量,中途取消则返回-1</returns>
|
||||
</member>
|
||||
<member name="M:ryCommon.BigFileOp.AddFileToFolder(System.String,System.String,System.Boolean,System.Boolean@)">
|
||||
<summary>
|
||||
添加文件到指定文件夹,会进行自动重命名,并返回重命名后的文件名(含路径)
|
||||
</summary>
|
||||
<param name="filepath">要添加的文件路径</param>
|
||||
<param name="toFolder">要添加到的文件夹</param>
|
||||
<param name="RenameByTime">是否根据时间进行重命名</param>
|
||||
<param name="OK">返回是否成功执行</param>
|
||||
<returns>成功执行则返回路径,否则返回空</returns>
|
||||
</member>
|
||||
<member name="T:ryCommon.Hosts">
|
||||
<summary>
|
||||
Hosts操作类
|
||||
|
@ -1876,11 +2074,11 @@
|
|||
</member>
|
||||
<member name="M:ryCommon.RyFiles.CopyFolder(System.String,System.String)">
|
||||
<summary>
|
||||
复制文件夹到目标文件夹
|
||||
复制文件夹到目标文件夹(从3.0.2205.2601版本起已更换实现底层)
|
||||
</summary>
|
||||
<param name="fromDir">源文件夹</param>
|
||||
<param name="ToDir">目标文件夹</param>
|
||||
<returns>返回移动操作是否成功的标识,成功返回0,负数表示复制失败的文件数量。1表示源文件夹不存在</returns>
|
||||
<returns>返回复制操作是否成功的标识,成功返回0,负数表示复制失败的文件数量。1表示源文件夹不存在</returns>
|
||||
</member>
|
||||
<member name="M:ryCommon.RyFiles.ReNameFile(System.String,System.String,System.Boolean,System.String@)">
|
||||
<summary>
|
||||
|
@ -3042,6 +3240,12 @@
|
|||
</summary>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:ryCommon.RyForm.GetForegroundWindow">
|
||||
<summary>
|
||||
获取当前前台的窗口句柄
|
||||
</summary>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:ryCommon.RyForm.SetActiveWindow(System.IntPtr)">
|
||||
<summary>
|
||||
设置为当前活动窗口
|
||||
|
@ -3122,6 +3326,59 @@
|
|||
<param name="Path"></param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:ryCommon.RyRegedit.DelKey(Microsoft.Win32.RegistryHive,Microsoft.Win32.RegistryView,System.String,System.String)">
|
||||
<summary>
|
||||
删除注册表键(如果存在子键,子键将一并被删除)
|
||||
</summary>
|
||||
<param name="_RegRoot"></param>
|
||||
<param name="_UseSystemBit"></param>
|
||||
<param name="Path"></param>
|
||||
<param name="KeyName"></param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:ryCommon.RyRegedit.DelValue(Microsoft.Win32.RegistryHive,Microsoft.Win32.RegistryView,System.String,System.String)">
|
||||
<summary>
|
||||
删除注册表键值
|
||||
</summary>
|
||||
<param name="_RegRoot"></param>
|
||||
<param name="_UseSystemBit"></param>
|
||||
<param name="Path"></param>
|
||||
<param name="ValueName"></param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:ryCommon.RyRegedit.GetValue(Microsoft.Win32.RegistryHive,Microsoft.Win32.RegistryView,System.String,System.String,System.String)">
|
||||
<summary>
|
||||
获取注册表键值
|
||||
</summary>
|
||||
<param name="_RegRoot"></param>
|
||||
<param name="_UseSystemBit"></param>
|
||||
<param name="Path"></param>
|
||||
<param name="ValueName"></param>
|
||||
<param name="defValue"></param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:ryCommon.RyRegedit.SetValue(Microsoft.Win32.RegistryHive,Microsoft.Win32.RegistryView,System.String,System.String,System.String)">
|
||||
<summary>
|
||||
设置注册表键值
|
||||
</summary>
|
||||
<param name="_RegRoot"></param>
|
||||
<param name="_UseSystemBit"></param>
|
||||
<param name="Path"></param>
|
||||
<param name="ValueName"></param>
|
||||
<param name="Value"></param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:ryCommon.RyRegedit.SetValue(Microsoft.Win32.RegistryHive,Microsoft.Win32.RegistryView,System.String,System.String,System.UInt32)">
|
||||
<summary>
|
||||
设置注册表键值
|
||||
</summary>
|
||||
<param name="_RegRoot"></param>
|
||||
<param name="_UseSystemBit"></param>
|
||||
<param name="Path"></param>
|
||||
<param name="ValueName"></param>
|
||||
<param name="Value"></param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:ryCommon.RyRegedit.SetAutoRun(System.Boolean,System.String,System.String)">
|
||||
<summary>
|
||||
设置是否开机启动
|
||||
|
@ -8488,6 +8745,120 @@
|
|||
CookieCollection格式的Cookie集合同时也返回String类型的cookie
|
||||
</summary>
|
||||
</member>
|
||||
<member name="T:RyWeb.HttpServer">
|
||||
<summary>
|
||||
Http服务器类
|
||||
</summary>
|
||||
</member>
|
||||
<member name="T:RyWeb.HttpServer.HttpRequestHandler">
|
||||
<summary>
|
||||
|
||||
</summary>
|
||||
<param name="sender"></param>
|
||||
<param name="e"></param>
|
||||
</member>
|
||||
<member name="E:RyWeb.HttpServer.OnHandleGETRequest">
|
||||
<summary>
|
||||
当收到Get事件时激发
|
||||
</summary>
|
||||
</member>
|
||||
<member name="E:RyWeb.HttpServer.OnHandlePOSTRequest">
|
||||
<summary>
|
||||
当收到Post事件时激发
|
||||
</summary>
|
||||
</member>
|
||||
<member name="P:RyWeb.HttpServer.ListenerHost">
|
||||
<summary>
|
||||
监听的主机,默认是localhost
|
||||
</summary>
|
||||
</member>
|
||||
<member name="P:RyWeb.HttpServer.ErrorMessage">
|
||||
<summary>
|
||||
最后一次错误信息
|
||||
</summary>
|
||||
</member>
|
||||
<member name="M:RyWeb.HttpServer.#ctor(System.Int32)">
|
||||
<summary>
|
||||
在此端口建立Http服务类
|
||||
</summary>
|
||||
<param name="port">端口号</param>
|
||||
</member>
|
||||
<member name="M:RyWeb.HttpServer.IsRunning">
|
||||
<summary>
|
||||
|
||||
</summary>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:RyWeb.HttpServer.Start">
|
||||
<summary>
|
||||
开始服务
|
||||
</summary>
|
||||
</member>
|
||||
<member name="M:RyWeb.HttpServer.Exit">
|
||||
<summary>
|
||||
退出服务
|
||||
</summary>
|
||||
</member>
|
||||
<member name="M:RyWeb.HttpServer.Finalize">
|
||||
<summary>
|
||||
|
||||
</summary>
|
||||
</member>
|
||||
<member name="T:RyWeb.HttpRequest">
|
||||
<summary>
|
||||
|
||||
</summary>
|
||||
</member>
|
||||
<member name="P:RyWeb.HttpRequest.Url">
|
||||
<summary>
|
||||
|
||||
</summary>
|
||||
</member>
|
||||
<member name="P:RyWeb.HttpRequest.PostDataStr">
|
||||
<summary>
|
||||
|
||||
</summary>
|
||||
</member>
|
||||
<member name="P:RyWeb.HttpRequest.PostData">
|
||||
<summary>
|
||||
|
||||
</summary>
|
||||
</member>
|
||||
<member name="M:RyWeb.HttpRequest.GetPostData(System.String)">
|
||||
<summary>
|
||||
|
||||
</summary>
|
||||
</member>
|
||||
<member name="M:RyWeb.HttpRequest.GetPostData(System.String,System.String)">
|
||||
<summary>
|
||||
|
||||
</summary>
|
||||
</member>
|
||||
<member name="M:RyWeb.HttpRequest.GetPostData(System.String,System.Int32)">
|
||||
<summary>
|
||||
|
||||
</summary>
|
||||
</member>
|
||||
<member name="M:RyWeb.HttpRequest.GetPostData(System.String,System.Boolean)">
|
||||
<summary>
|
||||
|
||||
</summary>
|
||||
</member>
|
||||
<member name="P:RyWeb.HttpRequest.UrlReferrer">
|
||||
<summary>
|
||||
|
||||
</summary>
|
||||
</member>
|
||||
<member name="P:RyWeb.HttpRequest.ReturnHtml">
|
||||
<summary>
|
||||
|
||||
</summary>
|
||||
</member>
|
||||
<member name="P:RyWeb.HttpRequest.StatusCode">
|
||||
<summary>
|
||||
|
||||
</summary>
|
||||
</member>
|
||||
<member name="T:RyWeb.QuickWeb">
|
||||
<summary>
|
||||
|
||||
|
@ -8729,6 +9100,24 @@
|
|||
<param name="str"></param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:RyWeb.WebDecode.UrlToData(System.String)">
|
||||
<summary>
|
||||
将url里的字段分解成表单字典
|
||||
</summary>
|
||||
<param name="url"></param>
|
||||
<returns></returns>
|
||||
<exception cref="T:System.ArgumentNullException"></exception>
|
||||
<exception cref="T:System.FormatException"></exception>
|
||||
</member>
|
||||
<member name="M:RyWeb.WebDecode.GetParam(System.Tuple{System.String,System.Collections.Generic.IEnumerable{System.Collections.Generic.KeyValuePair{System.String,System.String}}},System.String,System.String)">
|
||||
<summary>
|
||||
根据表单字段名获取值
|
||||
</summary>
|
||||
<param name="decoded"></param>
|
||||
<param name="name"></param>
|
||||
<param name="defValue"></param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="T:rySafe.AES">
|
||||
<summary>
|
||||
AES加密解密类
|
||||
|
|
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
|
@ -8697,6 +8697,11 @@
|
|||
标题栏图标尺寸
|
||||
</summary>
|
||||
</member>
|
||||
<member name="P:MGdu.WinFormUI.GMForm.GMFormIcon">
|
||||
<summary>
|
||||
窗体图标,如果设置本项,将不使用Icon属性
|
||||
</summary>
|
||||
</member>
|
||||
<member name="P:MGdu.WinFormUI.GMForm.IconLeftMargin">
|
||||
<summary>
|
||||
标题栏图标与窗体左边框的距离
|
||||
|
@ -16148,6 +16153,11 @@
|
|||
将给定对象的文本和HTML表示复制到剪贴板上。
|
||||
</summary>
|
||||
</member>
|
||||
<member name="M:BrightIdeasSoftware.ObjectListView.CopyObjectsToClipboard">
|
||||
<summary>
|
||||
将所有对象的文本和HTML表示复制到剪贴板上。
|
||||
</summary>
|
||||
</member>
|
||||
<member name="M:BrightIdeasSoftware.ObjectListView.ObjectsToHtml(System.Collections.IList)">
|
||||
<summary>
|
||||
返回给定对象的html表示形式
|
||||
|
|
Binary file not shown.
Binary file not shown.
Binary file not shown.
|
@ -1197,6 +1197,14 @@
|
|||
<param name="input"></param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:ryCommon.VarExtension.ToNString(System.Decimal,System.String)">
|
||||
<summary>
|
||||
将数字转换成字符串,小数点末尾后面不包含0
|
||||
</summary>
|
||||
<param name="input"></param>
|
||||
<param name="format"></param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:ryCommon.VarExtension.ToNString(System.Double)">
|
||||
<summary>
|
||||
将数字转换成字符串,小数点末尾后面不包含0
|
||||
|
@ -1204,6 +1212,14 @@
|
|||
<param name="input"></param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:ryCommon.VarExtension.ToNString(System.Double,System.String)">
|
||||
<summary>
|
||||
将数字转换成字符串,小数点末尾后面不包含0
|
||||
</summary>
|
||||
<param name="input"></param>
|
||||
<param name="format"></param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:ryCommon.VarExtension.ToInt(System.Object)">
|
||||
<summary>
|
||||
将指定类型转换成整型
|
||||
|
@ -1262,23 +1278,61 @@
|
|||
<param name="input"></param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:ryCommon.VarExtension.IsInTime(System.DateTime,System.Int32,System.Int32)">
|
||||
<summary>
|
||||
判断时间是否在指定时间上
|
||||
</summary>
|
||||
<param name="input"></param>
|
||||
<param name="Hour"></param>
|
||||
<param name="Minute"></param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:ryCommon.VarExtension.IsInTime(System.DateTime,System.Int32,System.Int32,System.Int32)">
|
||||
<summary>
|
||||
判断时间是否在指定时间上
|
||||
</summary>
|
||||
<param name="input"></param>
|
||||
<param name="Hour"></param>
|
||||
<param name="Minute"></param>
|
||||
<param name="Second"></param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:ryCommon.VarExtension.IsInDay(System.DateTime,System.Int32,System.Int32)">
|
||||
<summary>
|
||||
判断时间是否在指定日期
|
||||
</summary>
|
||||
<param name="input"></param>
|
||||
<param name="Month"></param>
|
||||
<param name="Day"></param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:ryCommon.VarExtension.IsInDay(System.DateTime,System.Int32,System.Int32,System.Int32)">
|
||||
<summary>
|
||||
判断时间是否在指定日期
|
||||
</summary>
|
||||
<param name="input"></param>
|
||||
<param name="Year"></param>
|
||||
<param name="Month"></param>
|
||||
<param name="Day"></param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:ryCommon.VarExtension.ToDateTimeStr(System.DateTime)">
|
||||
<summary>
|
||||
转换DateTime类型到日期时间字符串
|
||||
转换DateTime类型到日期时间字符串(例如 2000-01-01 08:08:08)
|
||||
</summary>
|
||||
<param name="input"></param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:ryCommon.VarExtension.ToDateStr(System.DateTime)">
|
||||
<summary>
|
||||
转换DateTime类型到日期字符串
|
||||
转换DateTime类型到日期字符串(例如 2000-01-01)
|
||||
</summary>
|
||||
<param name="input"></param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:ryCommon.VarExtension.ToDateWeekStr(System.DateTime)">
|
||||
<summary>
|
||||
转换DateTime类型到日期星期字符串
|
||||
转换DateTime类型到日期星期字符串(例如 2000-01-01 星期六)
|
||||
</summary>
|
||||
<param name="input"></param>
|
||||
<returns></returns>
|
||||
|
@ -1449,6 +1503,68 @@
|
|||
<param name="input"></param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:ryCommon.VarExtension.Get(System.Tuple{System.String,System.Collections.Generic.IEnumerable{System.Collections.Generic.KeyValuePair{System.String,System.String}}},System.String,System.String)">
|
||||
<summary>
|
||||
根据表单字段名,获取对应的值
|
||||
</summary>
|
||||
<param name="input"></param>
|
||||
<param name="Name"></param>
|
||||
<param name="defValue"></param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:ryCommon.VarExtension.Get(System.Tuple{System.String,System.Collections.Generic.IEnumerable{System.Collections.Generic.KeyValuePair{System.String,System.String}}},System.String)">
|
||||
<summary>
|
||||
根据表单字段名,获取对应的值
|
||||
</summary>
|
||||
<param name="input"></param>
|
||||
<param name="Name"></param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:ryCommon.VarExtension.Get(System.Tuple{System.String,System.Collections.Generic.IEnumerable{System.Collections.Generic.KeyValuePair{System.String,System.String}}},System.String,System.Int32)">
|
||||
<summary>
|
||||
根据表单字段名,获取对应的值
|
||||
</summary>
|
||||
<param name="input"></param>
|
||||
<param name="Name"></param>
|
||||
<param name="defValue"></param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:ryCommon.VarExtension.Get(System.Tuple{System.String,System.Collections.Generic.IEnumerable{System.Collections.Generic.KeyValuePair{System.String,System.String}}},System.String,System.Int64)">
|
||||
<summary>
|
||||
根据表单字段名,获取对应的值
|
||||
</summary>
|
||||
<param name="input"></param>
|
||||
<param name="Name"></param>
|
||||
<param name="defValue"></param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:ryCommon.VarExtension.Get(System.Tuple{System.String,System.Collections.Generic.IEnumerable{System.Collections.Generic.KeyValuePair{System.String,System.String}}},System.String,System.Decimal)">
|
||||
<summary>
|
||||
根据表单字段名,获取对应的值
|
||||
</summary>
|
||||
<param name="input"></param>
|
||||
<param name="Name"></param>
|
||||
<param name="defValue"></param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:ryCommon.VarExtension.Get(System.Tuple{System.String,System.Collections.Generic.IEnumerable{System.Collections.Generic.KeyValuePair{System.String,System.String}}},System.String,System.Double)">
|
||||
<summary>
|
||||
根据表单字段名,获取对应的值
|
||||
</summary>
|
||||
<param name="input"></param>
|
||||
<param name="Name"></param>
|
||||
<param name="defValue"></param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:ryCommon.VarExtension.Get(System.Tuple{System.String,System.Collections.Generic.IEnumerable{System.Collections.Generic.KeyValuePair{System.String,System.String}}},System.String,System.Boolean)">
|
||||
<summary>
|
||||
根据表单字段名,获取对应的值
|
||||
</summary>
|
||||
<param name="input"></param>
|
||||
<param name="Name"></param>
|
||||
<param name="defValue"></param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="T:ryCommon.RySoft">
|
||||
<summary>
|
||||
文件信息
|
||||
|
@ -1498,6 +1614,88 @@
|
|||
</summary>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="T:ryCommon.BigFileOp">
|
||||
<summary>
|
||||
大文件与批量文件操作类,支持中途取消操作,本类需要实例化操作
|
||||
</summary>
|
||||
</member>
|
||||
<member name="T:ryCommon.BigFileOp.TranProgressHandler">
|
||||
<summary>
|
||||
传输进度
|
||||
</summary>
|
||||
<param name="curValue">当前传输完成的值</param>
|
||||
<param name="totalValue">全部值,为-1表示无法获取</param>
|
||||
<param name="percent">当前传输的百分比,为-1表示无法获取</param>
|
||||
</member>
|
||||
<member name="E:ryCommon.BigFileOp.OnProgress">
|
||||
<summary>
|
||||
传输进度
|
||||
</summary>
|
||||
</member>
|
||||
<member name="E:ryCommon.BigFileOp.OnCanel">
|
||||
<summary>
|
||||
取消事件
|
||||
</summary>
|
||||
</member>
|
||||
<member name="M:ryCommon.BigFileOp.CopyBigFile(System.String,System.String)">
|
||||
<summary>
|
||||
大文件按流复制文件,支持自动创建目标文件夹。 true:复制成功 false:复制失败
|
||||
</summary>
|
||||
<param name="soucrePath">原始文件路径</param>
|
||||
<param name="targetPath">复制目标文件路径</param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:ryCommon.BigFileOp.CopyFolder(System.String,System.String)">
|
||||
<summary>
|
||||
复制文件夹到目标文件夹,不支持进度事件,支持中途取消
|
||||
</summary>
|
||||
<param name="fromDir">源文件夹</param>
|
||||
<param name="ToDir">目标文件夹</param>
|
||||
<returns>返回复制操作是否成功的标识,成功返回0,负数表示复制失败的文件数量。1表示源文件夹不存在</returns>
|
||||
</member>
|
||||
<member name="M:ryCommon.BigFileOp.CopyFolderByProgress(System.String,System.String)">
|
||||
<summary>
|
||||
复制文件夹到目标文件夹,支持进度事件,支持中途取消
|
||||
</summary>
|
||||
<param name="fromDir">源文件夹</param>
|
||||
<param name="ToDir">目标文件夹</param>
|
||||
<returns>返回复制操作是否成功的标识,成功返回0,负数表示复制失败的文件数量。1表示源文件夹不存在</returns>
|
||||
</member>
|
||||
<member name="M:ryCommon.BigFileOp.CopyFolder(System.String,System.String,System.Int32,System.Int32,System.Int32@)">
|
||||
<summary>
|
||||
复制文件夹到目标文件夹,支持中途取消
|
||||
</summary>
|
||||
<param name="fromDir">源文件夹</param>
|
||||
<param name="ToDir">目标文件夹</param>
|
||||
<param name="StartCount">初始的文件数量</param>
|
||||
<param name="TotalCount">总数量,如果不计算,则使用-1</param>
|
||||
<param name="Count">操作的数量,包含成功的和失败的</param>
|
||||
<returns>返回复制操作是否成功的标识,成功返回0,负数表示复制失败的文件数量。1表示源文件夹不存在</returns>
|
||||
</member>
|
||||
<member name="M:ryCommon.BigFileOp.GetFilesCount(System.String)">
|
||||
<summary>
|
||||
获取文件夹中的文件数量
|
||||
</summary>
|
||||
<param name="Dir">文件夹路径</param>
|
||||
<returns>返回文件数量,中途取消则返回-1</returns>
|
||||
</member>
|
||||
<member name="M:ryCommon.BigFileOp.GetFolderSize(System.String)">
|
||||
<summary>
|
||||
获取文件夹的大小
|
||||
</summary>
|
||||
<param name="Dir">文件夹路径</param>
|
||||
<returns>返回文件数量,中途取消则返回-1</returns>
|
||||
</member>
|
||||
<member name="M:ryCommon.BigFileOp.AddFileToFolder(System.String,System.String,System.Boolean,System.Boolean@)">
|
||||
<summary>
|
||||
添加文件到指定文件夹,会进行自动重命名,并返回重命名后的文件名(含路径)
|
||||
</summary>
|
||||
<param name="filepath">要添加的文件路径</param>
|
||||
<param name="toFolder">要添加到的文件夹</param>
|
||||
<param name="RenameByTime">是否根据时间进行重命名</param>
|
||||
<param name="OK">返回是否成功执行</param>
|
||||
<returns>成功执行则返回路径,否则返回空</returns>
|
||||
</member>
|
||||
<member name="T:ryCommon.Hosts">
|
||||
<summary>
|
||||
Hosts操作类
|
||||
|
@ -1876,11 +2074,11 @@
|
|||
</member>
|
||||
<member name="M:ryCommon.RyFiles.CopyFolder(System.String,System.String)">
|
||||
<summary>
|
||||
复制文件夹到目标文件夹
|
||||
复制文件夹到目标文件夹(从3.0.2205.2601版本起已更换实现底层)
|
||||
</summary>
|
||||
<param name="fromDir">源文件夹</param>
|
||||
<param name="ToDir">目标文件夹</param>
|
||||
<returns>返回移动操作是否成功的标识,成功返回0,负数表示复制失败的文件数量。1表示源文件夹不存在</returns>
|
||||
<returns>返回复制操作是否成功的标识,成功返回0,负数表示复制失败的文件数量。1表示源文件夹不存在</returns>
|
||||
</member>
|
||||
<member name="M:ryCommon.RyFiles.ReNameFile(System.String,System.String,System.Boolean,System.String@)">
|
||||
<summary>
|
||||
|
@ -3042,6 +3240,12 @@
|
|||
</summary>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:ryCommon.RyForm.GetForegroundWindow">
|
||||
<summary>
|
||||
获取当前前台的窗口句柄
|
||||
</summary>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:ryCommon.RyForm.SetActiveWindow(System.IntPtr)">
|
||||
<summary>
|
||||
设置为当前活动窗口
|
||||
|
@ -3122,6 +3326,59 @@
|
|||
<param name="Path"></param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:ryCommon.RyRegedit.DelKey(Microsoft.Win32.RegistryHive,Microsoft.Win32.RegistryView,System.String,System.String)">
|
||||
<summary>
|
||||
删除注册表键(如果存在子键,子键将一并被删除)
|
||||
</summary>
|
||||
<param name="_RegRoot"></param>
|
||||
<param name="_UseSystemBit"></param>
|
||||
<param name="Path"></param>
|
||||
<param name="KeyName"></param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:ryCommon.RyRegedit.DelValue(Microsoft.Win32.RegistryHive,Microsoft.Win32.RegistryView,System.String,System.String)">
|
||||
<summary>
|
||||
删除注册表键值
|
||||
</summary>
|
||||
<param name="_RegRoot"></param>
|
||||
<param name="_UseSystemBit"></param>
|
||||
<param name="Path"></param>
|
||||
<param name="ValueName"></param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:ryCommon.RyRegedit.GetValue(Microsoft.Win32.RegistryHive,Microsoft.Win32.RegistryView,System.String,System.String,System.String)">
|
||||
<summary>
|
||||
获取注册表键值
|
||||
</summary>
|
||||
<param name="_RegRoot"></param>
|
||||
<param name="_UseSystemBit"></param>
|
||||
<param name="Path"></param>
|
||||
<param name="ValueName"></param>
|
||||
<param name="defValue"></param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:ryCommon.RyRegedit.SetValue(Microsoft.Win32.RegistryHive,Microsoft.Win32.RegistryView,System.String,System.String,System.String)">
|
||||
<summary>
|
||||
设置注册表键值
|
||||
</summary>
|
||||
<param name="_RegRoot"></param>
|
||||
<param name="_UseSystemBit"></param>
|
||||
<param name="Path"></param>
|
||||
<param name="ValueName"></param>
|
||||
<param name="Value"></param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:ryCommon.RyRegedit.SetValue(Microsoft.Win32.RegistryHive,Microsoft.Win32.RegistryView,System.String,System.String,System.UInt32)">
|
||||
<summary>
|
||||
设置注册表键值
|
||||
</summary>
|
||||
<param name="_RegRoot"></param>
|
||||
<param name="_UseSystemBit"></param>
|
||||
<param name="Path"></param>
|
||||
<param name="ValueName"></param>
|
||||
<param name="Value"></param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:ryCommon.RyRegedit.SetAutoRun(System.Boolean,System.String,System.String)">
|
||||
<summary>
|
||||
设置是否开机启动
|
||||
|
@ -8461,6 +8718,120 @@
|
|||
CookieCollection格式的Cookie集合同时也返回String类型的cookie
|
||||
</summary>
|
||||
</member>
|
||||
<member name="T:RyWeb.HttpServer">
|
||||
<summary>
|
||||
Http服务器类
|
||||
</summary>
|
||||
</member>
|
||||
<member name="T:RyWeb.HttpServer.HttpRequestHandler">
|
||||
<summary>
|
||||
|
||||
</summary>
|
||||
<param name="sender"></param>
|
||||
<param name="e"></param>
|
||||
</member>
|
||||
<member name="E:RyWeb.HttpServer.OnHandleGETRequest">
|
||||
<summary>
|
||||
当收到Get事件时激发
|
||||
</summary>
|
||||
</member>
|
||||
<member name="E:RyWeb.HttpServer.OnHandlePOSTRequest">
|
||||
<summary>
|
||||
当收到Post事件时激发
|
||||
</summary>
|
||||
</member>
|
||||
<member name="P:RyWeb.HttpServer.ListenerHost">
|
||||
<summary>
|
||||
监听的主机,默认是localhost
|
||||
</summary>
|
||||
</member>
|
||||
<member name="P:RyWeb.HttpServer.ErrorMessage">
|
||||
<summary>
|
||||
最后一次错误信息
|
||||
</summary>
|
||||
</member>
|
||||
<member name="M:RyWeb.HttpServer.#ctor(System.Int32)">
|
||||
<summary>
|
||||
在此端口建立Http服务类
|
||||
</summary>
|
||||
<param name="port">端口号</param>
|
||||
</member>
|
||||
<member name="M:RyWeb.HttpServer.IsRunning">
|
||||
<summary>
|
||||
|
||||
</summary>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:RyWeb.HttpServer.Start">
|
||||
<summary>
|
||||
开始服务
|
||||
</summary>
|
||||
</member>
|
||||
<member name="M:RyWeb.HttpServer.Exit">
|
||||
<summary>
|
||||
退出服务
|
||||
</summary>
|
||||
</member>
|
||||
<member name="M:RyWeb.HttpServer.Finalize">
|
||||
<summary>
|
||||
|
||||
</summary>
|
||||
</member>
|
||||
<member name="T:RyWeb.HttpRequest">
|
||||
<summary>
|
||||
|
||||
</summary>
|
||||
</member>
|
||||
<member name="P:RyWeb.HttpRequest.Url">
|
||||
<summary>
|
||||
|
||||
</summary>
|
||||
</member>
|
||||
<member name="P:RyWeb.HttpRequest.PostDataStr">
|
||||
<summary>
|
||||
|
||||
</summary>
|
||||
</member>
|
||||
<member name="P:RyWeb.HttpRequest.PostData">
|
||||
<summary>
|
||||
|
||||
</summary>
|
||||
</member>
|
||||
<member name="M:RyWeb.HttpRequest.GetPostData(System.String)">
|
||||
<summary>
|
||||
|
||||
</summary>
|
||||
</member>
|
||||
<member name="M:RyWeb.HttpRequest.GetPostData(System.String,System.String)">
|
||||
<summary>
|
||||
|
||||
</summary>
|
||||
</member>
|
||||
<member name="M:RyWeb.HttpRequest.GetPostData(System.String,System.Int32)">
|
||||
<summary>
|
||||
|
||||
</summary>
|
||||
</member>
|
||||
<member name="M:RyWeb.HttpRequest.GetPostData(System.String,System.Boolean)">
|
||||
<summary>
|
||||
|
||||
</summary>
|
||||
</member>
|
||||
<member name="P:RyWeb.HttpRequest.UrlReferrer">
|
||||
<summary>
|
||||
|
||||
</summary>
|
||||
</member>
|
||||
<member name="P:RyWeb.HttpRequest.ReturnHtml">
|
||||
<summary>
|
||||
|
||||
</summary>
|
||||
</member>
|
||||
<member name="P:RyWeb.HttpRequest.StatusCode">
|
||||
<summary>
|
||||
|
||||
</summary>
|
||||
</member>
|
||||
<member name="T:RyWeb.QuickWeb">
|
||||
<summary>
|
||||
|
||||
|
@ -8702,6 +9073,24 @@
|
|||
<param name="str"></param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:RyWeb.WebDecode.UrlToData(System.String)">
|
||||
<summary>
|
||||
将url里的字段分解成表单字典
|
||||
</summary>
|
||||
<param name="url"></param>
|
||||
<returns></returns>
|
||||
<exception cref="T:System.ArgumentNullException"></exception>
|
||||
<exception cref="T:System.FormatException"></exception>
|
||||
</member>
|
||||
<member name="M:RyWeb.WebDecode.GetParam(System.Tuple{System.String,System.Collections.Generic.IEnumerable{System.Collections.Generic.KeyValuePair{System.String,System.String}}},System.String,System.String)">
|
||||
<summary>
|
||||
根据表单字段名获取值
|
||||
</summary>
|
||||
<param name="decoded"></param>
|
||||
<param name="name"></param>
|
||||
<param name="defValue"></param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="T:rySafe.AES">
|
||||
<summary>
|
||||
AES加密解密类
|
||||
|
|
Binary file not shown.
Binary file not shown.
Binary file not shown.
|
@ -8697,6 +8697,11 @@
|
|||
标题栏图标尺寸
|
||||
</summary>
|
||||
</member>
|
||||
<member name="P:MGdu.WinFormUI.GMForm.GMFormIcon">
|
||||
<summary>
|
||||
窗体图标,如果设置本项,将不使用Icon属性
|
||||
</summary>
|
||||
</member>
|
||||
<member name="P:MGdu.WinFormUI.GMForm.IconLeftMargin">
|
||||
<summary>
|
||||
标题栏图标与窗体左边框的距离
|
||||
|
@ -16148,6 +16153,11 @@
|
|||
将给定对象的文本和HTML表示复制到剪贴板上。
|
||||
</summary>
|
||||
</member>
|
||||
<member name="M:BrightIdeasSoftware.ObjectListView.CopyObjectsToClipboard">
|
||||
<summary>
|
||||
将所有对象的文本和HTML表示复制到剪贴板上。
|
||||
</summary>
|
||||
</member>
|
||||
<member name="M:BrightIdeasSoftware.ObjectListView.ObjectsToHtml(System.Collections.IList)">
|
||||
<summary>
|
||||
返回给定对象的html表示形式
|
||||
|
|
Binary file not shown.
Binary file not shown.
|
@ -1197,6 +1197,14 @@
|
|||
<param name="input"></param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:ryCommon.VarExtension.ToNString(System.Decimal,System.String)">
|
||||
<summary>
|
||||
将数字转换成字符串,小数点末尾后面不包含0
|
||||
</summary>
|
||||
<param name="input"></param>
|
||||
<param name="format"></param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:ryCommon.VarExtension.ToNString(System.Double)">
|
||||
<summary>
|
||||
将数字转换成字符串,小数点末尾后面不包含0
|
||||
|
@ -1204,6 +1212,14 @@
|
|||
<param name="input"></param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:ryCommon.VarExtension.ToNString(System.Double,System.String)">
|
||||
<summary>
|
||||
将数字转换成字符串,小数点末尾后面不包含0
|
||||
</summary>
|
||||
<param name="input"></param>
|
||||
<param name="format"></param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:ryCommon.VarExtension.ToInt(System.Object)">
|
||||
<summary>
|
||||
将指定类型转换成整型
|
||||
|
@ -1262,23 +1278,61 @@
|
|||
<param name="input"></param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:ryCommon.VarExtension.IsInTime(System.DateTime,System.Int32,System.Int32)">
|
||||
<summary>
|
||||
判断时间是否在指定时间上
|
||||
</summary>
|
||||
<param name="input"></param>
|
||||
<param name="Hour"></param>
|
||||
<param name="Minute"></param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:ryCommon.VarExtension.IsInTime(System.DateTime,System.Int32,System.Int32,System.Int32)">
|
||||
<summary>
|
||||
判断时间是否在指定时间上
|
||||
</summary>
|
||||
<param name="input"></param>
|
||||
<param name="Hour"></param>
|
||||
<param name="Minute"></param>
|
||||
<param name="Second"></param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:ryCommon.VarExtension.IsInDay(System.DateTime,System.Int32,System.Int32)">
|
||||
<summary>
|
||||
判断时间是否在指定日期
|
||||
</summary>
|
||||
<param name="input"></param>
|
||||
<param name="Month"></param>
|
||||
<param name="Day"></param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:ryCommon.VarExtension.IsInDay(System.DateTime,System.Int32,System.Int32,System.Int32)">
|
||||
<summary>
|
||||
判断时间是否在指定日期
|
||||
</summary>
|
||||
<param name="input"></param>
|
||||
<param name="Year"></param>
|
||||
<param name="Month"></param>
|
||||
<param name="Day"></param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:ryCommon.VarExtension.ToDateTimeStr(System.DateTime)">
|
||||
<summary>
|
||||
转换DateTime类型到日期时间字符串
|
||||
转换DateTime类型到日期时间字符串(例如 2000-01-01 08:08:08)
|
||||
</summary>
|
||||
<param name="input"></param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:ryCommon.VarExtension.ToDateStr(System.DateTime)">
|
||||
<summary>
|
||||
转换DateTime类型到日期字符串
|
||||
转换DateTime类型到日期字符串(例如 2000-01-01)
|
||||
</summary>
|
||||
<param name="input"></param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:ryCommon.VarExtension.ToDateWeekStr(System.DateTime)">
|
||||
<summary>
|
||||
转换DateTime类型到日期星期字符串
|
||||
转换DateTime类型到日期星期字符串(例如 2000-01-01 星期六)
|
||||
</summary>
|
||||
<param name="input"></param>
|
||||
<returns></returns>
|
||||
|
@ -1449,6 +1503,68 @@
|
|||
<param name="input"></param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:ryCommon.VarExtension.Get(System.Tuple{System.String,System.Collections.Generic.IEnumerable{System.Collections.Generic.KeyValuePair{System.String,System.String}}},System.String,System.String)">
|
||||
<summary>
|
||||
根据表单字段名,获取对应的值
|
||||
</summary>
|
||||
<param name="input"></param>
|
||||
<param name="Name"></param>
|
||||
<param name="defValue"></param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:ryCommon.VarExtension.Get(System.Tuple{System.String,System.Collections.Generic.IEnumerable{System.Collections.Generic.KeyValuePair{System.String,System.String}}},System.String)">
|
||||
<summary>
|
||||
根据表单字段名,获取对应的值
|
||||
</summary>
|
||||
<param name="input"></param>
|
||||
<param name="Name"></param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:ryCommon.VarExtension.Get(System.Tuple{System.String,System.Collections.Generic.IEnumerable{System.Collections.Generic.KeyValuePair{System.String,System.String}}},System.String,System.Int32)">
|
||||
<summary>
|
||||
根据表单字段名,获取对应的值
|
||||
</summary>
|
||||
<param name="input"></param>
|
||||
<param name="Name"></param>
|
||||
<param name="defValue"></param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:ryCommon.VarExtension.Get(System.Tuple{System.String,System.Collections.Generic.IEnumerable{System.Collections.Generic.KeyValuePair{System.String,System.String}}},System.String,System.Int64)">
|
||||
<summary>
|
||||
根据表单字段名,获取对应的值
|
||||
</summary>
|
||||
<param name="input"></param>
|
||||
<param name="Name"></param>
|
||||
<param name="defValue"></param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:ryCommon.VarExtension.Get(System.Tuple{System.String,System.Collections.Generic.IEnumerable{System.Collections.Generic.KeyValuePair{System.String,System.String}}},System.String,System.Decimal)">
|
||||
<summary>
|
||||
根据表单字段名,获取对应的值
|
||||
</summary>
|
||||
<param name="input"></param>
|
||||
<param name="Name"></param>
|
||||
<param name="defValue"></param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:ryCommon.VarExtension.Get(System.Tuple{System.String,System.Collections.Generic.IEnumerable{System.Collections.Generic.KeyValuePair{System.String,System.String}}},System.String,System.Double)">
|
||||
<summary>
|
||||
根据表单字段名,获取对应的值
|
||||
</summary>
|
||||
<param name="input"></param>
|
||||
<param name="Name"></param>
|
||||
<param name="defValue"></param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:ryCommon.VarExtension.Get(System.Tuple{System.String,System.Collections.Generic.IEnumerable{System.Collections.Generic.KeyValuePair{System.String,System.String}}},System.String,System.Boolean)">
|
||||
<summary>
|
||||
根据表单字段名,获取对应的值
|
||||
</summary>
|
||||
<param name="input"></param>
|
||||
<param name="Name"></param>
|
||||
<param name="defValue"></param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="T:ryCommon.RySoft">
|
||||
<summary>
|
||||
文件信息
|
||||
|
@ -1498,6 +1614,88 @@
|
|||
</summary>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="T:ryCommon.BigFileOp">
|
||||
<summary>
|
||||
大文件与批量文件操作类,支持中途取消操作,本类需要实例化操作
|
||||
</summary>
|
||||
</member>
|
||||
<member name="T:ryCommon.BigFileOp.TranProgressHandler">
|
||||
<summary>
|
||||
传输进度
|
||||
</summary>
|
||||
<param name="curValue">当前传输完成的值</param>
|
||||
<param name="totalValue">全部值,为-1表示无法获取</param>
|
||||
<param name="percent">当前传输的百分比,为-1表示无法获取</param>
|
||||
</member>
|
||||
<member name="E:ryCommon.BigFileOp.OnProgress">
|
||||
<summary>
|
||||
传输进度
|
||||
</summary>
|
||||
</member>
|
||||
<member name="E:ryCommon.BigFileOp.OnCanel">
|
||||
<summary>
|
||||
取消事件
|
||||
</summary>
|
||||
</member>
|
||||
<member name="M:ryCommon.BigFileOp.CopyBigFile(System.String,System.String)">
|
||||
<summary>
|
||||
大文件按流复制文件,支持自动创建目标文件夹。 true:复制成功 false:复制失败
|
||||
</summary>
|
||||
<param name="soucrePath">原始文件路径</param>
|
||||
<param name="targetPath">复制目标文件路径</param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:ryCommon.BigFileOp.CopyFolder(System.String,System.String)">
|
||||
<summary>
|
||||
复制文件夹到目标文件夹,不支持进度事件,支持中途取消
|
||||
</summary>
|
||||
<param name="fromDir">源文件夹</param>
|
||||
<param name="ToDir">目标文件夹</param>
|
||||
<returns>返回复制操作是否成功的标识,成功返回0,负数表示复制失败的文件数量。1表示源文件夹不存在</returns>
|
||||
</member>
|
||||
<member name="M:ryCommon.BigFileOp.CopyFolderByProgress(System.String,System.String)">
|
||||
<summary>
|
||||
复制文件夹到目标文件夹,支持进度事件,支持中途取消
|
||||
</summary>
|
||||
<param name="fromDir">源文件夹</param>
|
||||
<param name="ToDir">目标文件夹</param>
|
||||
<returns>返回复制操作是否成功的标识,成功返回0,负数表示复制失败的文件数量。1表示源文件夹不存在</returns>
|
||||
</member>
|
||||
<member name="M:ryCommon.BigFileOp.CopyFolder(System.String,System.String,System.Int32,System.Int32,System.Int32@)">
|
||||
<summary>
|
||||
复制文件夹到目标文件夹,支持中途取消
|
||||
</summary>
|
||||
<param name="fromDir">源文件夹</param>
|
||||
<param name="ToDir">目标文件夹</param>
|
||||
<param name="StartCount">初始的文件数量</param>
|
||||
<param name="TotalCount">总数量,如果不计算,则使用-1</param>
|
||||
<param name="Count">操作的数量,包含成功的和失败的</param>
|
||||
<returns>返回复制操作是否成功的标识,成功返回0,负数表示复制失败的文件数量。1表示源文件夹不存在</returns>
|
||||
</member>
|
||||
<member name="M:ryCommon.BigFileOp.GetFilesCount(System.String)">
|
||||
<summary>
|
||||
获取文件夹中的文件数量
|
||||
</summary>
|
||||
<param name="Dir">文件夹路径</param>
|
||||
<returns>返回文件数量,中途取消则返回-1</returns>
|
||||
</member>
|
||||
<member name="M:ryCommon.BigFileOp.GetFolderSize(System.String)">
|
||||
<summary>
|
||||
获取文件夹的大小
|
||||
</summary>
|
||||
<param name="Dir">文件夹路径</param>
|
||||
<returns>返回文件数量,中途取消则返回-1</returns>
|
||||
</member>
|
||||
<member name="M:ryCommon.BigFileOp.AddFileToFolder(System.String,System.String,System.Boolean,System.Boolean@)">
|
||||
<summary>
|
||||
添加文件到指定文件夹,会进行自动重命名,并返回重命名后的文件名(含路径)
|
||||
</summary>
|
||||
<param name="filepath">要添加的文件路径</param>
|
||||
<param name="toFolder">要添加到的文件夹</param>
|
||||
<param name="RenameByTime">是否根据时间进行重命名</param>
|
||||
<param name="OK">返回是否成功执行</param>
|
||||
<returns>成功执行则返回路径,否则返回空</returns>
|
||||
</member>
|
||||
<member name="T:ryCommon.Hosts">
|
||||
<summary>
|
||||
Hosts操作类
|
||||
|
@ -1876,11 +2074,11 @@
|
|||
</member>
|
||||
<member name="M:ryCommon.RyFiles.CopyFolder(System.String,System.String)">
|
||||
<summary>
|
||||
复制文件夹到目标文件夹
|
||||
复制文件夹到目标文件夹(从3.0.2205.2601版本起已更换实现底层)
|
||||
</summary>
|
||||
<param name="fromDir">源文件夹</param>
|
||||
<param name="ToDir">目标文件夹</param>
|
||||
<returns>返回移动操作是否成功的标识,成功返回0,负数表示复制失败的文件数量。1表示源文件夹不存在</returns>
|
||||
<returns>返回复制操作是否成功的标识,成功返回0,负数表示复制失败的文件数量。1表示源文件夹不存在</returns>
|
||||
</member>
|
||||
<member name="M:ryCommon.RyFiles.ReNameFile(System.String,System.String,System.Boolean,System.String@)">
|
||||
<summary>
|
||||
|
@ -3042,6 +3240,12 @@
|
|||
</summary>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:ryCommon.RyForm.GetForegroundWindow">
|
||||
<summary>
|
||||
获取当前前台的窗口句柄
|
||||
</summary>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:ryCommon.RyForm.SetActiveWindow(System.IntPtr)">
|
||||
<summary>
|
||||
设置为当前活动窗口
|
||||
|
@ -3122,6 +3326,59 @@
|
|||
<param name="Path"></param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:ryCommon.RyRegedit.DelKey(Microsoft.Win32.RegistryHive,Microsoft.Win32.RegistryView,System.String,System.String)">
|
||||
<summary>
|
||||
删除注册表键(如果存在子键,子键将一并被删除)
|
||||
</summary>
|
||||
<param name="_RegRoot"></param>
|
||||
<param name="_UseSystemBit"></param>
|
||||
<param name="Path"></param>
|
||||
<param name="KeyName"></param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:ryCommon.RyRegedit.DelValue(Microsoft.Win32.RegistryHive,Microsoft.Win32.RegistryView,System.String,System.String)">
|
||||
<summary>
|
||||
删除注册表键值
|
||||
</summary>
|
||||
<param name="_RegRoot"></param>
|
||||
<param name="_UseSystemBit"></param>
|
||||
<param name="Path"></param>
|
||||
<param name="ValueName"></param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:ryCommon.RyRegedit.GetValue(Microsoft.Win32.RegistryHive,Microsoft.Win32.RegistryView,System.String,System.String,System.String)">
|
||||
<summary>
|
||||
获取注册表键值
|
||||
</summary>
|
||||
<param name="_RegRoot"></param>
|
||||
<param name="_UseSystemBit"></param>
|
||||
<param name="Path"></param>
|
||||
<param name="ValueName"></param>
|
||||
<param name="defValue"></param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:ryCommon.RyRegedit.SetValue(Microsoft.Win32.RegistryHive,Microsoft.Win32.RegistryView,System.String,System.String,System.String)">
|
||||
<summary>
|
||||
设置注册表键值
|
||||
</summary>
|
||||
<param name="_RegRoot"></param>
|
||||
<param name="_UseSystemBit"></param>
|
||||
<param name="Path"></param>
|
||||
<param name="ValueName"></param>
|
||||
<param name="Value"></param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:ryCommon.RyRegedit.SetValue(Microsoft.Win32.RegistryHive,Microsoft.Win32.RegistryView,System.String,System.String,System.UInt32)">
|
||||
<summary>
|
||||
设置注册表键值
|
||||
</summary>
|
||||
<param name="_RegRoot"></param>
|
||||
<param name="_UseSystemBit"></param>
|
||||
<param name="Path"></param>
|
||||
<param name="ValueName"></param>
|
||||
<param name="Value"></param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:ryCommon.RyRegedit.SetAutoRun(System.Boolean,System.String,System.String)">
|
||||
<summary>
|
||||
设置是否开机启动
|
||||
|
@ -8461,6 +8718,120 @@
|
|||
CookieCollection格式的Cookie集合同时也返回String类型的cookie
|
||||
</summary>
|
||||
</member>
|
||||
<member name="T:RyWeb.HttpServer">
|
||||
<summary>
|
||||
Http服务器类
|
||||
</summary>
|
||||
</member>
|
||||
<member name="T:RyWeb.HttpServer.HttpRequestHandler">
|
||||
<summary>
|
||||
|
||||
</summary>
|
||||
<param name="sender"></param>
|
||||
<param name="e"></param>
|
||||
</member>
|
||||
<member name="E:RyWeb.HttpServer.OnHandleGETRequest">
|
||||
<summary>
|
||||
当收到Get事件时激发
|
||||
</summary>
|
||||
</member>
|
||||
<member name="E:RyWeb.HttpServer.OnHandlePOSTRequest">
|
||||
<summary>
|
||||
当收到Post事件时激发
|
||||
</summary>
|
||||
</member>
|
||||
<member name="P:RyWeb.HttpServer.ListenerHost">
|
||||
<summary>
|
||||
监听的主机,默认是localhost
|
||||
</summary>
|
||||
</member>
|
||||
<member name="P:RyWeb.HttpServer.ErrorMessage">
|
||||
<summary>
|
||||
最后一次错误信息
|
||||
</summary>
|
||||
</member>
|
||||
<member name="M:RyWeb.HttpServer.#ctor(System.Int32)">
|
||||
<summary>
|
||||
在此端口建立Http服务类
|
||||
</summary>
|
||||
<param name="port">端口号</param>
|
||||
</member>
|
||||
<member name="M:RyWeb.HttpServer.IsRunning">
|
||||
<summary>
|
||||
|
||||
</summary>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:RyWeb.HttpServer.Start">
|
||||
<summary>
|
||||
开始服务
|
||||
</summary>
|
||||
</member>
|
||||
<member name="M:RyWeb.HttpServer.Exit">
|
||||
<summary>
|
||||
退出服务
|
||||
</summary>
|
||||
</member>
|
||||
<member name="M:RyWeb.HttpServer.Finalize">
|
||||
<summary>
|
||||
|
||||
</summary>
|
||||
</member>
|
||||
<member name="T:RyWeb.HttpRequest">
|
||||
<summary>
|
||||
|
||||
</summary>
|
||||
</member>
|
||||
<member name="P:RyWeb.HttpRequest.Url">
|
||||
<summary>
|
||||
|
||||
</summary>
|
||||
</member>
|
||||
<member name="P:RyWeb.HttpRequest.PostDataStr">
|
||||
<summary>
|
||||
|
||||
</summary>
|
||||
</member>
|
||||
<member name="P:RyWeb.HttpRequest.PostData">
|
||||
<summary>
|
||||
|
||||
</summary>
|
||||
</member>
|
||||
<member name="M:RyWeb.HttpRequest.GetPostData(System.String)">
|
||||
<summary>
|
||||
|
||||
</summary>
|
||||
</member>
|
||||
<member name="M:RyWeb.HttpRequest.GetPostData(System.String,System.String)">
|
||||
<summary>
|
||||
|
||||
</summary>
|
||||
</member>
|
||||
<member name="M:RyWeb.HttpRequest.GetPostData(System.String,System.Int32)">
|
||||
<summary>
|
||||
|
||||
</summary>
|
||||
</member>
|
||||
<member name="M:RyWeb.HttpRequest.GetPostData(System.String,System.Boolean)">
|
||||
<summary>
|
||||
|
||||
</summary>
|
||||
</member>
|
||||
<member name="P:RyWeb.HttpRequest.UrlReferrer">
|
||||
<summary>
|
||||
|
||||
</summary>
|
||||
</member>
|
||||
<member name="P:RyWeb.HttpRequest.ReturnHtml">
|
||||
<summary>
|
||||
|
||||
</summary>
|
||||
</member>
|
||||
<member name="P:RyWeb.HttpRequest.StatusCode">
|
||||
<summary>
|
||||
|
||||
</summary>
|
||||
</member>
|
||||
<member name="T:RyWeb.QuickWeb">
|
||||
<summary>
|
||||
|
||||
|
@ -8702,6 +9073,24 @@
|
|||
<param name="str"></param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:RyWeb.WebDecode.UrlToData(System.String)">
|
||||
<summary>
|
||||
将url里的字段分解成表单字典
|
||||
</summary>
|
||||
<param name="url"></param>
|
||||
<returns></returns>
|
||||
<exception cref="T:System.ArgumentNullException"></exception>
|
||||
<exception cref="T:System.FormatException"></exception>
|
||||
</member>
|
||||
<member name="M:RyWeb.WebDecode.GetParam(System.Tuple{System.String,System.Collections.Generic.IEnumerable{System.Collections.Generic.KeyValuePair{System.String,System.String}}},System.String,System.String)">
|
||||
<summary>
|
||||
根据表单字段名获取值
|
||||
</summary>
|
||||
<param name="decoded"></param>
|
||||
<param name="name"></param>
|
||||
<param name="defValue"></param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="T:rySafe.AES">
|
||||
<summary>
|
||||
AES加密解密类
|
||||
|
|
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
|
@ -8697,6 +8697,11 @@
|
|||
标题栏图标尺寸
|
||||
</summary>
|
||||
</member>
|
||||
<member name="P:MGdu.WinFormUI.GMForm.GMFormIcon">
|
||||
<summary>
|
||||
窗体图标,如果设置本项,将不使用Icon属性
|
||||
</summary>
|
||||
</member>
|
||||
<member name="P:MGdu.WinFormUI.GMForm.IconLeftMargin">
|
||||
<summary>
|
||||
标题栏图标与窗体左边框的距离
|
||||
|
@ -16148,6 +16153,11 @@
|
|||
将给定对象的文本和HTML表示复制到剪贴板上。
|
||||
</summary>
|
||||
</member>
|
||||
<member name="M:BrightIdeasSoftware.ObjectListView.CopyObjectsToClipboard">
|
||||
<summary>
|
||||
将所有对象的文本和HTML表示复制到剪贴板上。
|
||||
</summary>
|
||||
</member>
|
||||
<member name="M:BrightIdeasSoftware.ObjectListView.ObjectsToHtml(System.Collections.IList)">
|
||||
<summary>
|
||||
返回给定对象的html表示形式
|
||||
|
|
Binary file not shown.
53
CHANGELOG.md
53
CHANGELOG.md
|
@ -1,4 +1,55 @@
|
|||
### 2022-02-09更新
|
||||
### 2022-05-26更新
|
||||
------
|
||||
#### MyDbV4 V3.0.2205.2601
|
||||
- *.[新增]新增BigFileOp类,支持对大文件和批量文件操作处理。
|
||||
- *.[改进]RyFiles类的部分函数更换为BigFileOp类底层操作。
|
||||
|
||||
### 2022-05-09更新
|
||||
------
|
||||
#### MyDbV4 V3.0.2205.0901
|
||||
- *.[改进]RyForm类的Show函数针对窗体最小化或不在屏幕内的情况做出优化。
|
||||
- *.[改进]OpenFile函数在打开文件夹时,会调用默认资源管理器打开,而不再限定为系统。
|
||||
|
||||
#### ryControls V3.0.2205.0901
|
||||
|
||||
- *.[改进]GMForm窗体在最大化时不可移动窗体。
|
||||
- *.[改进]改进ObjectListview列表中的按钮显示效果。
|
||||
|
||||
### 2022-05-07更新
|
||||
------
|
||||
#### MyDbV4 V3.0.2205.0701
|
||||
- *.[新增]新增多个注册表操作相关函数。
|
||||
|
||||
### 2022-03-11更新
|
||||
------
|
||||
#### MyDbV4 V3.0.2203.1101
|
||||
- *.[改进]ryQuickSQL中的int和long类型直接转变为数值,而不是参数变量。
|
||||
- *.[修复]ryQuickSQL中的GetUpdateSQL函数会将《计算参数》进行更新的BUG。
|
||||
|
||||
### 2022-03-01更新
|
||||
------
|
||||
#### MyDbV4 V3.0.2203.0101
|
||||
- *.[新增]新增IsInTime和IsInDay扩展函数。
|
||||
- *.[改进]完善部分注释,更加易懂。
|
||||
- *.[改进]HttpServer类新增默认对postdata内容进行解析。
|
||||
- *.[修复]修复PinYin类对《鑫》字转换错误的BUG。
|
||||
|
||||
#### MyDb_MySQLV4 V3.0.2203.0101
|
||||
- *.[改进]MySQL的连接字符串自动追加Allow User Variables=True;
|
||||
|
||||
### 2022-02-21更新
|
||||
------
|
||||
#### MyDbV4 V3.0.2202.2101
|
||||
- *.[新增]新增HttpServer类,可以非常方便的建立http服务器。
|
||||
|
||||
### 2022-02-20更新
|
||||
------
|
||||
#### MyDbV4 V3.0.2202.2001
|
||||
- *.[新增]WebDecode类新增UrlToData和GetParam函数。
|
||||
- *.[新增]VarExtension类新增针对GetParam的扩展方法。
|
||||
- *.[改进]WebDecode类的IsUrlSafeChar和IntToHex函数改为私有方法。
|
||||
|
||||
### 2022-02-09更新
|
||||
------
|
||||
#### MyDbV4 V3.0.2202.0901
|
||||
- *.[改进]新增ToNString扩展函数,支持将数字转换成小数点末尾不带0的字符串。
|
||||
|
|
Binary file not shown.
Binary file not shown.
|
@ -1,51 +0,0 @@
|
|||
{
|
||||
"Version": 1,
|
||||
"ProjectMap": {
|
||||
"9df20d86-a56e-4cf6-a3d8-f30421297b1b": {
|
||||
"ProjectGuid": "9df20d86-a56e-4cf6-a3d8-f30421297b1b",
|
||||
"DisplayName": "MyDbV4",
|
||||
"ColorIndex": 0
|
||||
},
|
||||
"11a63e24-0257-4c54-a109-f1a609a52a62": {
|
||||
"ProjectGuid": "11a63e24-0257-4c54-a109-f1a609a52a62",
|
||||
"DisplayName": "ryUpdateV4",
|
||||
"ColorIndex": 1
|
||||
},
|
||||
"9eca3a84-8545-4c4d-84d6-d23e3bdf2d90": {
|
||||
"ProjectGuid": "9eca3a84-8545-4c4d-84d6-d23e3bdf2d90",
|
||||
"DisplayName": "ryControlsV4",
|
||||
"ColorIndex": 2
|
||||
},
|
||||
"dc9fdb61-fedd-4795-afdc-8376ab781c56": {
|
||||
"ProjectGuid": "dc9fdb61-fedd-4795-afdc-8376ab781c56",
|
||||
"DisplayName": "Itrycn_Project2",
|
||||
"ColorIndex": 3
|
||||
},
|
||||
"6b969ce8-d723-4b2c-a8fd-fad2fb28ff01": {
|
||||
"ProjectGuid": "6b969ce8-d723-4b2c-a8fd-fad2fb28ff01",
|
||||
"DisplayName": "MyDb_SQLiteV4",
|
||||
"ColorIndex": 4
|
||||
},
|
||||
"de092c43-1ab5-4229-8ec8-35c9936c4331": {
|
||||
"ProjectGuid": "de092c43-1ab5-4229-8ec8-35c9936c4331",
|
||||
"DisplayName": "MyDb_MySQLV4",
|
||||
"ColorIndex": 5
|
||||
},
|
||||
"b6784652-825a-482c-8a21-08e2539af2bf": {
|
||||
"ProjectGuid": "b6784652-825a-482c-8a21-08e2539af2bf",
|
||||
"DisplayName": "RyPrint",
|
||||
"ColorIndex": 6
|
||||
},
|
||||
"a2fe74e1-b743-11d0-ae1a-00a0c90fffc3": {
|
||||
"ProjectGuid": "a2fe74e1-b743-11d0-ae1a-00a0c90fffc3",
|
||||
"DisplayName": "杂项文件",
|
||||
"ColorIndex": -1
|
||||
},
|
||||
"62b5c3e8-4af1-4a7f-a40b-a6186f83dbd2": {
|
||||
"ProjectGuid": "62b5c3e8-4af1-4a7f-a40b-a6186f83dbd2",
|
||||
"DisplayName": "Itrycn_Project",
|
||||
"ColorIndex": 7
|
||||
}
|
||||
},
|
||||
"NextColorIndex": 8
|
||||
}
|
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
1
Source/Itrycn_Project2/FrmStart.Designer.cs
generated
1
Source/Itrycn_Project2/FrmStart.Designer.cs
generated
|
@ -215,6 +215,7 @@
|
|||
this.Controls.Add(this.chromeTabControl1);
|
||||
this.Location = new System.Drawing.Point(0, 0);
|
||||
this.Name = "FrmStart";
|
||||
this.Resizable = false;
|
||||
this.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen;
|
||||
this.Text = "FrmStart";
|
||||
this.FormClosing += new System.Windows.Forms.FormClosingEventHandler(this.FrmStart_FormClosing);
|
||||
|
|
|
@ -93,7 +93,6 @@ namespace Itrycn_Project2
|
|||
{
|
||||
Application.Exit();
|
||||
}
|
||||
|
||||
private void FrmStart_Shown(object sender, EventArgs e)
|
||||
{
|
||||
ryCommon.Ini ini = new Ini(Soft_ConstInfo.UserDataFolder + "\\Win.dat");
|
||||
|
@ -181,6 +180,7 @@ namespace Itrycn_Project2
|
|||
|
||||
private void FrmStart_Load(object sender, EventArgs e)
|
||||
{
|
||||
ryCommon.PinYin.Convert("李凤鑫");
|
||||
Public_Config.LoadSetting();
|
||||
//Itrycn_Project.Itrycn_Db.CreateTable();
|
||||
//var dbver = Itrycn_Db.GetDbVer();
|
||||
|
|
165
Source/Itrycn_Project2/OTools/FrmScan.Designer.cs
generated
165
Source/Itrycn_Project2/OTools/FrmScan.Designer.cs
generated
|
@ -31,101 +31,30 @@
|
|||
private void InitializeComponent()
|
||||
{
|
||||
this.components = new System.ComponentModel.Container();
|
||||
this.notifyIcon1 = new System.Windows.Forms.NotifyIcon(this.components);
|
||||
this.MenuTray = new System.Windows.Forms.ContextMenuStrip(this.components);
|
||||
this.显示主窗体ToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
|
||||
this.退出软件ToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
|
||||
this.menuStrip1 = new System.Windows.Forms.MenuStrip();
|
||||
this.关于ToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
|
||||
this.打开官网ToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
|
||||
this.捐助ToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
|
||||
this.chromeTabControl1 = new ryControls.ChromeTabControl();
|
||||
this.tabPage1 = new System.Windows.Forms.TabPage();
|
||||
this.BtnScan = new ryControls.ButtonEx();
|
||||
this.LvCbResult = new BrightIdeasSoftware.FastObjectListView();
|
||||
this.OlvGameName = ((BrightIdeasSoftware.OLVColumn)(new BrightIdeasSoftware.OLVColumn()));
|
||||
this.OlvFileName = ((BrightIdeasSoftware.OLVColumn)(new BrightIdeasSoftware.OLVColumn()));
|
||||
this.OlvAddTime = ((BrightIdeasSoftware.OLVColumn)(new BrightIdeasSoftware.OLVColumn()));
|
||||
this.TabLogs = new System.Windows.Forms.TabPage();
|
||||
this.LvLogs = new BrightIdeasSoftware.FastObjectListView();
|
||||
this.OlvLog = ((BrightIdeasSoftware.OLVColumn)(new BrightIdeasSoftware.OLVColumn()));
|
||||
this.OlvLogText = ((BrightIdeasSoftware.OLVColumn)(new BrightIdeasSoftware.OLVColumn()));
|
||||
this.OlvLogTime = ((BrightIdeasSoftware.OLVColumn)(new BrightIdeasSoftware.OLVColumn()));
|
||||
this.statusStrip1 = new System.Windows.Forms.StatusStrip();
|
||||
this.TsState = new System.Windows.Forms.ToolStripStatusLabel();
|
||||
this.MenuLogs = new System.Windows.Forms.ContextMenuStrip(this.components);
|
||||
this.复制日志信息ToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
|
||||
this.MenuTray.SuspendLayout();
|
||||
this.menuStrip1.SuspendLayout();
|
||||
this.statusStrip1 = new System.Windows.Forms.StatusStrip();
|
||||
this.TsState = new System.Windows.Forms.ToolStripStatusLabel();
|
||||
this.导出日志ToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
|
||||
this.chromeTabControl1.SuspendLayout();
|
||||
this.tabPage1.SuspendLayout();
|
||||
((System.ComponentModel.ISupportInitialize)(this.LvCbResult)).BeginInit();
|
||||
this.TabLogs.SuspendLayout();
|
||||
((System.ComponentModel.ISupportInitialize)(this.LvLogs)).BeginInit();
|
||||
this.statusStrip1.SuspendLayout();
|
||||
this.MenuLogs.SuspendLayout();
|
||||
this.statusStrip1.SuspendLayout();
|
||||
this.SuspendLayout();
|
||||
//
|
||||
// notifyIcon1
|
||||
//
|
||||
this.notifyIcon1.ContextMenuStrip = this.MenuTray;
|
||||
this.notifyIcon1.Visible = true;
|
||||
this.notifyIcon1.DoubleClick += new System.EventHandler(this.显示主窗体ToolStripMenuItem_Click);
|
||||
//
|
||||
// MenuTray
|
||||
//
|
||||
this.MenuTray.Items.AddRange(new System.Windows.Forms.ToolStripItem[] {
|
||||
this.显示主窗体ToolStripMenuItem,
|
||||
this.退出软件ToolStripMenuItem});
|
||||
this.MenuTray.Name = "MenuTray";
|
||||
this.MenuTray.Size = new System.Drawing.Size(137, 48);
|
||||
//
|
||||
// 显示主窗体ToolStripMenuItem
|
||||
//
|
||||
this.显示主窗体ToolStripMenuItem.Name = "显示主窗体ToolStripMenuItem";
|
||||
this.显示主窗体ToolStripMenuItem.Size = new System.Drawing.Size(136, 22);
|
||||
this.显示主窗体ToolStripMenuItem.Text = "显示主窗体";
|
||||
this.显示主窗体ToolStripMenuItem.Click += new System.EventHandler(this.显示主窗体ToolStripMenuItem_Click);
|
||||
//
|
||||
// 退出软件ToolStripMenuItem
|
||||
//
|
||||
this.退出软件ToolStripMenuItem.Name = "退出软件ToolStripMenuItem";
|
||||
this.退出软件ToolStripMenuItem.Size = new System.Drawing.Size(136, 22);
|
||||
this.退出软件ToolStripMenuItem.Text = "退出软件";
|
||||
this.退出软件ToolStripMenuItem.Click += new System.EventHandler(this.退出软件ToolStripMenuItem_Click);
|
||||
//
|
||||
// menuStrip1
|
||||
//
|
||||
this.menuStrip1.Items.AddRange(new System.Windows.Forms.ToolStripItem[] {
|
||||
this.关于ToolStripMenuItem});
|
||||
this.menuStrip1.Location = new System.Drawing.Point(1, 27);
|
||||
this.menuStrip1.Name = "menuStrip1";
|
||||
this.menuStrip1.Size = new System.Drawing.Size(802, 25);
|
||||
this.menuStrip1.TabIndex = 2;
|
||||
this.menuStrip1.Text = "menuStrip1";
|
||||
//
|
||||
// 关于ToolStripMenuItem
|
||||
//
|
||||
this.关于ToolStripMenuItem.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] {
|
||||
this.打开官网ToolStripMenuItem,
|
||||
this.捐助ToolStripMenuItem});
|
||||
this.关于ToolStripMenuItem.Name = "关于ToolStripMenuItem";
|
||||
this.关于ToolStripMenuItem.Size = new System.Drawing.Size(44, 21);
|
||||
this.关于ToolStripMenuItem.Text = "关于";
|
||||
//
|
||||
// 打开官网ToolStripMenuItem
|
||||
//
|
||||
this.打开官网ToolStripMenuItem.Name = "打开官网ToolStripMenuItem";
|
||||
this.打开官网ToolStripMenuItem.Size = new System.Drawing.Size(136, 22);
|
||||
this.打开官网ToolStripMenuItem.Text = "打开官网";
|
||||
this.打开官网ToolStripMenuItem.Click += new System.EventHandler(this.打开官网ToolStripMenuItem_Click);
|
||||
//
|
||||
// 捐助ToolStripMenuItem
|
||||
//
|
||||
this.捐助ToolStripMenuItem.Name = "捐助ToolStripMenuItem";
|
||||
this.捐助ToolStripMenuItem.Size = new System.Drawing.Size(136, 22);
|
||||
this.捐助ToolStripMenuItem.Text = "关于和捐助";
|
||||
this.捐助ToolStripMenuItem.Click += new System.EventHandler(this.捐助ToolStripMenuItem_Click);
|
||||
//
|
||||
// chromeTabControl1
|
||||
//
|
||||
this.chromeTabControl1.AllowDragTab = false;
|
||||
|
@ -137,12 +66,12 @@
|
|||
this.chromeTabControl1.Controls.Add(this.TabLogs);
|
||||
this.chromeTabControl1.Cursor = System.Windows.Forms.Cursors.Default;
|
||||
this.chromeTabControl1.ItemSize = new System.Drawing.Size(100, 25);
|
||||
this.chromeTabControl1.Location = new System.Drawing.Point(1, 55);
|
||||
this.chromeTabControl1.Location = new System.Drawing.Point(1, 30);
|
||||
this.chromeTabControl1.Name = "chromeTabControl1";
|
||||
this.chromeTabControl1.SelectedIndex = 0;
|
||||
this.chromeTabControl1.ShowAddButton = false;
|
||||
this.chromeTabControl1.ShowCloseButton = false;
|
||||
this.chromeTabControl1.Size = new System.Drawing.Size(802, 513);
|
||||
this.chromeTabControl1.Size = new System.Drawing.Size(802, 538);
|
||||
this.chromeTabControl1.SizeMode = System.Windows.Forms.TabSizeMode.Fixed;
|
||||
this.chromeTabControl1.TabContextMenuStrip = null;
|
||||
this.chromeTabControl1.TabIndex = 0;
|
||||
|
@ -155,7 +84,7 @@
|
|||
this.tabPage1.Location = new System.Drawing.Point(1, 29);
|
||||
this.tabPage1.Name = "tabPage1";
|
||||
this.tabPage1.Padding = new System.Windows.Forms.Padding(3);
|
||||
this.tabPage1.Size = new System.Drawing.Size(800, 483);
|
||||
this.tabPage1.Size = new System.Drawing.Size(800, 508);
|
||||
this.tabPage1.TabIndex = 0;
|
||||
this.tabPage1.Text = "首页";
|
||||
this.tabPage1.UseVisualStyleBackColor = true;
|
||||
|
@ -174,7 +103,6 @@
|
|||
// LvCbResult
|
||||
//
|
||||
this.LvCbResult.AllColumns.Add(this.OlvGameName);
|
||||
this.LvCbResult.AllColumns.Add(this.OlvFileName);
|
||||
this.LvCbResult.AllColumns.Add(this.OlvAddTime);
|
||||
this.LvCbResult.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)
|
||||
| System.Windows.Forms.AnchorStyles.Left)
|
||||
|
@ -182,7 +110,6 @@
|
|||
this.LvCbResult.CellEditUseWholeCell = false;
|
||||
this.LvCbResult.Columns.AddRange(new System.Windows.Forms.ColumnHeader[] {
|
||||
this.OlvGameName,
|
||||
this.OlvFileName,
|
||||
this.OlvAddTime});
|
||||
this.LvCbResult.Cursor = System.Windows.Forms.Cursors.Default;
|
||||
this.LvCbResult.EmptyListMsg = "当前列表没有任何项";
|
||||
|
@ -193,7 +120,7 @@
|
|||
this.LvCbResult.RowHeight = 25;
|
||||
this.LvCbResult.ShowGroups = false;
|
||||
this.LvCbResult.ShowItemToolTips = true;
|
||||
this.LvCbResult.Size = new System.Drawing.Size(794, 433);
|
||||
this.LvCbResult.Size = new System.Drawing.Size(794, 458);
|
||||
this.LvCbResult.TabIndex = 84;
|
||||
this.LvCbResult.UseCompatibleStateImageBehavior = false;
|
||||
this.LvCbResult.UseFiltering = true;
|
||||
|
@ -205,11 +132,6 @@
|
|||
this.OlvGameName.Text = "游戏名";
|
||||
this.OlvGameName.Width = 200;
|
||||
//
|
||||
// OlvFileName
|
||||
//
|
||||
this.OlvFileName.Text = "文件名";
|
||||
this.OlvFileName.Width = 180;
|
||||
//
|
||||
// OlvAddTime
|
||||
//
|
||||
this.OlvAddTime.Text = "提交时间";
|
||||
|
@ -221,22 +143,23 @@
|
|||
this.TabLogs.Location = new System.Drawing.Point(1, 29);
|
||||
this.TabLogs.Name = "TabLogs";
|
||||
this.TabLogs.Padding = new System.Windows.Forms.Padding(3);
|
||||
this.TabLogs.Size = new System.Drawing.Size(800, 464);
|
||||
this.TabLogs.Size = new System.Drawing.Size(800, 508);
|
||||
this.TabLogs.TabIndex = 1;
|
||||
this.TabLogs.Text = "日志";
|
||||
this.TabLogs.UseVisualStyleBackColor = true;
|
||||
//
|
||||
// LvLogs
|
||||
//
|
||||
this.LvLogs.AllColumns.Add(this.OlvLog);
|
||||
this.LvLogs.AllColumns.Add(this.OlvLogTime);
|
||||
this.LvLogs.AllColumns.Add(this.OlvLogText);
|
||||
this.LvLogs.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.LvLogs.CellEditUseWholeCell = false;
|
||||
this.LvLogs.Columns.AddRange(new System.Windows.Forms.ColumnHeader[] {
|
||||
this.OlvLog,
|
||||
this.OlvLogTime});
|
||||
this.OlvLogTime,
|
||||
this.OlvLogText});
|
||||
this.LvLogs.ContextMenuStrip = this.MenuLogs;
|
||||
this.LvLogs.Cursor = System.Windows.Forms.Cursors.Default;
|
||||
this.LvLogs.EmptyListMsg = "当前列表没有任何项";
|
||||
this.LvLogs.FullRowSelect = true;
|
||||
|
@ -246,23 +169,39 @@
|
|||
this.LvLogs.RowHeight = 25;
|
||||
this.LvLogs.ShowGroups = false;
|
||||
this.LvLogs.ShowItemToolTips = true;
|
||||
this.LvLogs.Size = new System.Drawing.Size(794, 458);
|
||||
this.LvLogs.Size = new System.Drawing.Size(794, 483);
|
||||
this.LvLogs.TabIndex = 85;
|
||||
this.LvLogs.UseCompatibleStateImageBehavior = false;
|
||||
this.LvLogs.UseFiltering = true;
|
||||
this.LvLogs.View = System.Windows.Forms.View.Details;
|
||||
this.LvLogs.VirtualMode = true;
|
||||
//
|
||||
// OlvLog
|
||||
// OlvLogText
|
||||
//
|
||||
this.OlvLog.Text = "日志";
|
||||
this.OlvLog.Width = 400;
|
||||
this.OlvLogText.DisplayIndex = 0;
|
||||
this.OlvLogText.Text = "日志";
|
||||
this.OlvLogText.Width = 400;
|
||||
//
|
||||
// OlvLogTime
|
||||
//
|
||||
this.OlvLogTime.Text = "日志时间";
|
||||
this.OlvLogTime.Width = 180;
|
||||
//
|
||||
// MenuLogs
|
||||
//
|
||||
this.MenuLogs.Items.AddRange(new System.Windows.Forms.ToolStripItem[] {
|
||||
this.复制日志信息ToolStripMenuItem,
|
||||
this.导出日志ToolStripMenuItem});
|
||||
this.MenuLogs.Name = "MenuLogs";
|
||||
this.MenuLogs.Size = new System.Drawing.Size(149, 48);
|
||||
//
|
||||
// 复制日志信息ToolStripMenuItem
|
||||
//
|
||||
this.复制日志信息ToolStripMenuItem.Name = "复制日志信息ToolStripMenuItem";
|
||||
this.复制日志信息ToolStripMenuItem.Size = new System.Drawing.Size(148, 22);
|
||||
this.复制日志信息ToolStripMenuItem.Text = "复制日志信息";
|
||||
this.复制日志信息ToolStripMenuItem.Click += new System.EventHandler(this.复制日志信息ToolStripMenuItem_Click);
|
||||
//
|
||||
// statusStrip1
|
||||
//
|
||||
this.statusStrip1.Items.AddRange(new System.Windows.Forms.ToolStripItem[] {
|
||||
|
@ -279,19 +218,12 @@
|
|||
this.TsState.Size = new System.Drawing.Size(83, 17);
|
||||
this.TsState.Text = "状态:准备就绪";
|
||||
//
|
||||
// MenuLogs
|
||||
// 导出日志ToolStripMenuItem
|
||||
//
|
||||
this.MenuLogs.Items.AddRange(new System.Windows.Forms.ToolStripItem[] {
|
||||
this.复制日志信息ToolStripMenuItem});
|
||||
this.MenuLogs.Name = "MenuLogs";
|
||||
this.MenuLogs.Size = new System.Drawing.Size(149, 26);
|
||||
//
|
||||
// 复制日志信息ToolStripMenuItem
|
||||
//
|
||||
this.复制日志信息ToolStripMenuItem.Name = "复制日志信息ToolStripMenuItem";
|
||||
this.复制日志信息ToolStripMenuItem.Size = new System.Drawing.Size(148, 22);
|
||||
this.复制日志信息ToolStripMenuItem.Text = "复制日志信息";
|
||||
this.复制日志信息ToolStripMenuItem.Click += new System.EventHandler(this.复制日志信息ToolStripMenuItem_Click);
|
||||
this.导出日志ToolStripMenuItem.Name = "导出日志ToolStripMenuItem";
|
||||
this.导出日志ToolStripMenuItem.Size = new System.Drawing.Size(180, 22);
|
||||
this.导出日志ToolStripMenuItem.Text = "导出日志";
|
||||
this.导出日志ToolStripMenuItem.Click += new System.EventHandler(this.导出日志ToolStripMenuItem_Click);
|
||||
//
|
||||
// FrmScan
|
||||
//
|
||||
|
@ -299,25 +231,22 @@
|
|||
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
|
||||
this.ClientSize = new System.Drawing.Size(804, 596);
|
||||
this.Controls.Add(this.statusStrip1);
|
||||
this.Controls.Add(this.menuStrip1);
|
||||
this.Controls.Add(this.chromeTabControl1);
|
||||
this.Location = new System.Drawing.Point(0, 0);
|
||||
this.Name = "FrmScan";
|
||||
this.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen;
|
||||
this.Text = "扫描";
|
||||
this.FormClosing += new System.Windows.Forms.FormClosingEventHandler(this.FrmStart_FormClosing);
|
||||
this.Load += new System.EventHandler(this.FrmStart_Load);
|
||||
this.Shown += new System.EventHandler(this.FrmStart_Shown);
|
||||
this.MenuTray.ResumeLayout(false);
|
||||
this.menuStrip1.ResumeLayout(false);
|
||||
this.menuStrip1.PerformLayout();
|
||||
this.chromeTabControl1.ResumeLayout(false);
|
||||
this.tabPage1.ResumeLayout(false);
|
||||
((System.ComponentModel.ISupportInitialize)(this.LvCbResult)).EndInit();
|
||||
this.TabLogs.ResumeLayout(false);
|
||||
((System.ComponentModel.ISupportInitialize)(this.LvLogs)).EndInit();
|
||||
this.MenuLogs.ResumeLayout(false);
|
||||
this.statusStrip1.ResumeLayout(false);
|
||||
this.statusStrip1.PerformLayout();
|
||||
this.MenuLogs.ResumeLayout(false);
|
||||
this.ResumeLayout(false);
|
||||
this.PerformLayout();
|
||||
|
||||
|
@ -327,26 +256,18 @@
|
|||
|
||||
private ryControls.ChromeTabControl chromeTabControl1;
|
||||
private System.Windows.Forms.TabPage tabPage1;
|
||||
private System.Windows.Forms.NotifyIcon notifyIcon1;
|
||||
private System.Windows.Forms.ContextMenuStrip MenuTray;
|
||||
private System.Windows.Forms.ToolStripMenuItem 显示主窗体ToolStripMenuItem;
|
||||
private System.Windows.Forms.ToolStripMenuItem 退出软件ToolStripMenuItem;
|
||||
private System.Windows.Forms.MenuStrip menuStrip1;
|
||||
private System.Windows.Forms.ToolStripMenuItem 关于ToolStripMenuItem;
|
||||
private System.Windows.Forms.ToolStripMenuItem 捐助ToolStripMenuItem;
|
||||
private System.Windows.Forms.ToolStripMenuItem 打开官网ToolStripMenuItem;
|
||||
private BrightIdeasSoftware.FastObjectListView LvCbResult;
|
||||
private BrightIdeasSoftware.OLVColumn OlvGameName;
|
||||
private BrightIdeasSoftware.OLVColumn OlvFileName;
|
||||
private BrightIdeasSoftware.OLVColumn OlvAddTime;
|
||||
private ryControls.ButtonEx BtnScan;
|
||||
private System.Windows.Forms.StatusStrip statusStrip1;
|
||||
private System.Windows.Forms.ToolStripStatusLabel TsState;
|
||||
private System.Windows.Forms.TabPage TabLogs;
|
||||
private BrightIdeasSoftware.FastObjectListView LvLogs;
|
||||
private BrightIdeasSoftware.OLVColumn OlvLog;
|
||||
private BrightIdeasSoftware.OLVColumn OlvLogText;
|
||||
private BrightIdeasSoftware.OLVColumn OlvLogTime;
|
||||
private System.Windows.Forms.ContextMenuStrip MenuLogs;
|
||||
private System.Windows.Forms.ToolStripMenuItem 复制日志信息ToolStripMenuItem;
|
||||
private System.Windows.Forms.ToolStripMenuItem 导出日志ToolStripMenuItem;
|
||||
}
|
||||
}
|
|
@ -14,136 +14,86 @@ namespace Itrycn_Project2
|
|||
{
|
||||
public partial class FrmScan : RySkins.SKinForm
|
||||
{
|
||||
string[] prog_args;
|
||||
public FrmScan(string[] args)
|
||||
/// <summary>
|
||||
/// 最大日志数量
|
||||
/// </summary>
|
||||
private int MaxLogsCount { get; set; } = 1000;
|
||||
public FrmScan()
|
||||
{
|
||||
InitializeComponent();
|
||||
prog_args = args;
|
||||
//配置软件信息
|
||||
notifyIcon1.Text = Soft_ConstInfo.Soft_Title;
|
||||
Text = Soft_ConstInfo.Soft_Title + " V" + RySoft.VersionStr;
|
||||
if (!Soft_ConstInfo.ShowTray) { notifyIcon1.Visible = false; }
|
||||
if (!Soft_ConstInfo.DonateVisabled) { 捐助ToolStripMenuItem.Text = "关于"; }
|
||||
if (Soft_ConstInfo.Soft_Url.Length == 0) { 打开官网ToolStripMenuItem.PerformClick(); }
|
||||
notifyIcon1.Icon = Icon;
|
||||
OlvLog.AspectName = "LogText";
|
||||
OlvLogTime.AspectName = "LogTime";
|
||||
OlvGameName.AspectGetter = delegate (object x) { return ((ItemInfo)x).Name; };
|
||||
OlvAddTime.AspectGetter = delegate (object x) { return ((ItemInfo)x).AddTime.ToDateTimeStr(); };
|
||||
OlvLogTime.AspectGetter = delegate (object x) { return ((LogInfo)x).LogTime.ToDateTimeStr(); };
|
||||
OlvLogText.AspectGetter = delegate (object x) { return ((LogInfo)x).LogText; };
|
||||
LvLogs.FormatRow += delegate (object x, BrightIdeasSoftware.FormatRowEventArgs e) {
|
||||
LogInfo item = (LogInfo)e.Model;
|
||||
if (item.Color != Color.Black)
|
||||
{
|
||||
e.Item.ForeColor = item.Color;
|
||||
}
|
||||
};
|
||||
}
|
||||
|
||||
private void 显示主窗体ToolStripMenuItem_Click(object sender, EventArgs e)
|
||||
{
|
||||
this.WindowState = FormWindowState.Normal;
|
||||
var topmost = this.TopMost;
|
||||
this.TopMost = true;
|
||||
this.Show();
|
||||
this.TopMost = topmost;
|
||||
}
|
||||
|
||||
private void 退出软件ToolStripMenuItem_Click(object sender, EventArgs e)
|
||||
{
|
||||
Application.Exit();
|
||||
}
|
||||
|
||||
private void FrmStart_Shown(object sender, EventArgs e)
|
||||
{
|
||||
ryCommon.Ini ini = new Ini(Soft_ConstInfo.UserDataFolder + "\\Win.dat");
|
||||
ini.WriteIni(Soft_ConstInfo.Soft_Id, "hwnd", Handle.ToInt32());
|
||||
if (prog_args.Length >= 1)
|
||||
{
|
||||
//如果是自启动,并且开启了右下角托盘图标,则隐藏自身。
|
||||
if (prog_args[0] == Soft_ConstInfo.Soft_Pram && Soft_ConstInfo.ShowTray)
|
||||
this.Hide();
|
||||
}
|
||||
}
|
||||
|
||||
private void FrmStart_FormClosing(object sender, FormClosingEventArgs e)
|
||||
{
|
||||
if (Soft_ConstInfo.ShowTray && Public_Config.HideByCloseBtn && e.CloseReason== CloseReason.UserClosing)
|
||||
{
|
||||
e.Cancel = true;
|
||||
this.Hide();
|
||||
notifyIcon1.ShowBalloonTip(3000, Soft_ConstInfo.Soft_Title, "软件已经最小化到此处,请右击托盘图标进行关闭。", ToolTipIcon.Info);
|
||||
return;
|
||||
}
|
||||
if (!Soft_MemInfo.IsCanCloseForm)
|
||||
{
|
||||
e.Cancel = true;
|
||||
MessageBox.Show("当前还有操作正在运行,请稍后关闭软件。", "提示", MessageBoxButtons.OK, MessageBoxIcon.Information);
|
||||
}
|
||||
}
|
||||
protected override void WndProc(ref System.Windows.Forms.Message msg)
|
||||
{
|
||||
switch (msg.Msg)
|
||||
{
|
||||
case 17189: //处理消息
|
||||
{
|
||||
#region 激活窗体
|
||||
switch (msg.WParam.ToInt32())
|
||||
{
|
||||
case 100://
|
||||
#region 显示界面
|
||||
if ((int)msg.LParam.ToInt32() == 100)
|
||||
{
|
||||
this.Show();
|
||||
this.WindowState = FormWindowState.Normal;
|
||||
this.Top = (Screen.PrimaryScreen.WorkingArea.Height - this.Height) / 2;
|
||||
this.Left = (Screen.PrimaryScreen.WorkingArea.Width - this.Width) / 2;
|
||||
//RyForm.SetActiveWindow(Handle);
|
||||
RyForm.BringToTop(Handle);
|
||||
显示主窗体ToolStripMenuItem.PerformClick();
|
||||
this.BringToFront();
|
||||
this.Select();
|
||||
this.Focus();
|
||||
RyForm.BringToTop(Handle);
|
||||
}
|
||||
#endregion
|
||||
break;
|
||||
}
|
||||
#endregion
|
||||
}
|
||||
break;
|
||||
default:
|
||||
base.WndProc(ref msg);//调用基类函数处理非自定义消息。
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
private void 捐助ToolStripMenuItem_Click(object sender, EventArgs e)
|
||||
{
|
||||
if (Soft_ConstInfo.DonateVisabled)
|
||||
{
|
||||
FrmAbout frm = new FrmAbout();
|
||||
frm.ShowDialog();
|
||||
frm.Dispose();
|
||||
}
|
||||
else
|
||||
{
|
||||
RySkins.Msg.ShowMsg(Soft_ConstInfo.AboutText.Replace("#softname#", Soft_ConstInfo.Soft_Title).Replace("#ver#", "V" + RySoft.VersionStr), "提示", MessageBoxButtons.OK, MessageBoxIcon.Information);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
private void 打开官网ToolStripMenuItem_Click(object sender, EventArgs e)
|
||||
{
|
||||
ryCommon.RyFiles.OpenUrl(Soft_ConstInfo.Soft_Url);
|
||||
}
|
||||
|
||||
private void FrmStart_Load(object sender, EventArgs e)
|
||||
{
|
||||
//Itrycn_Project.Itrycn_Db.CreateTable();
|
||||
LiveUpdate.RyUpdate update = new LiveUpdate.RyUpdate(Soft_ConstInfo.Update_Url);
|
||||
update.CheckUpdate();
|
||||
}
|
||||
/// <summary>
|
||||
/// 添加日志
|
||||
/// </summary>
|
||||
/// <param name="text"></param>
|
||||
private void AddLogs(string text)
|
||||
/// <param name="log"></param>
|
||||
public void AddLog(string log)
|
||||
{
|
||||
AddLog(log, "", Color.Black);
|
||||
}
|
||||
/// <summary>
|
||||
/// 添加日志
|
||||
/// </summary>
|
||||
/// <param name="log"></param>
|
||||
/// <param name="color"></param>
|
||||
public void AddLog(string log, Color color)
|
||||
{
|
||||
AddLog(log, "", color);
|
||||
}
|
||||
/// <summary>
|
||||
/// 添加日志
|
||||
/// </summary>
|
||||
/// <param name="log"></param>
|
||||
/// <param name="tag"></param>
|
||||
/// <param name="color"></param>
|
||||
public void AddLog(string log, string tag, Color color)
|
||||
{
|
||||
try
|
||||
{
|
||||
this.Invoke(new Action(() =>
|
||||
{
|
||||
var count = LvLogs.GetItemCount();
|
||||
if (count > MaxLogsCount)
|
||||
{
|
||||
LvLogs.RemoveObject(LvLogs.GetModelObject(count - 1));
|
||||
}
|
||||
LvLogs.InsertObjects(0, new LogInfo[] { new LogInfo() { LogTime = DateTime.Now, LogText = log, LogTag = tag, Color = color } });
|
||||
OlvLogTime.Text = "时间(" + LvLogs.GetItemCount() + ")";
|
||||
}));
|
||||
}
|
||||
catch { }
|
||||
}
|
||||
/// <summary>
|
||||
/// 显示状态
|
||||
/// </summary>
|
||||
/// <param name="state"></param>
|
||||
private void ShowState(string state)
|
||||
{
|
||||
this.Invoke(new Action(() =>
|
||||
{
|
||||
LvLogs.AddObject(new LogInfo() { LogText = text, LogTime = DateTime.Now.ToString("yyyy-MM-dd dddd HH:mm:ss") });
|
||||
TabLogs.Text = "日志("+LvLogs.GetItemCount()+")";
|
||||
TsState.Text = "状态:" + state;
|
||||
}));
|
||||
}
|
||||
bool IsRunning = false;
|
||||
|
@ -152,7 +102,6 @@ namespace Itrycn_Project2
|
|||
{
|
||||
if (IsRunning) { IsExit = true; return; }
|
||||
IsRunning = true;
|
||||
Soft_MemInfo.IsCanCloseForm = false;
|
||||
BtnScan.Text = "停止";
|
||||
LvCbResult.ClearObjects();
|
||||
LvLogs.ClearObjects();
|
||||
|
@ -163,13 +112,13 @@ namespace Itrycn_Project2
|
|||
th.Start();
|
||||
void Start()
|
||||
{
|
||||
List<ItemInfo> list = new List<ItemInfo>();
|
||||
//RyWeb.QuickWeb ry3h3 = new RyWeb.QuickWeb();
|
||||
//将扫描的代码写在下面
|
||||
|
||||
//↑将扫描的代码写在上面
|
||||
IsExit = false;
|
||||
IsRunning = false;
|
||||
Soft_MemInfo.IsCanCloseForm = true;
|
||||
this.Invoke(new Action(() =>
|
||||
{
|
||||
//LvCbResult.AddObjects(list);
|
||||
|
@ -190,8 +139,31 @@ namespace Itrycn_Project2
|
|||
/// </summary>
|
||||
class LogInfo
|
||||
{
|
||||
/// <summary>
|
||||
/// 日志时间
|
||||
/// </summary>
|
||||
public DateTime LogTime { get; set; } = DateTime.Now;
|
||||
/// <summary>
|
||||
/// 日志内容
|
||||
/// </summary>
|
||||
public string LogText { get; set; }
|
||||
public string LogTime { get; set; }
|
||||
/// <summary>
|
||||
/// 日志Tag
|
||||
/// </summary>
|
||||
public string LogTag { get; set; }
|
||||
/// <summary>
|
||||
/// 日志文字颜色
|
||||
/// </summary>
|
||||
public Color Color { get; set; } = Color.Black;
|
||||
}
|
||||
class ItemInfo
|
||||
{
|
||||
public string Name { get; set; } = "";
|
||||
public DateTime AddTime { get; set; }
|
||||
}
|
||||
private void 导出日志ToolStripMenuItem_Click(object sender, EventArgs e)
|
||||
{
|
||||
LvLogs.CopyObjectsToClipboard();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -117,20 +117,11 @@
|
|||
<resheader name="writer">
|
||||
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</resheader>
|
||||
<metadata name="notifyIcon1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
||||
<value>17, 17</value>
|
||||
</metadata>
|
||||
<metadata name="MenuTray.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
||||
<value>135, 17</value>
|
||||
</metadata>
|
||||
<metadata name="menuStrip1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
||||
<value>246, 17</value>
|
||||
<metadata name="MenuLogs.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
||||
<value>144, 19</value>
|
||||
</metadata>
|
||||
<metadata name="statusStrip1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
||||
<value>366, 17</value>
|
||||
</metadata>
|
||||
<metadata name="MenuLogs.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
||||
<value>487, 17</value>
|
||||
<value>23, 19</value>
|
||||
</metadata>
|
||||
<metadata name="$this.TrayHeight" type="System.Int32, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
|
||||
<value>54</value>
|
||||
|
|
|
@ -10,7 +10,7 @@ using System.Runtime.InteropServices;
|
|||
[assembly: AssemblyConfiguration("")]
|
||||
[assembly: AssemblyCompany("")]
|
||||
[assembly: AssemblyProduct("Itrycn_Project")]
|
||||
[assembly: AssemblyCopyright("Copyright © 2021")]
|
||||
[assembly: AssemblyCopyright("Copyright © 2022")]
|
||||
[assembly: AssemblyTrademark("")]
|
||||
[assembly: AssemblyCulture("")]
|
||||
|
||||
|
|
|
@ -125,6 +125,8 @@ namespace ryCommon
|
|||
// 修正部分文字
|
||||
if (chrAsc == -9254) // 修正“圳”字
|
||||
pyString += "Zhen";
|
||||
else if (chrAsc == -2354) // 修正“鑫”字
|
||||
pyString += "Xin";
|
||||
else
|
||||
{
|
||||
for (int i = (pyValue.Length - 1); i >= 0; i--)
|
||||
|
@ -237,6 +239,8 @@ namespace ryCommon
|
|||
// 修正部分文字
|
||||
if (chrAsc == -9254) // 修正“圳”字
|
||||
pyString += "z";
|
||||
else if (chrAsc == -2354) // 修正“鑫”字
|
||||
pyString += "x";
|
||||
else
|
||||
{
|
||||
for (int i = (pyValue.Length - 1); i >= 0; i--)
|
||||
|
|
|
@ -202,10 +202,21 @@ namespace ryCommon
|
|||
/// <returns></returns>
|
||||
static public string ToNString(this decimal input)
|
||||
{
|
||||
var str= input.ToString();
|
||||
if (str.IndexOfEx(".") >= 0) {
|
||||
str= str.TrimEnd('0');
|
||||
if(str.EndsWith("."))
|
||||
return ToNString(input,"");
|
||||
}
|
||||
/// <summary>
|
||||
/// 将数字转换成字符串,小数点末尾后面不包含0
|
||||
/// </summary>
|
||||
/// <param name="input"></param>
|
||||
/// <param name="format"></param>
|
||||
/// <returns></returns>
|
||||
static public string ToNString(this decimal input,string format)
|
||||
{
|
||||
var str = format.Length==0? input.ToString(): input.ToString(format);
|
||||
if (str.IndexOfEx(".") >= 0)
|
||||
{
|
||||
str = str.TrimEnd('0');
|
||||
if (str.EndsWith("."))
|
||||
{
|
||||
str = str.Substring(0, str.Length - 1);
|
||||
}
|
||||
|
@ -219,7 +230,17 @@ namespace ryCommon
|
|||
/// <returns></returns>
|
||||
static public string ToNString(this double input)
|
||||
{
|
||||
var str = input.ToString();
|
||||
return ToNString(input, "");
|
||||
}
|
||||
/// <summary>
|
||||
/// 将数字转换成字符串,小数点末尾后面不包含0
|
||||
/// </summary>
|
||||
/// <param name="input"></param>
|
||||
/// <param name="format"></param>
|
||||
/// <returns></returns>
|
||||
static public string ToNString(this double input,string format)
|
||||
{
|
||||
var str = format.Length == 0 ? input.ToString() : input.ToString(format);
|
||||
if (str.IndexOfEx(".") >= 0)
|
||||
{
|
||||
str = str.TrimEnd('0');
|
||||
|
@ -336,7 +357,61 @@ namespace ryCommon
|
|||
catch { return 0d; }
|
||||
}
|
||||
/// <summary>
|
||||
/// 转换DateTime类型到日期时间字符串
|
||||
/// 判断时间是否在指定时间上
|
||||
/// </summary>
|
||||
/// <param name="input"></param>
|
||||
/// <param name="Hour"></param>
|
||||
/// <param name="Minute"></param>
|
||||
/// <returns></returns>
|
||||
static public bool IsInTime(this DateTime input,int Hour,int Minute)
|
||||
{
|
||||
if(input == null) { return false; }
|
||||
if(input.Hour==Hour && input.Minute == Minute) { return true; }
|
||||
return false;
|
||||
}
|
||||
/// <summary>
|
||||
/// 判断时间是否在指定时间上
|
||||
/// </summary>
|
||||
/// <param name="input"></param>
|
||||
/// <param name="Hour"></param>
|
||||
/// <param name="Minute"></param>
|
||||
/// <param name="Second"></param>
|
||||
/// <returns></returns>
|
||||
static public bool IsInTime(this DateTime input, int Hour, int Minute,int Second)
|
||||
{
|
||||
if (input == null) { return false; }
|
||||
if (input.Hour == Hour && input.Minute == Minute && input.Second== Second) { return true; }
|
||||
return false;
|
||||
}
|
||||
/// <summary>
|
||||
/// 判断时间是否在指定日期
|
||||
/// </summary>
|
||||
/// <param name="input"></param>
|
||||
/// <param name="Month"></param>
|
||||
/// <param name="Day"></param>
|
||||
/// <returns></returns>
|
||||
static public bool IsInDay(this DateTime input, int Month, int Day)
|
||||
{
|
||||
if (input == null) { return false; }
|
||||
if (input.Month == Month && input.Day == Day) { return true; }
|
||||
return false;
|
||||
}
|
||||
/// <summary>
|
||||
/// 判断时间是否在指定日期
|
||||
/// </summary>
|
||||
/// <param name="input"></param>
|
||||
/// <param name="Year"></param>
|
||||
/// <param name="Month"></param>
|
||||
/// <param name="Day"></param>
|
||||
/// <returns></returns>
|
||||
static public bool IsInDay(this DateTime input,int Year, int Month, int Day)
|
||||
{
|
||||
if (input == null) { return false; }
|
||||
if (input.Year == Year && input.Month == Month && input.Day == Day) { return true; }
|
||||
return false;
|
||||
}
|
||||
/// <summary>
|
||||
/// 转换DateTime类型到日期时间字符串(例如 2000-01-01 08:08:08)
|
||||
/// </summary>
|
||||
/// <param name="input"></param>
|
||||
/// <returns></returns>
|
||||
|
@ -345,7 +420,7 @@ namespace ryCommon
|
|||
return input.ToString("yyyy-MM-dd HH:mm:ss");
|
||||
}
|
||||
/// <summary>
|
||||
/// 转换DateTime类型到日期字符串
|
||||
/// 转换DateTime类型到日期字符串(例如 2000-01-01)
|
||||
/// </summary>
|
||||
/// <param name="input"></param>
|
||||
/// <returns></returns>
|
||||
|
@ -354,7 +429,7 @@ namespace ryCommon
|
|||
return input.ToString("yyyy-MM-dd");
|
||||
}
|
||||
/// <summary>
|
||||
/// 转换DateTime类型到日期星期字符串
|
||||
/// 转换DateTime类型到日期星期字符串(例如 2000-01-01 星期六)
|
||||
/// </summary>
|
||||
/// <param name="input"></param>
|
||||
/// <returns></returns>
|
||||
|
@ -673,5 +748,86 @@ namespace ryCommon
|
|||
}
|
||||
catch { return false; }
|
||||
}
|
||||
/// <summary>
|
||||
/// 根据表单字段名,获取对应的值
|
||||
/// </summary>
|
||||
/// <param name="input"></param>
|
||||
/// <param name="Name"></param>
|
||||
/// <param name="defValue"></param>
|
||||
/// <returns></returns>
|
||||
static public string Get(this Tuple<string, IEnumerable<KeyValuePair<string, string>>> input,string Name,string defValue)
|
||||
{
|
||||
if (input == null) { return defValue; }
|
||||
try
|
||||
{
|
||||
return RyWeb.WebDecode.GetParam(input, Name, defValue);
|
||||
}
|
||||
catch { return defValue; }
|
||||
}
|
||||
/// <summary>
|
||||
/// 根据表单字段名,获取对应的值
|
||||
/// </summary>
|
||||
/// <param name="input"></param>
|
||||
/// <param name="Name"></param>
|
||||
/// <returns></returns>
|
||||
static public string Get(this Tuple<string, IEnumerable<KeyValuePair<string, string>>> input, string Name)
|
||||
{
|
||||
return input.Get(Name, "");
|
||||
}
|
||||
/// <summary>
|
||||
/// 根据表单字段名,获取对应的值
|
||||
/// </summary>
|
||||
/// <param name="input"></param>
|
||||
/// <param name="Name"></param>
|
||||
/// <param name="defValue"></param>
|
||||
/// <returns></returns>
|
||||
static public int Get(this Tuple<string, IEnumerable<KeyValuePair<string, string>>> input, string Name,int defValue)
|
||||
{
|
||||
return input.Get(Name, defValue.ToString()).ToInt();
|
||||
}
|
||||
/// <summary>
|
||||
/// 根据表单字段名,获取对应的值
|
||||
/// </summary>
|
||||
/// <param name="input"></param>
|
||||
/// <param name="Name"></param>
|
||||
/// <param name="defValue"></param>
|
||||
/// <returns></returns>
|
||||
static public long Get(this Tuple<string, IEnumerable<KeyValuePair<string, string>>> input, string Name, long defValue)
|
||||
{
|
||||
return input.Get(Name, defValue.ToString()).ToInt64();
|
||||
}
|
||||
/// <summary>
|
||||
/// 根据表单字段名,获取对应的值
|
||||
/// </summary>
|
||||
/// <param name="input"></param>
|
||||
/// <param name="Name"></param>
|
||||
/// <param name="defValue"></param>
|
||||
/// <returns></returns>
|
||||
static public decimal Get(this Tuple<string, IEnumerable<KeyValuePair<string, string>>> input, string Name, decimal defValue)
|
||||
{
|
||||
return input.Get(Name, defValue.ToString()).ToDecimal();
|
||||
}
|
||||
/// <summary>
|
||||
/// 根据表单字段名,获取对应的值
|
||||
/// </summary>
|
||||
/// <param name="input"></param>
|
||||
/// <param name="Name"></param>
|
||||
/// <param name="defValue"></param>
|
||||
/// <returns></returns>
|
||||
static public double Get(this Tuple<string, IEnumerable<KeyValuePair<string, string>>> input, string Name, double defValue)
|
||||
{
|
||||
return input.Get(Name, defValue.ToString()).ToDouble();
|
||||
}
|
||||
/// <summary>
|
||||
/// 根据表单字段名,获取对应的值
|
||||
/// </summary>
|
||||
/// <param name="input"></param>
|
||||
/// <param name="Name"></param>
|
||||
/// <param name="defValue"></param>
|
||||
/// <returns></returns>
|
||||
static public bool Get(this Tuple<string, IEnumerable<KeyValuePair<string, string>>> input, string Name, bool defValue)
|
||||
{
|
||||
return input.Get(Name, defValue.ToString()).ToBool();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
296
Source/MyDb/FileFuns/BigFileOp.cs
Normal file
296
Source/MyDb/FileFuns/BigFileOp.cs
Normal file
|
@ -0,0 +1,296 @@
|
|||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.ComponentModel;
|
||||
using System.IO;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
|
||||
namespace ryCommon
|
||||
{
|
||||
/// <summary>
|
||||
/// 大文件与批量文件操作类,支持中途取消操作,本类需要实例化操作
|
||||
/// </summary>
|
||||
public class BigFileOp
|
||||
{
|
||||
/// <summary>
|
||||
/// 传输进度
|
||||
/// </summary>
|
||||
/// <param name="curValue">当前传输完成的值</param>
|
||||
/// <param name="totalValue">全部值,为-1表示无法获取</param>
|
||||
/// <param name="percent">当前传输的百分比,为-1表示无法获取</param>
|
||||
public delegate void TranProgressHandler(long curValue, long totalValue, double percent);
|
||||
/// <summary>
|
||||
/// 传输进度
|
||||
/// </summary>
|
||||
public static event TranProgressHandler OnProgress;
|
||||
/// <summary>
|
||||
/// 取消事件
|
||||
/// </summary>
|
||||
public static event CancelEventHandler OnCanel;
|
||||
/// <summary>
|
||||
/// 大文件按流复制文件,支持自动创建目标文件夹。 true:复制成功 false:复制失败
|
||||
/// </summary>
|
||||
/// <param name="soucrePath">原始文件路径</param>
|
||||
/// <param name="targetPath">复制目标文件路径</param>
|
||||
/// <returns></returns>
|
||||
public bool CopyBigFile(string soucrePath, string targetPath)
|
||||
{
|
||||
try
|
||||
{
|
||||
var TranSize = 1024 * 1024 * 2;//每次读取2M
|
||||
//读取复制文件流
|
||||
using (FileStream fsRead = new FileStream(soucrePath, FileMode.Open, FileAccess.Read))
|
||||
{
|
||||
if (RyFiles.DeleteFile(targetPath) != 0)
|
||||
{
|
||||
return false;
|
||||
}
|
||||
RyFiles.CreateDirectory(System.IO.Path.GetDirectoryName(targetPath));
|
||||
OnProgress?.Invoke(0, fsRead.Length, 0);
|
||||
var totalSize = fsRead.Length;
|
||||
//写入文件复制流
|
||||
using (FileStream fsWrite = new FileStream(targetPath, FileMode.OpenOrCreate, FileAccess.Write))
|
||||
{
|
||||
byte[] buffer = new byte[TranSize];
|
||||
var curSize = 0L;
|
||||
CancelEventArgs e1 = new CancelEventArgs();
|
||||
//可能文件比较大,要循环读取,每次读取2M
|
||||
while (true)
|
||||
{
|
||||
if (OnCanel != null)
|
||||
{
|
||||
OnCanel?.Invoke(this, e1);
|
||||
if (e1.Cancel) {
|
||||
fsWrite.Close();
|
||||
RyFiles.DeleteFile(targetPath);
|
||||
break;
|
||||
}
|
||||
}
|
||||
//每次读取的数据 n:是每次读取到的实际数据大小
|
||||
int n = fsRead.Read(buffer, 0, buffer.Count());
|
||||
//如果n=0说明读取的数据为空,已经读取到最后了,跳出循环
|
||||
if (n == 0)
|
||||
{
|
||||
break;
|
||||
}
|
||||
curSize += n;
|
||||
OnProgress?.Invoke(curSize, totalSize, totalSize == 0 ? 0 : curSize / (double)totalSize);
|
||||
//写入每次读取的实际数据大小
|
||||
fsWrite.Write(buffer, 0, n);
|
||||
}
|
||||
}
|
||||
OnProgress?.Invoke(totalSize, totalSize, 100);
|
||||
if (!System.IO.File.Exists(targetPath))
|
||||
{
|
||||
return false;
|
||||
}
|
||||
}
|
||||
return true;
|
||||
}
|
||||
catch
|
||||
{
|
||||
return false;
|
||||
}
|
||||
}
|
||||
/// <summary>
|
||||
/// 复制文件夹到目标文件夹,不支持进度事件,支持中途取消
|
||||
/// </summary>
|
||||
/// <param name="fromDir">源文件夹</param>
|
||||
/// <param name="ToDir">目标文件夹</param>
|
||||
/// <returns>返回复制操作是否成功的标识,成功返回0,负数表示复制失败的文件数量。1表示源文件夹不存在</returns>
|
||||
public int CopyFolder(string fromDir, string ToDir)
|
||||
{
|
||||
return CopyFolder(fromDir,ToDir,0,-1,out _);
|
||||
}
|
||||
/// <summary>
|
||||
/// 复制文件夹到目标文件夹,支持进度事件,支持中途取消
|
||||
/// </summary>
|
||||
/// <param name="fromDir">源文件夹</param>
|
||||
/// <param name="ToDir">目标文件夹</param>
|
||||
/// <returns>返回复制操作是否成功的标识,成功返回0,负数表示复制失败的文件数量。1表示源文件夹不存在</returns>
|
||||
public int CopyFolderByProgress(string fromDir, string ToDir)
|
||||
{
|
||||
var FileCount = GetFilesCount(fromDir);
|
||||
return CopyFolder(fromDir, ToDir, 0, FileCount, out _);
|
||||
}
|
||||
/// <summary>
|
||||
/// 复制文件夹到目标文件夹,支持中途取消
|
||||
/// </summary>
|
||||
/// <param name="fromDir">源文件夹</param>
|
||||
/// <param name="ToDir">目标文件夹</param>
|
||||
/// <param name="StartCount">初始的文件数量</param>
|
||||
/// <param name="TotalCount">总数量,如果不计算,则使用-1</param>
|
||||
/// <param name="Count">操作的数量,包含成功的和失败的</param>
|
||||
/// <returns>返回复制操作是否成功的标识,成功返回0,负数表示复制失败的文件数量。1表示源文件夹不存在</returns>
|
||||
private int CopyFolder(string fromDir, string ToDir,int StartCount,int TotalCount, out int Count)
|
||||
{
|
||||
Count = StartCount;
|
||||
var _fromDir = fromDir.TrimEnd('\\');
|
||||
var _ToDir = ToDir.TrimEnd('\\');
|
||||
if (!Directory.Exists(_fromDir)) { return 1; }
|
||||
var files = Directory.GetFiles(fromDir);
|
||||
var error = 0;
|
||||
CancelEventArgs e1 = new CancelEventArgs();
|
||||
foreach (var file in files)
|
||||
{
|
||||
if (OnCanel != null)
|
||||
{
|
||||
OnCanel?.Invoke(this, e1);
|
||||
if (e1.Cancel) { break; }
|
||||
}
|
||||
if (!CopyBigFile(file, _ToDir + "\\" + Path.GetFileName(file)))
|
||||
{
|
||||
error++;
|
||||
}
|
||||
Count++;
|
||||
var percent = 0d;
|
||||
if (TotalCount>0) { percent = Count / (double)TotalCount; }
|
||||
else if (TotalCount == -1) { percent = -1; }
|
||||
OnProgress?.Invoke(Count, TotalCount, percent);
|
||||
}
|
||||
var dirs = Directory.GetDirectories(_fromDir);
|
||||
foreach (var dir in dirs)
|
||||
{
|
||||
int result = CopyFolder(dir, _ToDir + "\\" + Path.GetFileName(dir), Count, TotalCount, out var _Count);
|
||||
Count += _Count;
|
||||
if (OnCanel != null)
|
||||
{
|
||||
OnCanel?.Invoke(this, e1);
|
||||
if (e1.Cancel) { break; }
|
||||
}
|
||||
if (result > 0)
|
||||
{
|
||||
error++;
|
||||
}
|
||||
else if (result < 0)
|
||||
{
|
||||
error+=-result;
|
||||
}
|
||||
}
|
||||
return -error;
|
||||
}
|
||||
/// <summary>
|
||||
/// 获取文件夹中的文件数量
|
||||
/// </summary>
|
||||
/// <param name="Dir">文件夹路径</param>
|
||||
/// <returns>返回文件数量,中途取消则返回-1</returns>
|
||||
public int GetFilesCount(string Dir)
|
||||
{
|
||||
var _fromDir = Dir.TrimEnd('\\');
|
||||
if (!Directory.Exists(_fromDir)) { return 0; }
|
||||
var files = Directory.GetFiles(_fromDir);
|
||||
var count = 0;
|
||||
CancelEventArgs e1 = new CancelEventArgs();
|
||||
count += files.Length;
|
||||
var dirs = Directory.GetDirectories(_fromDir);
|
||||
foreach (var dir in dirs)
|
||||
{
|
||||
if (OnCanel != null)
|
||||
{
|
||||
OnCanel?.Invoke(this, e1);
|
||||
if (e1.Cancel) { count = -1; break; }
|
||||
}
|
||||
var result= GetFilesCount(dir);
|
||||
if (result == -1) { count = -1;break; }
|
||||
count+= result;
|
||||
}
|
||||
return count;
|
||||
}
|
||||
/// <summary>
|
||||
/// 获取文件夹的大小
|
||||
/// </summary>
|
||||
/// <param name="Dir">文件夹路径</param>
|
||||
/// <returns>返回文件数量,中途取消则返回-1</returns>
|
||||
public long GetFolderSize(string Dir)
|
||||
{
|
||||
var _fromDir = Dir.TrimEnd('\\');
|
||||
if (!Directory.Exists(_fromDir)) { return 0; }
|
||||
var files = Directory.GetFiles(_fromDir);
|
||||
var size = 0L;
|
||||
CancelEventArgs e1 = new CancelEventArgs();
|
||||
for (int i = 0; i < files.Length; i++)
|
||||
{
|
||||
if (OnCanel != null && i %5==0)
|
||||
{
|
||||
OnCanel?.Invoke(this, e1);
|
||||
if (e1.Cancel) { size = -1; break; }
|
||||
}
|
||||
size +=RyFiles.GetFileSize(files[i]);
|
||||
}
|
||||
var dirs = Directory.GetDirectories(_fromDir);
|
||||
foreach (var dir in dirs)
|
||||
{
|
||||
if (OnCanel != null)
|
||||
{
|
||||
OnCanel?.Invoke(this, e1);
|
||||
if (e1.Cancel) { size = -1; break; }
|
||||
}
|
||||
var result = GetFilesCount(dir);
|
||||
if (result == -1) { size = -1; break; }
|
||||
size += result;
|
||||
}
|
||||
return size;
|
||||
}
|
||||
/// <summary>
|
||||
/// 添加文件到指定文件夹,会进行自动重命名,并返回重命名后的文件名(含路径)
|
||||
/// </summary>
|
||||
/// <param name="filepath">要添加的文件路径</param>
|
||||
/// <param name="toFolder">要添加到的文件夹</param>
|
||||
/// <param name="RenameByTime">是否根据时间进行重命名</param>
|
||||
/// <param name="OK">返回是否成功执行</param>
|
||||
/// <returns>成功执行则返回路径,否则返回空</returns>
|
||||
public string AddFileToFolder(string filepath, string toFolder, bool RenameByTime, out bool OK)
|
||||
{
|
||||
OK = false;
|
||||
var _toFolder = toFolder.TrimEnd('\\');
|
||||
RyFiles.CreateDirectory(_toFolder);
|
||||
if (!System.IO.Directory.Exists(_toFolder)) { return ""; }
|
||||
if (!System.IO.File.Exists(filepath) && !System.IO.Directory.Exists(filepath)) { return ""; }
|
||||
var filename = System.IO.Path.GetFileName(filepath);
|
||||
if (RenameByTime) { filename = DateTime.Now.ToString("yyyyMMddHHmmss") + System.IO.Path.GetExtension(filepath); }
|
||||
if (!System.IO.File.Exists(_toFolder + "\\" + filename) && !System.IO.Directory.Exists(_toFolder + "\\" + filename))
|
||||
{
|
||||
if (CopyBigFile(filepath, _toFolder + "\\" + filename))
|
||||
{
|
||||
OK = true;
|
||||
return _toFolder + "\\" + filename;
|
||||
}
|
||||
return "";//如果复制失败,则返回空路径
|
||||
}
|
||||
else //如果目标路径已经存在同名文件
|
||||
{
|
||||
int index = 0;
|
||||
string filename_noext;
|
||||
if (RenameByTime) { filename_noext = DateTime.Now.ToString("yyyyMMddHHmmss"); }
|
||||
else { filename_noext = System.IO.Path.GetFileNameWithoutExtension(filepath); }
|
||||
var ext = System.IO.Path.GetExtension(filepath);
|
||||
CancelEventArgs e1 = new CancelEventArgs();
|
||||
while (index < 20) //最多重试20次
|
||||
{
|
||||
if (OnCanel != null)
|
||||
{
|
||||
OnCanel?.Invoke(this, e1);
|
||||
if (e1.Cancel)
|
||||
{
|
||||
break;
|
||||
}
|
||||
}
|
||||
Random rd = new Random(Guid.NewGuid().GetHashCode());
|
||||
if (RenameByTime) { filename_noext = DateTime.Now.ToString("yyyyMMddHHmmss"); }
|
||||
var to_path = _toFolder + "\\" + filename_noext + "_" + rd.Next(1000, 9999) + ext;
|
||||
if (!System.IO.File.Exists(to_path) && !System.IO.Directory.Exists(to_path))
|
||||
{
|
||||
if (CopyBigFile(filepath, to_path))
|
||||
{
|
||||
OK = true;
|
||||
return to_path;
|
||||
}
|
||||
return "";
|
||||
}
|
||||
index++;
|
||||
}
|
||||
return "";
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
|
@ -1,6 +1,7 @@
|
|||
using System;
|
||||
using System.Collections;
|
||||
using System.Collections.Generic;
|
||||
using System.ComponentModel;
|
||||
using System.Drawing;
|
||||
using System.Drawing.Imaging;
|
||||
using System.IO;
|
||||
|
@ -16,6 +17,7 @@ namespace ryCommon
|
|||
/// </summary>
|
||||
public class RyFiles
|
||||
{
|
||||
private static BigFileOp file_op = new BigFileOp();
|
||||
#region 【内部类型定义】
|
||||
private struct SHFILEOPSTRUCT
|
||||
{
|
||||
|
@ -285,6 +287,7 @@ namespace ryCommon
|
|||
/// <param name="sourceFileName">要复制的文件名</param>
|
||||
/// <param name="destinationFileName">复制到的目的文件名或路径</param>
|
||||
/// <returns></returns>
|
||||
[Obsolete("已过时,即将在将来移除该函数,请使用CopyBigFile代替")]
|
||||
public static int CopyFile(string sourceFileName, string destinationFileName)
|
||||
{
|
||||
string errorMsg = "";
|
||||
|
@ -353,66 +356,17 @@ namespace ryCommon
|
|||
/// <returns></returns>
|
||||
public static bool CopyBigFile(string soucrePath, string targetPath)
|
||||
{
|
||||
try
|
||||
{
|
||||
//读取复制文件流
|
||||
using (FileStream fsRead = new FileStream(soucrePath, FileMode.Open, FileAccess.Read))
|
||||
{
|
||||
//写入文件复制流
|
||||
using (FileStream fsWrite = new FileStream(targetPath, FileMode.OpenOrCreate, FileAccess.Write))
|
||||
{
|
||||
byte[] buffer = new byte[1024 * 1024 * 2]; //每次读取2M
|
||||
//可能文件比较大,要循环读取,每次读取2M
|
||||
while (true)
|
||||
{
|
||||
//每次读取的数据 n:是每次读取到的实际数据大小
|
||||
int n = fsRead.Read(buffer, 0, buffer.Count());
|
||||
//如果n=0说明读取的数据为空,已经读取到最后了,跳出循环
|
||||
if (n == 0)
|
||||
{
|
||||
break;
|
||||
}
|
||||
//写入每次读取的实际数据大小
|
||||
fsWrite.Write(buffer, 0, n);
|
||||
}
|
||||
}
|
||||
}
|
||||
return true;
|
||||
}
|
||||
catch
|
||||
{
|
||||
return false;
|
||||
}
|
||||
return file_op.CopyBigFile(soucrePath, targetPath);
|
||||
}
|
||||
/// <summary>
|
||||
/// 复制文件夹到目标文件夹
|
||||
/// 复制文件夹到目标文件夹(从3.0.2205.2601版本起已更换实现底层)
|
||||
/// </summary>
|
||||
/// <param name="fromDir">源文件夹</param>
|
||||
/// <param name="ToDir">目标文件夹</param>
|
||||
/// <returns>返回移动操作是否成功的标识,成功返回0,负数表示复制失败的文件数量。1表示源文件夹不存在</returns>
|
||||
/// <returns>返回复制操作是否成功的标识,成功返回0,负数表示复制失败的文件数量。1表示源文件夹不存在</returns>
|
||||
public static int CopyFolder(string fromDir, string ToDir)
|
||||
{
|
||||
var _fromDir = fromDir.TrimEnd('\\');
|
||||
var _ToDir=ToDir.TrimEnd('\\');
|
||||
if (!Directory.Exists(_fromDir)) { return 1; }
|
||||
var files = Directory.GetFiles(fromDir);
|
||||
var error = 0;
|
||||
foreach (var file in files)
|
||||
{
|
||||
if (CopyFile(file, _ToDir + "\\" + Path.GetFileName(file)) != 0)
|
||||
{
|
||||
error++;
|
||||
}
|
||||
}
|
||||
var dirs = Directory.GetDirectories(_fromDir);
|
||||
foreach (var dir in dirs)
|
||||
{
|
||||
if (CopyFolder(dir, _ToDir + "\\" + Path.GetFileName(dir)) > 0)
|
||||
{
|
||||
error++;
|
||||
}
|
||||
}
|
||||
return -error;
|
||||
return file_op.CopyFolder(fromDir, ToDir);
|
||||
}
|
||||
#endregion 【复制文件操作】
|
||||
|
||||
|
@ -661,10 +615,18 @@ namespace ryCommon
|
|||
/// <returns></returns>
|
||||
public static int OpenFile(string FilePath)
|
||||
{
|
||||
return RunFile(FilePath, "");
|
||||
}
|
||||
[DllImport("Kernel32", CharSet = CharSet.Unicode)]
|
||||
private static extern Int32 GetShortPathName(String path, StringBuilder shortPath, Int32 shortPathLength);
|
||||
if (System.IO.Directory.Exists(FilePath))
|
||||
{
|
||||
System.Diagnostics.Process.Start(FilePath);
|
||||
return 0;
|
||||
}
|
||||
else
|
||||
{
|
||||
return RunFile(FilePath, "");
|
||||
}
|
||||
}
|
||||
[DllImport("Kernel32", CharSet = CharSet.Unicode)]
|
||||
private static extern int GetShortPathName(String path, StringBuilder shortPath, Int32 shortPathLength);
|
||||
/// <summary>
|
||||
/// 打开文件夹并定位文件
|
||||
/// </summary>
|
||||
|
@ -722,7 +684,7 @@ namespace ryCommon
|
|||
/// </summary>
|
||||
/// <param name="path"></param>
|
||||
/// <param name="content"></param>
|
||||
public void AppendLogs(string path, string content)
|
||||
public static void AppendLogs(string path, string content)
|
||||
{
|
||||
AppendAllText(path, DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss") + "\t" + content);
|
||||
}
|
||||
|
@ -731,7 +693,7 @@ namespace ryCommon
|
|||
/// </summary>
|
||||
/// <param name="path"></param>
|
||||
/// <param name="content"></param>
|
||||
public void AppendAllText(string path, string content)
|
||||
public static void AppendAllText(string path, string content)
|
||||
{
|
||||
if (!System.IO.File.Exists(path))
|
||||
{
|
||||
|
@ -822,10 +784,7 @@ namespace ryCommon
|
|||
/// <param name="encoding"></param>
|
||||
public static void WriteAllText(string path, string content, Encoding encoding)
|
||||
{
|
||||
if (!System.IO.Directory.Exists(System.IO.Path.GetDirectoryName(path)))
|
||||
{
|
||||
System.IO.Directory.CreateDirectory(System.IO.Path.GetDirectoryName(path));
|
||||
}
|
||||
CreateDirectory(System.IO.Path.GetDirectoryName(path));
|
||||
System.IO.File.WriteAllText(path, content, encoding);
|
||||
}
|
||||
/// <summary>
|
||||
|
@ -856,7 +815,7 @@ namespace ryCommon
|
|||
/// </summary>
|
||||
/// <param name="path"></param>
|
||||
/// <returns></returns>
|
||||
public static Int64 GetFileSize(string path)
|
||||
public static long GetFileSize(string path)
|
||||
{
|
||||
try
|
||||
{
|
||||
|
@ -875,48 +834,7 @@ namespace ryCommon
|
|||
/// <returns>成功执行则返回路径,否则返回空</returns>
|
||||
public static string AddFileToFolder(string filepath,string toFolder,bool RenameByTime, out bool OK)
|
||||
{
|
||||
OK = false;
|
||||
var _toFolder = toFolder.TrimEnd('\\');
|
||||
CreateDirectory(_toFolder);
|
||||
if (!System.IO.Directory.Exists(_toFolder)) { return ""; }
|
||||
if (!System.IO.File.Exists(filepath) && !System.IO.Directory.Exists(filepath)) { return ""; }
|
||||
var filename = System.IO.Path.GetFileName(filepath);
|
||||
if (RenameByTime) { filename = DateTime.Now.ToString("yyyyMMddHHmmss") + System.IO.Path.GetExtension(filepath); }
|
||||
if(!System.IO.File.Exists(_toFolder+"\\"+ filename) && !System.IO.Directory.Exists(_toFolder + "\\" + filename)) {
|
||||
string errorMsg = "";
|
||||
if (ToMoveOrCopy(WFunc.FO_COPY, filepath, _toFolder + "\\" + filename, false, false, false, ref errorMsg) == 0)
|
||||
{
|
||||
OK = true;
|
||||
return _toFolder + "\\" + filename;
|
||||
}
|
||||
return "";//如果复制失败,则返回空路径
|
||||
}
|
||||
else //如果目标路径已经存在同名文件
|
||||
{
|
||||
int index = 0;
|
||||
string filename_noext;
|
||||
if (RenameByTime) { filename_noext = DateTime.Now.ToString("yyyyMMddHHmmss"); }
|
||||
else { filename_noext = System.IO.Path.GetFileNameWithoutExtension(filepath); }
|
||||
var ext= System.IO.Path.GetExtension(filepath);
|
||||
while (index<20) //最多重试20次
|
||||
{
|
||||
Random rd = new Random(Guid.NewGuid().GetHashCode());
|
||||
if (RenameByTime) { filename_noext = DateTime.Now.ToString("yyyyMMddHHmmss"); }
|
||||
var to_path = _toFolder + "\\" + filename_noext+"_"+ rd.Next(1000, 9999)+ ext;
|
||||
if(!System.IO.File.Exists(to_path) && !System.IO.Directory.Exists(to_path))
|
||||
{
|
||||
string errorMsg = "";
|
||||
if (ToMoveOrCopy(WFunc.FO_COPY, filepath, to_path, false, false, false, ref errorMsg) == 0)
|
||||
{
|
||||
OK = true;
|
||||
return to_path;
|
||||
}
|
||||
return "";
|
||||
}
|
||||
index++;
|
||||
}
|
||||
return "";
|
||||
}
|
||||
return file_op.AddFileToFolder(filepath, toFolder, RenameByTime,out OK);
|
||||
}
|
||||
/// <summary>
|
||||
/// 获取文件大小字符串
|
||||
|
|
|
@ -267,9 +267,20 @@ namespace ryCommonDb
|
|||
string valueSQL = "(";
|
||||
for (int i = 0; i <List.Count; i++)
|
||||
{
|
||||
SQLIitem item = (SQLIitem)List[i];
|
||||
SQLIitem item = List[i];
|
||||
tmpFieldSQL +=item.Field + ",";
|
||||
valueSQL += "@" + item.Field.TrimStart('[').TrimEnd(']') + ",";
|
||||
if (item.value is long int1)
|
||||
{
|
||||
valueSQL += int1 + ",";
|
||||
}
|
||||
else if (item.value is int @int)
|
||||
{
|
||||
valueSQL += @int + ",";
|
||||
}
|
||||
else
|
||||
{
|
||||
valueSQL += "@" + item.Field.TrimStart('[').TrimEnd(']') + ",";
|
||||
}
|
||||
}
|
||||
for (int i = 0; i < List_Nullparam.Count; i++)
|
||||
{
|
||||
|
@ -287,13 +298,19 @@ namespace ryCommonDb
|
|||
string tmpSQL = "update " + TableName + " set ";
|
||||
for (int i = 0; i < List.Count; i++)
|
||||
{
|
||||
SQLIitem item = (SQLIitem)List[i];
|
||||
tmpSQL += item.Field + "=" + "@" + item.Field.TrimStart('[').TrimEnd(']') + ",";
|
||||
}
|
||||
for (int i = 0; i < List_calcparam.Count; i++)
|
||||
{
|
||||
SQLIitem item = (SQLIitem)List_calcparam[i];
|
||||
tmpSQL += item.Field + "=" + item.value + ",";
|
||||
SQLIitem item = List[i];
|
||||
if (item.value is long int1)
|
||||
{
|
||||
tmpSQL += item.Field + "=" + int1 + ",";
|
||||
}
|
||||
else if (item.value is int @int)
|
||||
{
|
||||
tmpSQL += item.Field + "=" + @int + ",";
|
||||
}
|
||||
else
|
||||
{
|
||||
tmpSQL += item.Field + "=" + "@" + item.Field.TrimStart('[').TrimEnd(']') + ",";
|
||||
}
|
||||
}
|
||||
for (int i = 0; i < List_Nullparam.Count; i++)
|
||||
{
|
||||
|
@ -319,12 +336,12 @@ namespace ryCommonDb
|
|||
System.Data.OleDb.OleDbParameter[] defPar = new System.Data.OleDb.OleDbParameter[List.Count+ List_param.Count];
|
||||
for (int i = 0; i < List.Count; i++)
|
||||
{
|
||||
SQLIitem item = (SQLIitem)List[i];
|
||||
SQLIitem item = List[i];
|
||||
defPar[i] =new System.Data.OleDb.OleDbParameter("@"+item.Field, item.value);
|
||||
}
|
||||
for (int i = List.Count; i < List.Count + List_param.Count; i++)
|
||||
{
|
||||
SQLIitem item = (SQLIitem)List_param[i- List.Count];
|
||||
SQLIitem item = List_param[i- List.Count];
|
||||
defPar[i] = new System.Data.OleDb.OleDbParameter("@" + item.Field.TrimStart('@'), item.value);
|
||||
}
|
||||
return defPar;
|
||||
|
|
|
@ -75,6 +75,7 @@
|
|||
<Compile Include="DbManage\VarExtension.cs" />
|
||||
<Compile Include="FileFuns\ElevatedDragDropManager.cs" />
|
||||
<Compile Include="FileFuns\FileInfo.cs" />
|
||||
<Compile Include="FileFuns\BigFileOp.cs" />
|
||||
<Compile Include="FileFuns\Hosts.cs" />
|
||||
<Compile Include="FileFuns\SoundPlay.cs" />
|
||||
<Compile Include="FileFuns\RyFiles.cs" />
|
||||
|
@ -136,6 +137,7 @@
|
|||
<DependentUpon>Resources.resx</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="RyWeb\HttpHelper.cs" />
|
||||
<Compile Include="RyWeb\HttpServer.cs" />
|
||||
<Compile Include="RyWeb\QuickWeb.cs" />
|
||||
<Compile Include="RyWeb\WebDecode.cs" />
|
||||
<Compile Include="SafeCheck\AES.cs" />
|
||||
|
|
|
@ -32,5 +32,5 @@ using System;
|
|||
//可以指定所有这些值,也可以使用“生成号”和“修订号”的默认值,
|
||||
// 方法是按如下所示使用“*”: :
|
||||
// [assembly: AssemblyVersion("1.0.*")]
|
||||
[assembly: AssemblyVersion("3.0.2202.0901")]
|
||||
[assembly: AssemblyFileVersion("3.0.2202.0901")]
|
||||
[assembly: AssemblyVersion("3.0.2205.2601")]
|
||||
[assembly: AssemblyFileVersion("3.0.2205.2601")]
|
256
Source/MyDb/RyWeb/HttpServer.cs
Normal file
256
Source/MyDb/RyWeb/HttpServer.cs
Normal file
|
@ -0,0 +1,256 @@
|
|||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.ComponentModel;
|
||||
using System.IO;
|
||||
using System.Linq;
|
||||
using System.Net;
|
||||
using System.Text;
|
||||
using System.Threading;
|
||||
using ryCommon;
|
||||
namespace RyWeb
|
||||
{
|
||||
/// <summary>
|
||||
/// Http服务器类
|
||||
/// </summary>
|
||||
public class HttpServer
|
||||
{
|
||||
/// <summary>
|
||||
///
|
||||
/// </summary>
|
||||
/// <param name="sender"></param>
|
||||
/// <param name="e"></param>
|
||||
public delegate void HttpRequestHandler(object sender, HttpRequest e);
|
||||
/// <summary>
|
||||
/// 当收到Get事件时激发
|
||||
/// </summary>
|
||||
[Description("当收到Get事件时激发")]
|
||||
public event HttpRequestHandler OnHandleGETRequest;
|
||||
/// <summary>
|
||||
/// 当收到Post事件时激发
|
||||
/// </summary>
|
||||
[Description("当收到Post事件时激发")]
|
||||
public event HttpRequestHandler OnHandlePOSTRequest;
|
||||
private HttpListener listener;
|
||||
private Thread httpThread;
|
||||
private volatile bool stopped = false;
|
||||
/// <summary>
|
||||
/// 监听的主机,默认是localhost
|
||||
/// </summary>
|
||||
public string ListenerHost { get; set; } = "localhost";
|
||||
private int port = 19955;
|
||||
/// <summary>
|
||||
/// 最后一次错误信息
|
||||
/// </summary>
|
||||
public string ErrorMessage { get;internal set; } = "";
|
||||
/// <summary>
|
||||
/// 在此端口建立Http服务类
|
||||
/// </summary>
|
||||
/// <param name="port">端口号</param>
|
||||
public HttpServer(int port)
|
||||
{
|
||||
isrunning = false;
|
||||
stopped = false;
|
||||
try
|
||||
{
|
||||
listener = new HttpListener();
|
||||
this.port= port;
|
||||
listener.Prefixes.Add("http://"+ ListenerHost + ":" + port + "/");
|
||||
//listener.Prefixes.Add(HTTPS_PREFIX + HTTPS_PORT + "/");
|
||||
listener.Start();
|
||||
httpThread = new Thread(new ThreadStart(Run));
|
||||
httpThread.Start();
|
||||
isrunning = true;
|
||||
}
|
||||
catch(Exception ex) { ErrorMessage = ex.Message; }
|
||||
}
|
||||
private bool isrunning = false;
|
||||
/// <summary>
|
||||
///
|
||||
/// </summary>
|
||||
/// <returns></returns>
|
||||
public bool IsRunning()
|
||||
{
|
||||
return isrunning;
|
||||
}
|
||||
/// <summary>
|
||||
/// 开始服务
|
||||
/// </summary>
|
||||
public void Start()
|
||||
{
|
||||
isrunning = false;
|
||||
stopped = false;
|
||||
try
|
||||
{
|
||||
if (listener == null || !listener.IsListening)
|
||||
{
|
||||
listener = new HttpListener();
|
||||
listener.Prefixes.Add("http://"+ ListenerHost + ":" + port + "/");
|
||||
//listener.Prefixes.Add(HTTPS_PREFIX + HTTPS_PORT + "/");
|
||||
listener.Start();
|
||||
}
|
||||
if (httpThread == null || httpThread.ThreadState != ThreadState.Running)
|
||||
{
|
||||
httpThread = new Thread(new ThreadStart(Run));
|
||||
httpThread.Start();
|
||||
}
|
||||
isrunning = true;
|
||||
}
|
||||
catch(Exception ex) { ErrorMessage = ex.Message; }
|
||||
}
|
||||
/// <summary>
|
||||
/// 退出服务
|
||||
/// </summary>
|
||||
public void Exit()
|
||||
{
|
||||
stopped = true;
|
||||
try
|
||||
{
|
||||
if (listener != null)
|
||||
{
|
||||
listener.Stop();
|
||||
listener.Close();
|
||||
}
|
||||
if (httpThread != null)
|
||||
{
|
||||
httpThread.Interrupt();
|
||||
}
|
||||
listener = null;
|
||||
httpThread = null;
|
||||
}
|
||||
catch (Exception ex) { ErrorMessage = ex.Message; }
|
||||
isrunning = false;
|
||||
}
|
||||
/// <summary>
|
||||
///
|
||||
/// </summary>
|
||||
~HttpServer()
|
||||
{
|
||||
Exit();
|
||||
}
|
||||
private void Run()
|
||||
{
|
||||
while (!stopped)
|
||||
{
|
||||
try
|
||||
{
|
||||
var r = listener.BeginGetContext(new AsyncCallback(RequestHandler), listener);
|
||||
r.AsyncWaitHandle.WaitOne();
|
||||
r.AsyncWaitHandle.Close();
|
||||
}
|
||||
catch (ThreadInterruptedException e1) { ErrorMessage = e1.Message; }
|
||||
catch (HttpListenerException e2)
|
||||
{
|
||||
ErrorMessage = e2.Message;
|
||||
}
|
||||
}
|
||||
}
|
||||
private void RequestHandler(IAsyncResult r)
|
||||
{
|
||||
try
|
||||
{
|
||||
_RequestHandler(r);
|
||||
}
|
||||
catch (Exception e)
|
||||
{
|
||||
ErrorMessage = e.Message;
|
||||
}
|
||||
}
|
||||
private void _RequestHandler(IAsyncResult r)
|
||||
{
|
||||
if (stopped) return;
|
||||
var l = (HttpListener)r.AsyncState;
|
||||
var ctx = l.EndGetContext(r);
|
||||
var req = ctx.Request;
|
||||
var resp = ctx.Response;
|
||||
var html = "";
|
||||
if(req.HttpMethod=="GET")
|
||||
{
|
||||
HttpRequest e = new HttpRequest();
|
||||
e.Url = req.Url;
|
||||
e.UrlReferrer = req.UrlReferrer;
|
||||
OnHandleGETRequest?.Invoke(this,e);
|
||||
resp.StatusCode = (int)e.StatusCode;
|
||||
html = e.ReturnHtml;
|
||||
}
|
||||
else if(req.HttpMethod=="POST")
|
||||
{
|
||||
HttpRequest e = new HttpRequest
|
||||
{
|
||||
Url = req.Url,
|
||||
UrlReferrer = req.UrlReferrer
|
||||
};
|
||||
var sr = new StreamReader(req.InputStream, Encoding.GetEncoding("GB2312"));
|
||||
e.PostDataStr = sr.ReadToEnd();
|
||||
e.PostData= RyWeb.WebDecode.UrlToData(e.PostDataStr);
|
||||
sr.Close();
|
||||
OnHandlePOSTRequest?.Invoke(this, e);
|
||||
resp.StatusCode = (int)e.StatusCode;
|
||||
html = e.ReturnHtml;
|
||||
}
|
||||
var buffer = Encoding.UTF8.GetBytes(html);
|
||||
resp.ContentLength64 = buffer.Length;
|
||||
resp.OutputStream.Write(buffer, 0, buffer.Length);
|
||||
var outs = resp.OutputStream;
|
||||
outs.Close();
|
||||
resp.Close();
|
||||
}
|
||||
}
|
||||
/// <summary>
|
||||
///
|
||||
/// </summary>
|
||||
public class HttpRequest
|
||||
{
|
||||
/// <summary>
|
||||
///
|
||||
/// </summary>
|
||||
public Uri Url { get; internal set; }
|
||||
/// <summary>
|
||||
///
|
||||
/// </summary>
|
||||
public string PostDataStr { get; internal set; } = "";
|
||||
/// <summary>
|
||||
///
|
||||
/// </summary>
|
||||
internal Tuple<string, IEnumerable<KeyValuePair<string, string>>> PostData { get; set; }
|
||||
/// <summary>
|
||||
///
|
||||
/// </summary>
|
||||
public string GetPostData(string Param)
|
||||
{
|
||||
return PostData.Get(Param);
|
||||
}
|
||||
/// <summary>
|
||||
///
|
||||
/// </summary>
|
||||
public string GetPostData(string Param,string defValue)
|
||||
{
|
||||
return PostData.Get(Param, defValue);
|
||||
}
|
||||
/// <summary>
|
||||
///
|
||||
/// </summary>
|
||||
public int GetPostData(string Param,int defValue)
|
||||
{
|
||||
return PostData.Get(Param, defValue);
|
||||
}
|
||||
/// <summary>
|
||||
///
|
||||
/// </summary>
|
||||
public bool GetPostData(string Param, bool defValue)
|
||||
{
|
||||
return PostData.Get(Param, defValue);
|
||||
}
|
||||
/// <summary>
|
||||
///
|
||||
/// </summary>
|
||||
public Uri UrlReferrer { get; internal set; }
|
||||
/// <summary>
|
||||
///
|
||||
/// </summary>
|
||||
public string ReturnHtml { get; set; } = "";
|
||||
/// <summary>
|
||||
///
|
||||
/// </summary>
|
||||
public HttpStatusCode StatusCode { get; set; } = HttpStatusCode.OK;
|
||||
}
|
||||
}
|
|
@ -422,7 +422,7 @@ namespace RyWeb
|
|||
/// </summary>
|
||||
/// <param name="ch"></param>
|
||||
/// <returns></returns>
|
||||
public static bool IsUrlSafeChar(char ch)
|
||||
private static bool IsUrlSafeChar(char ch)
|
||||
{
|
||||
if ((((ch >= 'a') && (ch <= 'z')) || ((ch >= 'A') && (ch <= 'Z'))) || ((ch >= '0') && (ch <= '9')))
|
||||
{
|
||||
|
@ -446,7 +446,7 @@ namespace RyWeb
|
|||
/// </summary>
|
||||
/// <param name="n"></param>
|
||||
/// <returns></returns>
|
||||
public static char IntToHex(int n)
|
||||
private static char IntToHex(int n)
|
||||
{
|
||||
if (n <= 9)
|
||||
{
|
||||
|
@ -463,5 +463,58 @@ namespace RyWeb
|
|||
{
|
||||
return System.Web.HttpUtility.HtmlDecode(str);
|
||||
}
|
||||
/// <summary>
|
||||
/// 将url里的字段分解成表单字典
|
||||
/// </summary>
|
||||
/// <param name="url"></param>
|
||||
/// <returns></returns>
|
||||
/// <exception cref="ArgumentNullException"></exception>
|
||||
/// <exception cref="FormatException"></exception>
|
||||
public static Tuple<string, IEnumerable<KeyValuePair<string, string>>> UrlToData(string url)
|
||||
{
|
||||
if (url == null)
|
||||
throw new ArgumentNullException("url");
|
||||
url = url.Trim();
|
||||
try
|
||||
{
|
||||
var split = url.Split(new[] { '?', '&' }, StringSplitOptions.RemoveEmptyEntries);
|
||||
if (split.Length == 1)
|
||||
return new Tuple<string, IEnumerable<KeyValuePair<string, string>>>(url, null);
|
||||
//获取前面的URL地址
|
||||
var host = split[0];
|
||||
var pairs = split.Skip(1).Select(s =>
|
||||
{
|
||||
//没有用String.Split防止某些少见Query String中出现多个=,要把后面的无法处理的=全部显示出来
|
||||
var idx = s.IndexOf('=');
|
||||
return new KeyValuePair<string, string>(Uri.UnescapeDataString(s.Substring(0, idx)), Uri.UnescapeDataString(s.Substring(idx + 1)));
|
||||
}).ToList();
|
||||
return new Tuple<string, IEnumerable<KeyValuePair<string, string>>>(host, pairs);
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
throw new FormatException("URL格式错误", ex);
|
||||
}
|
||||
}
|
||||
/// <summary>
|
||||
/// 根据表单字段名获取值
|
||||
/// </summary>
|
||||
/// <param name="decoded"></param>
|
||||
/// <param name="name"></param>
|
||||
/// <param name="defValue"></param>
|
||||
/// <returns></returns>
|
||||
public static string GetParam(Tuple<string, IEnumerable<KeyValuePair<string, string>>> decoded, string name,string defValue)
|
||||
{
|
||||
var query = decoded.Item2.Where(key => key.Key == name);
|
||||
if (query != null)
|
||||
{
|
||||
var list = query.ToList();
|
||||
if (list.Count > 0)
|
||||
{
|
||||
return list[0].Value;
|
||||
}
|
||||
else { return defValue; }
|
||||
}
|
||||
else { return defValue; }
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -119,6 +119,14 @@ namespace ryCommon
|
|||
return User32.GetActiveWindow();
|
||||
}
|
||||
/// <summary>
|
||||
/// 获取当前前台的窗口句柄
|
||||
/// </summary>
|
||||
/// <returns></returns>
|
||||
public static IntPtr GetForegroundWindow()
|
||||
{
|
||||
return User32.GetForegroundWindow();
|
||||
}
|
||||
/// <summary>
|
||||
/// 设置为当前活动窗口
|
||||
/// </summary>
|
||||
/// <param name="hwnd"></param>
|
||||
|
@ -144,6 +152,23 @@ namespace ryCommon
|
|||
public static void Show(Form frm)
|
||||
{
|
||||
bool topmost = frm.TopMost;
|
||||
if(frm.WindowState!= FormWindowState.Normal)
|
||||
{
|
||||
frm.WindowState= FormWindowState.Normal;
|
||||
}
|
||||
var screen = Screen.PrimaryScreen.WorkingArea;
|
||||
if (!screen.Contains(frm.Location))
|
||||
{
|
||||
frm.Location = new Point((screen.Width-frm.Width)/2, (screen.Height - frm.Height) / 2);
|
||||
}
|
||||
else if (!screen.Contains(new Point(frm.Left,frm.Top+100)))
|
||||
{
|
||||
frm.Location = new Point((screen.Width - frm.Width) / 2, (screen.Height - frm.Height) / 2);
|
||||
}
|
||||
else if (!screen.Contains(new Point(frm.Left+100, frm.Top)))
|
||||
{
|
||||
frm.Location = new Point((screen.Width - frm.Width) / 2, (screen.Height - frm.Height) / 2);
|
||||
}
|
||||
frm.BringToFront();
|
||||
frm.TopMost = true;
|
||||
frm.TopMost = topmost;
|
||||
|
|
|
@ -47,6 +47,165 @@ namespace ryCommon
|
|||
}
|
||||
}
|
||||
/// <summary>
|
||||
/// 删除注册表键(如果存在子键,子键将一并被删除)
|
||||
/// </summary>
|
||||
/// <param name="_RegRoot"></param>
|
||||
/// <param name="_UseSystemBit"></param>
|
||||
/// <param name="Path"></param>
|
||||
/// <param name="KeyName"></param>
|
||||
/// <returns></returns>
|
||||
public static bool DelKey(RegistryHive _RegRoot, RegistryView _UseSystemBit, string Path,string KeyName)
|
||||
{
|
||||
var result = false;
|
||||
try
|
||||
{
|
||||
RegistryKey LMach = RegistryKey.OpenBaseKey(_RegRoot, _UseSystemBit);
|
||||
RegistryKey softwareRun = LMach.OpenSubKey(Path, false);
|
||||
if (softwareRun != null)
|
||||
{
|
||||
softwareRun.DeleteSubKeyTree(KeyName,false);
|
||||
result= true;
|
||||
}
|
||||
softwareRun.Close();
|
||||
LMach.Close();
|
||||
return result;
|
||||
}
|
||||
catch
|
||||
{
|
||||
return result;
|
||||
}
|
||||
}
|
||||
/// <summary>
|
||||
/// 删除注册表键值
|
||||
/// </summary>
|
||||
/// <param name="_RegRoot"></param>
|
||||
/// <param name="_UseSystemBit"></param>
|
||||
/// <param name="Path"></param>
|
||||
/// <param name="ValueName"></param>
|
||||
/// <returns></returns>
|
||||
public static bool DelValue(RegistryHive _RegRoot, RegistryView _UseSystemBit, string Path, string ValueName)
|
||||
{
|
||||
var result = false;
|
||||
try
|
||||
{
|
||||
RegistryKey LMach = RegistryKey.OpenBaseKey(_RegRoot, _UseSystemBit);
|
||||
RegistryKey softwareRun = LMach.OpenSubKey(Path, false);
|
||||
if (softwareRun != null)
|
||||
{
|
||||
if (softwareRun.GetValue(ValueName) != null)
|
||||
{
|
||||
softwareRun.DeleteValue(ValueName, false);
|
||||
result= true;
|
||||
}
|
||||
else
|
||||
{
|
||||
result= false;
|
||||
}
|
||||
}
|
||||
softwareRun.Close();
|
||||
LMach.Close();
|
||||
return result;
|
||||
}
|
||||
catch
|
||||
{
|
||||
return result;
|
||||
}
|
||||
}
|
||||
/// <summary>
|
||||
/// 获取注册表键值
|
||||
/// </summary>
|
||||
/// <param name="_RegRoot"></param>
|
||||
/// <param name="_UseSystemBit"></param>
|
||||
/// <param name="Path"></param>
|
||||
/// <param name="ValueName"></param>
|
||||
/// <param name="defValue"></param>
|
||||
/// <returns></returns>
|
||||
public static string GetValue(RegistryHive _RegRoot, RegistryView _UseSystemBit, string Path, string ValueName,string defValue)
|
||||
{
|
||||
var result = defValue;
|
||||
try
|
||||
{
|
||||
RegistryKey LMach = RegistryKey.OpenBaseKey(_RegRoot, _UseSystemBit);
|
||||
RegistryKey softwareRun = LMach.OpenSubKey(Path, false);
|
||||
if (softwareRun != null)
|
||||
{
|
||||
var value = softwareRun.GetValue(ValueName);
|
||||
if (value == null) { result= defValue; }
|
||||
else { result= value.ToString(); }
|
||||
}
|
||||
else { result= defValue; }
|
||||
softwareRun.Close();
|
||||
LMach.Close();
|
||||
return result;
|
||||
}
|
||||
catch
|
||||
{
|
||||
return result;
|
||||
}
|
||||
}
|
||||
/// <summary>
|
||||
/// 设置注册表键值
|
||||
/// </summary>
|
||||
/// <param name="_RegRoot"></param>
|
||||
/// <param name="_UseSystemBit"></param>
|
||||
/// <param name="Path"></param>
|
||||
/// <param name="ValueName"></param>
|
||||
/// <param name="Value"></param>
|
||||
/// <returns></returns>
|
||||
public static bool SetValue(RegistryHive _RegRoot, RegistryView _UseSystemBit, string Path, string ValueName, string Value)
|
||||
{
|
||||
var result = false;
|
||||
try
|
||||
{
|
||||
RegistryKey LMach = RegistryKey.OpenBaseKey(_RegRoot, _UseSystemBit);
|
||||
RegistryKey softwareRun = LMach.OpenSubKey(Path, true);
|
||||
if (softwareRun != null)
|
||||
{
|
||||
softwareRun.SetValue(ValueName, Value);
|
||||
result = true;
|
||||
}
|
||||
else { result = false; }
|
||||
softwareRun.Close();
|
||||
LMach.Close();
|
||||
return result;
|
||||
}
|
||||
catch
|
||||
{
|
||||
return result;
|
||||
}
|
||||
}
|
||||
/// <summary>
|
||||
/// 设置注册表键值
|
||||
/// </summary>
|
||||
/// <param name="_RegRoot"></param>
|
||||
/// <param name="_UseSystemBit"></param>
|
||||
/// <param name="Path"></param>
|
||||
/// <param name="ValueName"></param>
|
||||
/// <param name="Value"></param>
|
||||
/// <returns></returns>
|
||||
public static bool SetValue(RegistryHive _RegRoot, RegistryView _UseSystemBit, string Path, string ValueName, uint Value)
|
||||
{
|
||||
var result = false;
|
||||
try
|
||||
{
|
||||
RegistryKey LMach = RegistryKey.OpenBaseKey(_RegRoot, _UseSystemBit);
|
||||
RegistryKey softwareRun = LMach.OpenSubKey(Path, true);
|
||||
if (softwareRun != null)
|
||||
{
|
||||
softwareRun.SetValue(ValueName, Value, RegistryValueKind.DWord);
|
||||
result = true;
|
||||
}
|
||||
else { result = false; }
|
||||
softwareRun.Close();
|
||||
LMach.Close();
|
||||
return result;
|
||||
}
|
||||
catch
|
||||
{
|
||||
return result;
|
||||
}
|
||||
}
|
||||
/// <summary>
|
||||
/// 设置是否开机启动
|
||||
/// </summary>
|
||||
/// <param name="AutoRun">是否开机启动</param>
|
||||
|
@ -109,13 +268,10 @@ namespace ryCommon
|
|||
try
|
||||
{
|
||||
bool sxResult = false;
|
||||
RegistryKey LMach = RegistryKey.OpenBaseKey(RegRoot, UseSystemBit);
|
||||
RegistryKey softwareRun = LMach.OpenSubKey(@"SOFTWARE\Microsoft\Windows\CurrentVersion\Run");
|
||||
if (softwareRun.GetValue(StartName, "").ToString() == StartCommand)
|
||||
var value = GetValue(RegRoot, UseSystemBit, @"SOFTWARE\Microsoft\Windows\CurrentVersion\Run", StartName, "");
|
||||
if (value == StartCommand)
|
||||
{ sxResult = true; }
|
||||
else { sxResult = false; }
|
||||
softwareRun.Close();
|
||||
LMach.Close();
|
||||
return sxResult;
|
||||
}
|
||||
catch
|
||||
|
@ -133,13 +289,10 @@ namespace ryCommon
|
|||
try
|
||||
{
|
||||
bool sxResult = false;
|
||||
RegistryKey LMach = RegistryKey.OpenBaseKey(RegRoot, UseSystemBit);
|
||||
RegistryKey softwareRun = LMach.OpenSubKey(@"SOFTWARE\Microsoft\Windows\CurrentVersion\Run");
|
||||
if (softwareRun.GetValue(StartName, "").ToString() != "")
|
||||
var value = GetValue(RegRoot, UseSystemBit, @"SOFTWARE\Microsoft\Windows\CurrentVersion\Run", StartName, "");
|
||||
if (value != "")
|
||||
{ sxResult = true; }
|
||||
else { sxResult = false; }
|
||||
softwareRun.Close();
|
||||
LMach.Close();
|
||||
return sxResult;
|
||||
}
|
||||
catch
|
||||
|
@ -186,12 +339,7 @@ namespace ryCommon
|
|||
{
|
||||
try
|
||||
{
|
||||
RegistryKey LMach = RegistryKey.OpenBaseKey(RegRoot, UseSystemBit);
|
||||
RegistryKey softwareRun = LMach.OpenSubKey(@"SOFTWARE\Microsoft\Internet Explorer\MAIN\FeatureControl\FEATURE_BROWSER_EMULATION", true);
|
||||
softwareRun.SetValue(filename, IEMode, RegistryValueKind.DWord);
|
||||
softwareRun.Close();
|
||||
LMach.Close();
|
||||
return true;
|
||||
return SetValue(RegRoot, UseSystemBit, @"SOFTWARE\Microsoft\Internet Explorer\MAIN\FeatureControl\FEATURE_BROWSER_EMULATION", filename, IEMode);
|
||||
}
|
||||
catch
|
||||
{
|
||||
|
@ -371,12 +519,7 @@ namespace ryCommon
|
|||
{
|
||||
try
|
||||
{
|
||||
RegistryKey LMach = RegistryKey.OpenBaseKey(RegRoot, UseSystemBit);
|
||||
RegistryKey softwareRun = LMach.OpenSubKey(@"SOFTWARE\Microsoft\Internet Explorer\MAIN\FeatureControl\FEATURE_BROWSER_EMULATION", true);
|
||||
softwareRun.SetValue(filename, IEMode, RegistryValueKind.DWord);
|
||||
softwareRun.Close();
|
||||
LMach.Close();
|
||||
return true;
|
||||
return SetValue(RegRoot, UseSystemBit, @"SOFTWARE\Microsoft\Internet Explorer\MAIN\FeatureControl\FEATURE_BROWSER_EMULATION", filename, (uint)IEMode);
|
||||
}
|
||||
catch
|
||||
{
|
||||
|
|
|
@ -32,5 +32,5 @@ using System.Runtime.InteropServices;
|
|||
//可以指定所有这些值,也可以使用“生成号”和“修订号”的默认值,
|
||||
// 方法是按如下所示使用“*”: :
|
||||
// [assembly: AssemblyVersion("1.0.*")]
|
||||
[assembly: AssemblyVersion("3.0.2201.1101")]
|
||||
[assembly: AssemblyFileVersion("3.0.2201.1101")]
|
||||
[assembly: AssemblyVersion("3.0.2203.0801")]
|
||||
[assembly: AssemblyFileVersion("3.0.2203.0801")]
|
|
@ -7,6 +7,7 @@ using DataParameter =MySql.Data.MySqlClient.MySqlParameter;
|
|||
using DataCommand = MySql.Data.MySqlClient.MySqlCommand;
|
||||
using DataAdapter = MySql.Data.MySqlClient.MySqlDataAdapter;
|
||||
using ryCommonDb;
|
||||
using ryCommon;
|
||||
|
||||
namespace ryCommonDb
|
||||
{
|
||||
|
@ -23,7 +24,13 @@ namespace ryCommonDb
|
|||
/// <returns></returns>
|
||||
public int ConnDb(string sql)
|
||||
{
|
||||
myDb.fv_ConnStr = sql;
|
||||
var _sql = sql;
|
||||
if(_sql.IndexOfEx("Allow User Variables")<=0)
|
||||
{
|
||||
if (!_sql.EndsWith(";")) { _sql += ";"; }
|
||||
_sql += "Allow User Variables=True;";
|
||||
}
|
||||
myDb.fv_ConnStr = _sql;
|
||||
return myDb.ConnDb();
|
||||
}
|
||||
/// <summary>
|
||||
|
@ -194,6 +201,7 @@ namespace ryCommonDb
|
|||
{
|
||||
DataCommand cmd = myDb.SQL_cn.CreateCommand();
|
||||
cmd.Parameters.Clear();
|
||||
cmd.CommandTimeout = 300;
|
||||
if (Parameter != null)
|
||||
{
|
||||
for (int i = 0; i < Parameter.Length; i++)
|
||||
|
@ -252,7 +260,8 @@ namespace ryCommonDb
|
|||
{
|
||||
DataCommand cmd = myDb.SQL_cn.CreateCommand();
|
||||
cmd.Parameters.Clear();
|
||||
if(Parameter!=null)
|
||||
cmd.CommandTimeout = 300;
|
||||
if (Parameter!=null)
|
||||
cmd.Parameters.AddRange(Parameter);
|
||||
cmd.CommandText = sql;
|
||||
int i= cmd.ExecuteNonQuery();
|
||||
|
|
|
@ -337,6 +337,24 @@ namespace MGdu.WinFormUI
|
|||
Invalidate();
|
||||
}
|
||||
}
|
||||
private Image gmform_icon = null;
|
||||
/// <summary>
|
||||
/// 窗体图标,如果设置本项,将不使用Icon属性
|
||||
/// </summary>
|
||||
[Category("GMForm")]
|
||||
[Description("窗体图标,如果设置本项,将不使用Icon属性")]
|
||||
public Image GMFormIcon
|
||||
{
|
||||
get
|
||||
{
|
||||
return gmform_icon;
|
||||
}
|
||||
set
|
||||
{
|
||||
gmform_icon = value;
|
||||
Invalidate();
|
||||
}
|
||||
}
|
||||
/// <summary>
|
||||
/// 标题栏图标与窗体左边框的距离
|
||||
/// </summary>
|
||||
|
@ -1124,7 +1142,14 @@ namespace MGdu.WinFormUI
|
|||
{
|
||||
if (ShowIcon && Icon != null && XTheme.DrawCaptionIcon)
|
||||
{
|
||||
g.DrawIcon(this.Icon, IconRect);
|
||||
if (GMFormIcon == null)
|
||||
{
|
||||
g.DrawIcon(this.Icon, IconRect);
|
||||
}
|
||||
else
|
||||
{
|
||||
g.DrawImage(this.GMFormIcon, IconRect);
|
||||
}
|
||||
}
|
||||
|
||||
if (!string.IsNullOrEmpty(Text) && XTheme.DrawCaptionText)
|
||||
|
@ -1360,6 +1385,7 @@ namespace MGdu.WinFormUI
|
|||
alreadyHandled = WmNcCalcSize(ref m);
|
||||
break;
|
||||
case (int)Win32.WinAPI.WindowMessages.WM_NCHITTEST:
|
||||
if(base.WindowState!= FormWindowState.Maximized)
|
||||
alreadyHandled = WmNcHitTest(ref m);
|
||||
break;
|
||||
|
||||
|
@ -1599,7 +1625,9 @@ namespace MGdu.WinFormUI
|
|||
{
|
||||
base.OnMouseMove(e);
|
||||
if (ControlBox)
|
||||
{
|
||||
controlBoxManager.MouseOperation(e.Location, MouseOperationType.Move);
|
||||
}
|
||||
if (IsMdiContainer && _mdiBarController != null)
|
||||
_mdiBarController.MouseOperation(e.Location, MouseOperationType.Move);
|
||||
}
|
||||
|
|
|
@ -2492,8 +2492,8 @@ namespace BrightIdeasSoftware
|
|||
get
|
||||
{
|
||||
ArrayList list = new ArrayList();
|
||||
if (objects == null) { return list; }
|
||||
var enumer = this.objects.GetEnumerator();
|
||||
if (this.Objects == null) { return list; }
|
||||
var enumer = this.Objects.GetEnumerator();
|
||||
while(enumer.MoveNext())
|
||||
{
|
||||
list.Add(enumer.Current);
|
||||
|
@ -4380,7 +4380,13 @@ namespace BrightIdeasSoftware
|
|||
dataObject.CreateTextFormats();
|
||||
Clipboard.SetDataObject(dataObject);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 将所有对象的文本和HTML表示复制到剪贴板上。
|
||||
/// </summary>
|
||||
public virtual void CopyObjectsToClipboard()
|
||||
{
|
||||
CopyObjectsToClipboard(ObjectsList);
|
||||
}
|
||||
/// <summary>
|
||||
/// 返回给定对象的html表示形式
|
||||
/// </summary>
|
||||
|
|
|
@ -96,11 +96,16 @@ namespace BrightIdeasSoftware.Rendering
|
|||
RoundStyle style,
|
||||
int roundWidth, bool drawBorder)
|
||||
{
|
||||
RenderBackgroundInternal(g, rect, baseColor, borderColor, innerBorderColor, style, roundWidth, 0.35f, drawBorder, false, LinearGradientMode.Vertical);
|
||||
var rect2 = rect;
|
||||
rect2.X += 2;
|
||||
rect2.Y += 2;
|
||||
rect2.Width -= 6;
|
||||
rect2.Height -=16;
|
||||
RenderBackgroundInternal(g, rect2, baseColor, borderColor, innerBorderColor, style, roundWidth, 0.35f, drawBorder, false, LinearGradientMode.Vertical);
|
||||
StringFormat sf = new StringFormat();
|
||||
sf.Alignment = StringAlignment.Center;
|
||||
sf.LineAlignment = StringAlignment.Center;
|
||||
g.DrawString(Text, new Font("宋体", 10), new SolidBrush(ForeColor), rect, sf);
|
||||
g.DrawString(Text, new Font("宋体", 9), new SolidBrush(ForeColor), rect2, sf);
|
||||
}
|
||||
private static void RenderBackgroundInternal(
|
||||
Graphics g,
|
||||
|
|
|
@ -32,5 +32,5 @@ using System.Runtime.InteropServices;
|
|||
//可以指定所有这些值,也可以使用“生成号”和“修订号”的默认值,
|
||||
// 方法是按如下所示使用“*”: :
|
||||
// [assembly: AssemblyVersion("1.0.*")]
|
||||
[assembly: AssemblyVersion("3.0.2111.2601")]
|
||||
[assembly: AssemblyFileVersion("3.0.2111.2601")]
|
||||
[assembly: AssemblyVersion("3.0.2205.0901")]
|
||||
[assembly: AssemblyFileVersion("3.0.2205.0901")]
|
|
@ -1,68 +0,0 @@
|
|||
|
||||
Microsoft Visual Studio Solution File, Format Version 12.00
|
||||
# Visual Studio 14
|
||||
VisualStudioVersion = 14.0.25420.1
|
||||
MinimumVisualStudioVersion = 10.0.40219.1
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ryUpdateV35", "ryUpdate\ryUpdateV35.csproj", "{11A63E24-0257-4C54-A109-F1A609A52A62}"
|
||||
EndProject
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ryControlsV35", "ryControls\ryControlsV35.csproj", "{9ECA3A84-8545-4C4D-84D6-D23E3BDF2D90}"
|
||||
EndProject
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "MyDbV35", "MyDb\MyDbV35.csproj", "{B0F80073-D661-42D8-A512-8488D980B87E}"
|
||||
EndProject
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "MyDb_SQLiteV35", "MyDb_SQLite\MyDb_SQLiteV35.csproj", "{6B969CE8-D723-4B2C-A8FD-FAD2FB28FF01}"
|
||||
EndProject
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "MyDb_MSSQLV35", "MyDb_MSSQL\MyDb_MSSQLV35.csproj", "{631290D3-7CB8-4B62-833E-361C20A5F2E0}"
|
||||
EndProject
|
||||
Global
|
||||
GlobalSection(SolutionConfigurationPlatforms) = preSolution
|
||||
Debug|Any CPU = Debug|Any CPU
|
||||
Debug|x86 = Debug|x86
|
||||
Release|Any CPU = Release|Any CPU
|
||||
Release|x86 = Release|x86
|
||||
EndGlobalSection
|
||||
GlobalSection(ProjectConfigurationPlatforms) = postSolution
|
||||
{11A63E24-0257-4C54-A109-F1A609A52A62}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{11A63E24-0257-4C54-A109-F1A609A52A62}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{11A63E24-0257-4C54-A109-F1A609A52A62}.Debug|x86.ActiveCfg = Debug|Any CPU
|
||||
{11A63E24-0257-4C54-A109-F1A609A52A62}.Debug|x86.Build.0 = Debug|Any CPU
|
||||
{11A63E24-0257-4C54-A109-F1A609A52A62}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{11A63E24-0257-4C54-A109-F1A609A52A62}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
{11A63E24-0257-4C54-A109-F1A609A52A62}.Release|x86.ActiveCfg = Release|Any CPU
|
||||
{11A63E24-0257-4C54-A109-F1A609A52A62}.Release|x86.Build.0 = Release|Any CPU
|
||||
{9ECA3A84-8545-4C4D-84D6-D23E3BDF2D90}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{9ECA3A84-8545-4C4D-84D6-D23E3BDF2D90}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{9ECA3A84-8545-4C4D-84D6-D23E3BDF2D90}.Debug|x86.ActiveCfg = Debug|x86
|
||||
{9ECA3A84-8545-4C4D-84D6-D23E3BDF2D90}.Debug|x86.Build.0 = Debug|x86
|
||||
{9ECA3A84-8545-4C4D-84D6-D23E3BDF2D90}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{9ECA3A84-8545-4C4D-84D6-D23E3BDF2D90}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
{9ECA3A84-8545-4C4D-84D6-D23E3BDF2D90}.Release|x86.ActiveCfg = Release|x86
|
||||
{9ECA3A84-8545-4C4D-84D6-D23E3BDF2D90}.Release|x86.Build.0 = Release|x86
|
||||
{B0F80073-D661-42D8-A512-8488D980B87E}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{B0F80073-D661-42D8-A512-8488D980B87E}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{B0F80073-D661-42D8-A512-8488D980B87E}.Debug|x86.ActiveCfg = Debug|x86
|
||||
{B0F80073-D661-42D8-A512-8488D980B87E}.Debug|x86.Build.0 = Debug|x86
|
||||
{B0F80073-D661-42D8-A512-8488D980B87E}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{B0F80073-D661-42D8-A512-8488D980B87E}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
{B0F80073-D661-42D8-A512-8488D980B87E}.Release|x86.ActiveCfg = Release|x86
|
||||
{B0F80073-D661-42D8-A512-8488D980B87E}.Release|x86.Build.0 = Release|x86
|
||||
{6B969CE8-D723-4B2C-A8FD-FAD2FB28FF01}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{6B969CE8-D723-4B2C-A8FD-FAD2FB28FF01}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{6B969CE8-D723-4B2C-A8FD-FAD2FB28FF01}.Debug|x86.ActiveCfg = Debug|Any CPU
|
||||
{6B969CE8-D723-4B2C-A8FD-FAD2FB28FF01}.Debug|x86.Build.0 = Debug|Any CPU
|
||||
{6B969CE8-D723-4B2C-A8FD-FAD2FB28FF01}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{6B969CE8-D723-4B2C-A8FD-FAD2FB28FF01}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
{6B969CE8-D723-4B2C-A8FD-FAD2FB28FF01}.Release|x86.ActiveCfg = Release|Any CPU
|
||||
{6B969CE8-D723-4B2C-A8FD-FAD2FB28FF01}.Release|x86.Build.0 = Release|Any CPU
|
||||
{631290D3-7CB8-4B62-833E-361C20A5F2E0}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{631290D3-7CB8-4B62-833E-361C20A5F2E0}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{631290D3-7CB8-4B62-833E-361C20A5F2E0}.Debug|x86.ActiveCfg = Debug|Any CPU
|
||||
{631290D3-7CB8-4B62-833E-361C20A5F2E0}.Debug|x86.Build.0 = Debug|Any CPU
|
||||
{631290D3-7CB8-4B62-833E-361C20A5F2E0}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{631290D3-7CB8-4B62-833E-361C20A5F2E0}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
{631290D3-7CB8-4B62-833E-361C20A5F2E0}.Release|x86.ActiveCfg = Release|Any CPU
|
||||
{631290D3-7CB8-4B62-833E-361C20A5F2E0}.Release|x86.Build.0 = Release|Any CPU
|
||||
EndGlobalSection
|
||||
GlobalSection(SolutionProperties) = preSolution
|
||||
HideSolutionNode = FALSE
|
||||
EndGlobalSection
|
||||
EndGlobal
|
Loading…
Reference in New Issue
Block a user