mirror of https://github.com/2dust/v2rayN
fix something
parent
545e1c5402
commit
4408d67c49
|
@ -1164,8 +1164,18 @@ namespace v2rayN.Handler
|
||||||
{
|
{
|
||||||
config.routings = new List<RoutingItem>();
|
config.routings = new List<RoutingItem>();
|
||||||
}
|
}
|
||||||
if (config.routings.Count <= 0)
|
|
||||||
|
if (config.routings.Count(it => it.locked != true) <= 0)
|
||||||
{
|
{
|
||||||
|
//Global
|
||||||
|
var item1 = new RoutingItem();
|
||||||
|
item1.remarks = "全局(Global)";
|
||||||
|
item1.url = string.Empty;
|
||||||
|
item1.rules = new List<RulesItem>();
|
||||||
|
string result1 = Utils.GetEmbedText(Global.CustomRoutingFileName + "global");
|
||||||
|
AddBatchRoutingRules(ref item1, result1);
|
||||||
|
config.routings.Add(item1);
|
||||||
|
|
||||||
//Bypass the mainland
|
//Bypass the mainland
|
||||||
var item2 = new RoutingItem();
|
var item2 = new RoutingItem();
|
||||||
item2.remarks = "绕过大陆(Whitelist)";
|
item2.remarks = "绕过大陆(Whitelist)";
|
||||||
|
|
|
@ -210,6 +210,12 @@ namespace v2rayN.Handler
|
||||||
dicQuery.Add("quicSecurity", Utils.UrlEncode(item.requestHost));
|
dicQuery.Add("quicSecurity", Utils.UrlEncode(item.requestHost));
|
||||||
dicQuery.Add("key", Utils.UrlEncode(item.path));
|
dicQuery.Add("key", Utils.UrlEncode(item.path));
|
||||||
break;
|
break;
|
||||||
|
case "grpc":
|
||||||
|
if (!Utils.IsNullOrEmpty(item.path))
|
||||||
|
{
|
||||||
|
dicQuery.Add("serviceName", Utils.UrlEncode(item.path));
|
||||||
|
}
|
||||||
|
break;
|
||||||
}
|
}
|
||||||
string query = "?" + string.Join("&", dicQuery.Select(x => x.Key + "=" + x.Value).ToArray());
|
string query = "?" + string.Join("&", dicQuery.Select(x => x.Key + "=" + x.Value).ToArray());
|
||||||
|
|
||||||
|
@ -280,7 +286,7 @@ namespace v2rayN.Handler
|
||||||
msg = UIRes.I18N("FailedConversionConfiguration");
|
msg = UIRes.I18N("FailedConversionConfiguration");
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
|
|
||||||
vmessItem.network = Global.DefaultNetwork;
|
vmessItem.network = Global.DefaultNetwork;
|
||||||
vmessItem.headerType = Global.None;
|
vmessItem.headerType = Global.None;
|
||||||
|
|
||||||
|
@ -690,7 +696,9 @@ namespace v2rayN.Handler
|
||||||
item.requestHost = query["quicSecurity"] ?? "none";
|
item.requestHost = query["quicSecurity"] ?? "none";
|
||||||
item.path = Utils.UrlDecode(query["key"] ?? "");
|
item.path = Utils.UrlDecode(query["key"] ?? "");
|
||||||
break;
|
break;
|
||||||
|
case "grpc":
|
||||||
|
item.path = Utils.UrlDecode(query["serviceName"] ?? "");
|
||||||
|
break;
|
||||||
default:
|
default:
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
|
|
|
@ -97,6 +97,11 @@ namespace v2rayN.Handler
|
||||||
string msg = string.Empty;
|
string msg = string.Empty;
|
||||||
|
|
||||||
pid = _v2rayHandler.LoadV2rayConfigString(_config, _selecteds);
|
pid = _v2rayHandler.LoadV2rayConfigString(_config, _selecteds);
|
||||||
|
if (pid < 0)
|
||||||
|
{
|
||||||
|
_updateFunc(_selecteds[0], UIRes.I18N("OperationFailed"));
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
//Thread.Sleep(5000);
|
//Thread.Sleep(5000);
|
||||||
int httpPort = _config.GetLocalPort("speedtest");
|
int httpPort = _config.GetLocalPort("speedtest");
|
||||||
|
@ -178,6 +183,11 @@ namespace v2rayN.Handler
|
||||||
}
|
}
|
||||||
|
|
||||||
pid = _v2rayHandler.LoadV2rayConfigString(_config, _selecteds);
|
pid = _v2rayHandler.LoadV2rayConfigString(_config, _selecteds);
|
||||||
|
if (pid < 0)
|
||||||
|
{
|
||||||
|
_updateFunc(_selecteds[0], UIRes.I18N("OperationFailed"));
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
string url = _config.speedTestUrl;
|
string url = _config.speedTestUrl;
|
||||||
DownloadHandle downloadHandle2 = new DownloadHandle();
|
DownloadHandle downloadHandle2 = new DownloadHandle();
|
||||||
|
|
|
@ -151,7 +151,7 @@ namespace v2rayN.HttpProxyHandler
|
||||||
{
|
{
|
||||||
var type = config.sysProxyType;
|
var type = config.sysProxyType;
|
||||||
|
|
||||||
if (forceDisable)
|
if (forceDisable && type == ESysProxyType.ForcedChange)
|
||||||
{
|
{
|
||||||
type = ESysProxyType.ForcedClear;
|
type = ESysProxyType.ForcedClear;
|
||||||
}
|
}
|
||||||
|
@ -170,6 +170,8 @@ namespace v2rayN.HttpProxyHandler
|
||||||
}
|
}
|
||||||
else if (type == ESysProxyType.ForcedClear)
|
else if (type == ESysProxyType.ForcedClear)
|
||||||
{
|
{
|
||||||
|
//TODO To be verified
|
||||||
|
Utils.RegWriteValue(@"Software\Microsoft\Windows\CurrentVersion\Internet Settings", "ProxyEnable", 0);
|
||||||
SysProxyHandle.ResetIEProxy();
|
SysProxyHandle.ResetIEProxy();
|
||||||
}
|
}
|
||||||
else if (type == ESysProxyType.Unchanged)
|
else if (type == ESysProxyType.Unchanged)
|
||||||
|
|
|
@ -618,13 +618,13 @@ namespace v2rayN
|
||||||
return def;
|
return def;
|
||||||
}
|
}
|
||||||
|
|
||||||
public static void RegWriteValue(string path, string name, string value)
|
public static void RegWriteValue(string path, string name, object value)
|
||||||
{
|
{
|
||||||
RegistryKey regKey = null;
|
RegistryKey regKey = null;
|
||||||
try
|
try
|
||||||
{
|
{
|
||||||
regKey = Registry.CurrentUser.CreateSubKey(path);
|
regKey = Registry.CurrentUser.CreateSubKey(path);
|
||||||
if (IsNullOrEmpty(value))
|
if (IsNullOrEmpty(value.ToString()))
|
||||||
{
|
{
|
||||||
regKey?.DeleteValue(name, false);
|
regKey?.DeleteValue(name, false);
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue