## :date:2025-07-16 星期三更新
### RySmartEditor V1.0.2507.1601 - *.[新增]新增文件内容索引搜索。 - *.[新增]新增打开文件自动定位到指定行的功能。 ### SuperDesign V3.0.2507.1601 #### 网页抓取工具 - *.[修复]修复历史记录无法记录的BUG。 #### 编码解码 - *.[新增]新增svg图片代码转Geometry代码的功能。 #### 项目功能->项目管理 - *.[新增]互斥运行标准改为以毕方文件夹为准,而不是以项目文件为准。 - *.[新增]支持同个毕方项目可以不用重启来快捷切换不同子项目。 - *.[新增]支持发布时和打包时自动编译功能。 - *.[修复]修复项目输出路径为相对路径时,更新引用dll可能不成功的BUG。
This commit is contained in:
1 parent
30afab3ce9
commit
5a5faaf5dc
113 files changed
+832320
-898
No files matched your search
@@ -12,6 +12,27 @@ namespace SuperDesign.Manager
|
||||
{
|
||||
public class APIManager
|
||||
{
|
||||
/// <summary>
|
||||
/// 获取毕方标准项目根路径
|
||||
/// </summary>
|
||||
/// <returns></returns>
|
||||
public static string GetBFFolderPath(string _ProjectPath)
|
||||
{
|
||||
var _path = _ProjectPath;
|
||||
while (true)
|
||||
{
|
||||
_path = System.IO.Path.GetDirectoryName(_path.TrimEnd('\\')).TrimEnd('\\');
|
||||
if (System.IO.File.Exists(_path + "\\查看项目.ryp"))
|
||||
{
|
||||
return _path;
|
||||
}
|
||||
else
|
||||
{
|
||||
if (_path.Length < 4) { break; }
|
||||
}
|
||||
}
|
||||
return "";
|
||||
}
|
||||
public static string GetMdLogText(JArray jarr, DateTime dt,bool UseEmoji=false)
|
||||
{
|
||||
string log_text = "## :date:" + DateTime.Now.ToString("yyyy-MM-dd dddd") + "更新";
|
||||
|
||||
@@ -1,4 +1,6 @@
|
||||
using ryCommon;
|
||||
using Newtonsoft.Json.Linq;
|
||||
using QuickMsg;
|
||||
using ryCommon;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
@@ -24,25 +26,21 @@ namespace 开发辅助工具
|
||||
else if (args[0] == "get")
|
||||
{
|
||||
string ProjectPath = args[1];
|
||||
run = new System.Threading.Mutex(true, "S_"+rySafe.MD5Sha1.GetMD5(ProjectPath), out bool runone);
|
||||
var bf_path = SuperDesign.Manager.APIManager.GetBFFolderPath(ProjectPath);
|
||||
run = new System.Threading.Mutex(true, "S_"+rySafe.MD5Sha1.GetMD5(bf_path), out bool runone);
|
||||
if (!runone) //已经运行了
|
||||
{
|
||||
Ini ini = new Ini(Application.StartupPath + "\\UserDb\\Win.dat");
|
||||
var handle = ini.ReadIni("ProjectHwnd", rySafe.MD5Sha1.GetMD5(ProjectPath),0); ;
|
||||
if(handle>0)
|
||||
object mainHandle = RyMemoryShare.ReadFromMemory(1024, typeof(Int64), "S_" + rySafe.MD5Sha1.GetMD5( bf_path) + ".z");
|
||||
if (mainHandle != null)
|
||||
{
|
||||
if (RyForm.GetWinText((IntPtr)handle).Length > 0)
|
||||
{
|
||||
ryControls.Win32.SendMessage((IntPtr)handle, 17189, 100, 100);
|
||||
}
|
||||
else
|
||||
{
|
||||
Application.Run(new Form1(ProjectPath, "get"));
|
||||
}
|
||||
JObject jo= new JObject();
|
||||
jo["type"] = "project_update";
|
||||
jo["path"] = ProjectPath;
|
||||
MyDb.RyWin32.SendMsg(IntPtr.Zero,(IntPtr)(long)mainHandle, MyDb.RyWin32.Sys_chanel_id, jo.ToString());
|
||||
}
|
||||
else
|
||||
{
|
||||
// Application.Run(new Form1(ProjectPath, "get"));
|
||||
Application.Run(new Form1(ProjectPath, "get"));
|
||||
}
|
||||
}
|
||||
else
|
||||
|
||||
@@ -292,6 +292,7 @@ namespace 开发辅助工具.Manager
|
||||
mySQL.AddField("Cookie", "");
|
||||
mySQL.AddField("Postdata", "");
|
||||
mySQL.AddField("Method", "");
|
||||
mySQL.AddField("UserAgent", "");
|
||||
mySQL.AddField("Header", "");
|
||||
mySQL.AddField("Referer", "");
|
||||
mySQL.AddField("ContentType", "");
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
using ExtendUI.FTPManager;
|
||||
using Newtonsoft.Json.Linq;
|
||||
using ryCommon;
|
||||
using ryCommonDb;
|
||||
using System;
|
||||
@@ -114,8 +115,8 @@ namespace 开发辅助工具.Manager
|
||||
else if (compareVer == 0)//引用位置版本一致,则看更新时间
|
||||
{
|
||||
var file_dt=RyFiles.GetFileDate(files[z]);
|
||||
if (file_dt.LastWriteTime <= Min_dt.LastWriteTime)
|
||||
{
|
||||
if (file_dt.LastWriteTime <= Min_dt.LastWriteTime)
|
||||
{
|
||||
continue;
|
||||
}
|
||||
else
|
||||
@@ -295,13 +296,14 @@ namespace 开发辅助工具.Manager
|
||||
if (iPos > 0)
|
||||
{
|
||||
var Reference_Name = HintPath.Substring(iPos + 1);//引用的dll名称
|
||||
var dll_path = GetDllPath(OutputPath + Reference_Name);
|
||||
var full_path = RelToAbsPath(path, OutputPath + Reference_Name);
|
||||
var dll_path = GetDllPath(full_path);
|
||||
if (dll_path.Length>0)
|
||||
{
|
||||
if (CopyDllToBin)
|
||||
{
|
||||
list[i].InnerText = OutputPath + Reference_Name;
|
||||
RyFiles.CopyBigFile(dll_path,RelToAbsPath(path, OutputPath + Reference_Name));
|
||||
RyFiles.CopyBigFile(dll_path, full_path);
|
||||
}
|
||||
else
|
||||
{
|
||||
@@ -334,13 +336,14 @@ namespace 开发辅助工具.Manager
|
||||
{ dll_name = "ryUpdate.dll"; }
|
||||
if (dll_name != "")
|
||||
{
|
||||
var dll_path = GetDllPath(OutputPath + dll_name);
|
||||
var fullpath = RelToAbsPath(path, OutputPath + dll_name);
|
||||
var dll_path = GetDllPath(fullpath);
|
||||
if (dll_path != "")
|
||||
{
|
||||
if (CopyDllToBin)
|
||||
{
|
||||
MoveReference(System.IO.Path.GetFileNameWithoutExtension(dll_name), OutputPath + dll_name);
|
||||
RyFiles.CopyBigFile(dll_path, RelToAbsPath(path, OutputPath + dll_name));
|
||||
MoveReference(System.IO.Path.GetFileNameWithoutExtension(dll_name), fullpath);
|
||||
RyFiles.CopyBigFile(dll_path, fullpath);
|
||||
}
|
||||
else
|
||||
{
|
||||
@@ -653,6 +656,8 @@ namespace 开发辅助工具.Manager
|
||||
/// <param name="PackByLite">最简化打包</param>
|
||||
public void Pack(string project_folder,bool PackByLite=false)
|
||||
{
|
||||
BigFileOp file_op = new BigFileOp();
|
||||
file_op.OnCanelCopy += File_op_OnCanelCopy;
|
||||
var com_mode = "Debug";
|
||||
DataProvider mydb = new DataProvider();
|
||||
IDbInterface db = Itrycn_Db.CreateDataProvider(Itrycn_Db.dataType);
|
||||
@@ -711,7 +716,7 @@ namespace 开发辅助工具.Manager
|
||||
ShowState("正在清理不重要的缓存...");
|
||||
ryCommon.RyFiles.DeleteFile(ouput_folder + "\\Secure\\*.pdb");
|
||||
ShowState("复制混淆文件到底包目录...");
|
||||
ryCommon.RyFiles.CopyFileOrFolder(ouput_folder + "\\Secure\\", bf_folder + "\\Publish\\OriginalFiles"+(PackByLite?"_Lite":"")+"\\");
|
||||
file_op.CopyFileOrFolder(ouput_folder + "\\Secure\\", bf_folder + "\\Publish\\OriginalFiles"+(PackByLite?"_Lite":"")+"\\");
|
||||
}
|
||||
#region 复制自定义规则文件到底包目录
|
||||
ShowState("复制自定义规则文件到底包目录...");
|
||||
@@ -765,6 +770,7 @@ namespace 开发辅助工具.Manager
|
||||
}
|
||||
}
|
||||
var from_to = item.Replace("->", "|").Split('|');
|
||||
|
||||
if (from_to.Length == 2)
|
||||
{
|
||||
var from_path = from_to[0];
|
||||
@@ -773,6 +779,7 @@ namespace 开发辅助工具.Manager
|
||||
{
|
||||
from_path= ouput_folder + "\\" + from_path;
|
||||
}
|
||||
if (from_path.IndexOfEx("<") >= 0) { continue; }
|
||||
var from_filename = System.IO.Path.GetFileName(from_path);
|
||||
if (from_filename.IndexOfEx("*") >= 0)
|
||||
{
|
||||
@@ -781,7 +788,7 @@ namespace 开发辅助工具.Manager
|
||||
{
|
||||
for (int i = 0; i < file_list.Length; i++)
|
||||
{
|
||||
ryCommon.RyFiles.CopyFileOrFolder(file_list[i], bf_folder + "\\Publish\\OriginalFiles"+ (PackByLite ? "_Lite" : "") + "\\" + to_path);
|
||||
file_op.CopyFileOrFolder(file_list[i], bf_folder + "\\Publish\\OriginalFiles"+ (PackByLite ? "_Lite" : "") + "\\" + to_path);
|
||||
}
|
||||
}
|
||||
var dir_list = System.IO.Directory.GetDirectories(System.IO.Path.GetDirectoryName(from_path), from_filename);
|
||||
@@ -789,13 +796,13 @@ namespace 开发辅助工具.Manager
|
||||
{
|
||||
for (int i = 0; i < dir_list.Length; i++)
|
||||
{
|
||||
ryCommon.RyFiles.CopyFileOrFolder(dir_list[i], bf_folder + "\\Publish\\OriginalFiles"+ (PackByLite ? "_Lite" : "") + "\\" + to_path);
|
||||
file_op.CopyFileOrFolder(dir_list[i], bf_folder + "\\Publish\\OriginalFiles"+ (PackByLite ? "_Lite" : "") + "\\" + to_path);
|
||||
}
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
ryCommon.RyFiles.CopyFileOrFolder(from_path, bf_folder + "\\Publish\\OriginalFiles"+ (PackByLite ? "_Lite" : "") + "\\" + to_path);
|
||||
file_op.CopyFileOrFolder(from_path, bf_folder + "\\Publish\\OriginalFiles"+ (PackByLite ? "_Lite" : "") + "\\" + to_path);
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -832,6 +839,19 @@ namespace 开发辅助工具.Manager
|
||||
OnStateChanged?.Invoke(this,text);
|
||||
}
|
||||
}
|
||||
|
||||
private void File_op_OnCanelCopy(object sender, CancelEventArgs e, string FromPath, string ToPath)
|
||||
{
|
||||
if(RyFiles.GetFileSize(FromPath)==RyFiles.GetFileSize(ToPath))
|
||||
{
|
||||
var dt1 = RyFiles.GetFileDate(FromPath);
|
||||
var dt2 = RyFiles.GetFileDate(ToPath);
|
||||
if(dt1.LastWriteTime==dt2.LastWriteTime)
|
||||
{
|
||||
e.Cancel = true;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
public class VerInfo
|
||||
{
|
||||
|
||||
Reference in new issue
Block a user