From 02b6b478acd99423d1cd11054330e78a4de86cc4 Mon Sep 17 00:00:00 2001 From: ProxySU Date: Sat, 28 Mar 2020 14:13:25 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E6=94=B9v2ray=E5=AE=A2=E6=88=B7?= =?UTF-8?q?=E7=AB=AF=E9=85=8D=E7=BD=AE=E6=96=87=E4=BB=B6=E7=94=9F=E6=88=90?= =?UTF-8?q?=E6=96=B9=E5=BC=8F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ProxySU/MainWindow.xaml | 1 + ProxySU/MainWindow.xaml.cs | 82 +++++++++++++++++++++--- ProxySU/ResultClientInformation.xaml | 35 +++++++--- ProxySU/ResultClientInformation.xaml.cs | 68 ++++++++++++++++++-- ProxySU/bin/Release/ProxySU.exe | Bin 79872 -> 84480 bytes ProxySU/bin/Release/Release.zip | Bin 453952 -> 455526 bytes 6 files changed, 163 insertions(+), 23 deletions(-) diff --git a/ProxySU/MainWindow.xaml b/ProxySU/MainWindow.xaml index 5486f5c..b63db44 100644 --- a/ProxySU/MainWindow.xaml +++ b/ProxySU/MainWindow.xaml @@ -115,6 +115,7 @@ + diff --git a/ProxySU/MainWindow.xaml.cs b/ProxySU/MainWindow.xaml.cs index 110b4a5..628b721 100644 --- a/ProxySU/MainWindow.xaml.cs +++ b/ProxySU/MainWindow.xaml.cs @@ -585,15 +585,46 @@ namespace ProxySU currentStatus = "生成客户端配置......"; textBlockName.Dispatcher.BeginInvoke(updateAction, textBlockName, progressBar, currentStatus); Thread.Sleep(1000); - upLoadPath = "/tmp/config.json"; - UploadConfig(connectionInfo, clientConfig, upLoadPath); + if (!Directory.Exists("config"))//如果不存在就创建file文件夹      + { + Directory.CreateDirectory("config");//创建该文件夹   + } + //string clientConfig = "TemplateConfg\\tcp_client_config.json"; + using (StreamReader reader = File.OpenText(clientConfig)) + { + JObject clientJson = (JObject)JToken.ReadFrom(new JsonTextReader(reader)); + // do stuff + //MessageBox.Show(clientJson.ToString()); + clientJson["outbounds"][0]["settings"]["vnext"][0]["address"] = ReceiveConfigurationParameters[4]; + clientJson["outbounds"][0]["settings"]["vnext"][0]["port"] = ReceiveConfigurationParameters[1]; + clientJson["outbounds"][0]["settings"]["vnext"][0]["users"][0]["id"] = ReceiveConfigurationParameters[2]; + if (clientJson.Property("path") != null) + { + //成员path存在 + clientJson["outbounds"][0]["streamSettings"]["wsSettings"]["path"] = ReceiveConfigurationParameters[3]; - client.RunCommand("sed -i 's/##port##/" + ReceiveConfigurationParameters[1] + "/' " + upLoadPath); - client.RunCommand("sed -i 's/##uuid##/" + ReceiveConfigurationParameters[2] + "/' " + upLoadPath); - client.RunCommand("sed -i 's/##path##/\\" + ReceiveConfigurationParameters[3] + "/' " + upLoadPath); - client.RunCommand("sed -i 's/##domain##/" + ReceiveConfigurationParameters[4] + "/' " + upLoadPath); - client.RunCommand("sed -i 's/##mkcpHeaderType##/" + ReceiveConfigurationParameters[5] + "/' " + upLoadPath); - DownloadConfig(connectionInfo, "config\\config.json", upLoadPath); + } + if (clientJson.Property("type") != null) + { + //成员type存在 + clientJson["outbounds"][0]["streamSettings"]["kcpSettings"]["header"]["type"] = ReceiveConfigurationParameters[5]; + + } + + using (StreamWriter sw = new StreamWriter(@"config\config.json")) + { + sw.Write(clientJson.ToString()); + } + } + //upLoadPath = "/tmp/config.json"; + //UploadConfig(connectionInfo, clientConfig, upLoadPath); + + //client.RunCommand("sed -i 's/##port##/" + ReceiveConfigurationParameters[1] + "/' " + upLoadPath); + //client.RunCommand("sed -i 's/##uuid##/" + ReceiveConfigurationParameters[2] + "/' " + upLoadPath); + //client.RunCommand("sed -i 's/##path##/\\" + ReceiveConfigurationParameters[3] + "/' " + upLoadPath); + //client.RunCommand("sed -i 's/##domain##/" + ReceiveConfigurationParameters[4] + "/' " + upLoadPath); + //client.RunCommand("sed -i 's/##mkcpHeaderType##/" + ReceiveConfigurationParameters[5] + "/' " + upLoadPath); + //DownloadConfig(connectionInfo, "config.json", upLoadPath); client.Disconnect(); @@ -870,6 +901,41 @@ namespace ProxySU //MessageBox.Show(v2rayNjsonObject["v"].ToString()); } + + private void Button_Click_4(object sender, RoutedEventArgs e) + { + if (!Directory.Exists("config"))//如果不存在就创建file文件夹      + { + Directory.CreateDirectory("config");//创建该文件夹   + } + string clientConfig= "TemplateConfg\\tcp_client_config.json"; + using (StreamReader reader = File.OpenText(clientConfig)) + { + JObject clientJson = (JObject)JToken.ReadFrom(new JsonTextReader(reader)); + // do stuff + MessageBox.Show(clientJson.ToString()); + clientJson["outbounds"][0]["settings"]["vnext"][0]["address"] = ReceiveConfigurationParameters[4]; + clientJson["outbounds"][0]["settings"]["vnext"][0]["port"] = ReceiveConfigurationParameters[1]; + clientJson["outbounds"][0]["settings"]["vnext"][0]["users"][0]["id"] = ReceiveConfigurationParameters[2]; + if (clientJson.Property("path") != null) + { + //成员path存在 + clientJson["outbounds"][0]["streamSettings"]["wsSettings"]["path"] = ReceiveConfigurationParameters[3]; + + } + if (clientJson.Property("type") != null) + { + //成员type存在 + clientJson["outbounds"][0]["streamSettings"]["kcpSettings"]["header"]["type"] = ReceiveConfigurationParameters[5]; + + } + + using (StreamWriter sw = new StreamWriter(@"config\config.json")) + { + sw.Write(clientJson.ToString()); + } + } + } } } diff --git a/ProxySU/ResultClientInformation.xaml b/ProxySU/ResultClientInformation.xaml index 7277ee1..b0a914c 100644 --- a/ProxySU/ResultClientInformation.xaml +++ b/ProxySU/ResultClientInformation.xaml @@ -5,7 +5,7 @@ xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" xmlns:local="clr-namespace:ProxySU" mc:Ignorable="d" - Title="ResultClientInformation" Height="400" Width="600"> + Title="ResultClientInformation" Height="650" Width="600"> @@ -26,6 +26,13 @@ + + + + + + + @@ -48,15 +55,27 @@ - - - - - - + + + + + + + - + + + + + + + + + + + + diff --git a/ProxySU/ResultClientInformation.xaml.cs b/ProxySU/ResultClientInformation.xaml.cs index 810d9b2..a7363d2 100644 --- a/ProxySU/ResultClientInformation.xaml.cs +++ b/ProxySU/ResultClientInformation.xaml.cs @@ -26,6 +26,7 @@ namespace ProxySU /// public partial class ResultClientInformation : Window { + private string saveFileFolder = ""; public ResultClientInformation() { InitializeComponent(); @@ -121,8 +122,12 @@ namespace ProxySU TextBoxTLS.Text = "none"; HidePathAndTLS(); } - - GenerateV2rayNshareQRcodeAndBase64Url(); + CheckDir("config"); + //if (!Directory.Exists("config"))//如果不存在就创建file文件夹      + //{ + // Directory.CreateDirectory("config");//创建该文件夹   + //} + GenerateV2rayShareQRcodeAndBase64Url(); } private void HidePathAndTLS() @@ -144,7 +149,7 @@ namespace ProxySU //TextBlocTLSonOrNoExplain.Visibility = Visibility.Visible; } //生成v2rayN客户端导入文件 - private void GenerateV2rayNshareQRcodeAndBase64Url() + private void GenerateV2rayShareQRcodeAndBase64Url() { //生成v2rayN的json文件 string v2rayNjsonFile = @" @@ -176,16 +181,45 @@ namespace ProxySU v2rayNjsonObject["ps"] = v2rayNjsonObject["add"]; //设置备注 //MessageBox.Show(v2rayNjsonObject["v"].ToString()); - - MessageBox.Show(v2rayNjsonObject.ToString()); + saveFileFolder = v2rayNjsonObject["ps"].ToString(); + CheckDir(@"config\" + saveFileFolder); + //MessageBox.Show(v2rayNjsonObject.ToString()); string vmessUrl = "vmess://" + ToBase64Encode(v2rayNjsonObject.ToString()); - using (StreamWriter sw = new StreamWriter(@"config\v2rayNvmessUrl.txt")) + TextBoxvVmessUrl.Text = vmessUrl; + using (StreamWriter sw = new StreamWriter($"config\\{saveFileFolder}\\url.txt")) { sw.WriteLine(vmessUrl); } CreateQRCode(vmessUrl); + if (File.Exists(@"config\config.json")) + { + File.Move(@"config\config.json", @"config\" + saveFileFolder + @"\config.json"); + //File.Delete(@"config\config.json");//删除该文件 + } + + using (StreamWriter sw = new StreamWriter($"config\\{saveFileFolder}\\说明.txt")) + { + sw.WriteLine("config.json"); + sw.WriteLine("此文件为v2ray官方程序所使用的客户端配置文件,配置为全局模式,socks5地址:127.0.0.1:1080,http代理地址:127.0.0.1:1081"); + sw.WriteLine("v2ray官方网站:https://www.v2ray.com/"); + sw.WriteLine("v2ray官方程序下载地址:https://github.com/v2ray/v2ray-core/releases"); + sw.WriteLine("下载相应版本,Windows选择v2ray-windows-64.zip或者v2ray-windows-32.zip,解压后提取v2ctl.exe和v2ray.exe。与config.json放在同一目录,运行v2ray.exe即可。"); + sw.WriteLine("-----------------------------------------"); + sw.WriteLine("QR.bmp"); + sw.WriteLine("此文件为v2rayN、v2rayNG(Android)、Shadowrocket(ios)扫码导入节点"); + sw.WriteLine("v2rayN下载网址:https://github.com/2dust/v2rayN/releases"); + sw.WriteLine("v2rayNG(Android)下载网址:https://github.com/2dust/v2rayNG/releases"); + sw.WriteLine("v2rayNG(Android)在Google Play下载网址:https://play.google.com/store/apps/details?id=com.v2ray.ang"); + sw.WriteLine("Shadowrocket(ios)下载,需要使用国外区的AppleID。请自行谷歌方法。"); + + sw.WriteLine("-----------------------------------------"); + sw.WriteLine("url.txt"); + sw.WriteLine("此文件为v2rayN、v2rayNG(Android)、Shadowrocket(ios)复制粘贴导入节点的vmess网址"); + } + + } //生成base64 @@ -207,8 +241,28 @@ namespace ProxySU QRCodeData qrCodeData = qrGenerator.CreateQrCode(varBase64, QRCodeGenerator.ECCLevel.Q); QRCode qrCode = new QRCode(qrCodeData); Bitmap qrCodeImage = qrCode.GetGraphic(20); - qrCodeImage.Save(@"config\v2rayN.bmp"); + IntPtr myImagePtr = qrCodeImage.GetHbitmap(); + BitmapSource imgsource = System.Windows.Interop.Imaging.CreateBitmapSourceFromHBitmap(myImagePtr, IntPtr.Zero, Int32Rect.Empty, BitmapSizeOptions.FromEmptyOptions()); + ImageShareQRcode.Source = imgsource; + //DeleteObject(myImagePtr); + qrCodeImage.Save($"config\\{saveFileFolder}\\QR.bmp"); + //ImageShareQRcode.Source = @"config\v2rayN.bmp"; } + //判断目录是否存在,不存在则创建 + public static bool CheckDir(string folder) + { + try + { + if (!Directory.Exists(folder))//如果不存在就创建file文件夹      + Directory.CreateDirectory(folder);//创建该文件夹   + return true; + } + catch (Exception ex) + { + return false; + } + } + private void Button_Click(object sender, RoutedEventArgs e) { string openFolderPath = @"config"; diff --git a/ProxySU/bin/Release/ProxySU.exe b/ProxySU/bin/Release/ProxySU.exe index 0a1fd8e6753ca978f82ae2771f287d2da9e06006..8a7b5aa099c31b73f7635983d37047a87252343d 100644 GIT binary patch delta 20386 zcmcJ134B!5_5XSA&Agd;$xLQRW7)%dh@grRon0qIGHgYg?%mYg-Xp)MAUv@7KRetKs)O_syG`ghXvWzYfiL z=bU@ax#ymH@44qKw*4bp`;GP+t{${$@rU

UW$5QI1qi^aU8ROy*CEc0aVp(^4eS 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 Zc7NFHLj~vJ{_5l(g|AfJS9Xo}{1**zH8lVL diff --git a/ProxySU/bin/Release/Release.zip b/ProxySU/bin/Release/Release.zip index a2792be2a6ba522a887f0af8f679c4edd08245c1..8000aa75b48bed6562406736efe6a72f5cce9abd 100644 GIT binary patch delta 21131 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