From f10f7b6268b1a213758785807e702b6a06e47ef7 Mon Sep 17 00:00:00 2001 From: 2dust <31833384+2dust@users.noreply.github.com> Date: Thu, 29 Aug 2024 10:10:55 +0800 Subject: [PATCH] Add Portable Mode for mihomo --- v2rayN/ServiceLib/Handler/CoreInfoHandler.cs | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/v2rayN/ServiceLib/Handler/CoreInfoHandler.cs b/v2rayN/ServiceLib/Handler/CoreInfoHandler.cs index 1cd58126..dddaf723 100644 --- a/v2rayN/ServiceLib/Handler/CoreInfoHandler.cs +++ b/v2rayN/ServiceLib/Handler/CoreInfoHandler.cs @@ -106,7 +106,7 @@ namespace ServiceLib.Handler { coreType = ECoreType.clash, coreExes = new List { "clash-windows-amd64-v3", "clash-windows-amd64", "clash-windows-386", "clash" }, - arguments = "-f config.json", + arguments = "-f config.json" + PortableMode(), coreUrl = Global.ClashCoreUrl, coreReleaseApiUrl = Global.ClashCoreUrl.Replace(Global.GithubUrl, Global.GithubApiUrl), match = "v", @@ -118,7 +118,7 @@ namespace ServiceLib.Handler { coreType = ECoreType.clash_meta, coreExes = new List { "Clash.Meta-windows-amd64-compatible", "Clash.Meta-windows-amd64", "Clash.Meta-windows-386", "Clash.Meta", "clash" }, - arguments = "-f config.json", + arguments = "-f config.json" + PortableMode(), coreUrl = Global.ClashMetaCoreUrl, coreReleaseApiUrl = Global.ClashMetaCoreUrl.Replace(Global.GithubUrl, Global.GithubApiUrl), match = "v", @@ -130,7 +130,7 @@ namespace ServiceLib.Handler { coreType = ECoreType.mihomo, coreExes = new List { $"mihomo-windows-amd64{(Avx2.X64.IsSupported ? "" : "-compatible")}", "mihomo-windows-amd64-compatible", "mihomo-windows-amd64", "mihomo-windows-386", "mihomo", "clash" }, - arguments = "-f config.json", + arguments = "-f config.json" + PortableMode(), coreUrl = Global.MihomoCoreUrl, coreReleaseApiUrl = Global.MihomoCoreUrl.Replace(Global.GithubUrl, Global.GithubApiUrl), coreDownloadUrl32 = Global.ClashMetaCoreUrl + "/download/{0}/mihomo-windows-386-{0}.zip", @@ -208,5 +208,10 @@ namespace ServiceLib.Handler redirectInfo = true, }); } + + private string PortableMode() + { + return $" -d \"{Utils.GetBinPath("")}\""; + } } } \ No newline at end of file