Compare commits

...

26 commits

Author SHA1 Message Date
JieXu
a02afdadee
Merge 8a0e8043fc into b4c20e7b81 2025-10-23 22:09:24 +08:00
JieXu
8a0e8043fc
Update ResUI.fr.resx 2025-10-23 22:09:20 +08:00
JieXu
f3b5930539
Update ResUI.fr.resx 2025-10-23 21:25:26 +08:00
JieXu
e4a52aa547
Update ResUI.fr.resx 2025-10-23 21:02:02 +08:00
JieXu
1ca9b8ca7a
Merge branch '2dust:master' into master 2025-10-23 20:42:13 +08:00
JieXu
25e93efa68
Update ResUI.fr.resx 2025-10-23 20:40:17 +08:00
JieXu
0f491d8043
Update ResUI.fr.resx 2025-10-23 20:17:35 +08:00
JieXu
dd204b1091
Update ResUI.fr.resx 2025-10-23 20:02:37 +08:00
JieXu
45a723a59a
Update ResUI.fr.resx 2025-10-23 19:59:28 +08:00
JieXu
660995b8c9
Update ResUI.fr.resx 2025-10-23 19:56:58 +08:00
JieXu
7e03d4cd81
Update ResUI.fr.resx 2025-10-23 19:51:47 +08:00
JieXu
c614d8294b
Update ResUI.fr.resx 2025-10-23 19:43:22 +08:00
JieXu
17b1c12762
Update ResUI.fr.resx 2025-10-23 19:16:20 +08:00
JieXu
d520e8f19d
Update ResUI.fr.resx 2025-10-23 19:12:22 +08:00
2dust
b4c20e7b81 Bug fix
Some checks are pending
release Linux / build (Release) (push) Waiting to run
release macOS / build (Release) (push) Waiting to run
release Windows desktop (Avalonia UI) / build (Release) (push) Waiting to run
release Windows / build (Release) (push) Waiting to run
https://github.com/2dust/v2rayN/discussions/8168
2025-10-23 19:03:16 +08:00
JieXu
4edce2c5f6
Update ResUI.fr.resx 2025-10-23 18:39:15 +08:00
JieXu
c90d415747
Update ResUI.fr.resx 2025-10-23 18:19:36 +08:00
JieXu
d8ab9c67d3
Update ResUI.fr.resx 2025-10-23 18:12:24 +08:00
DHR60
7c76308c93
Fix (#8180) 2025-10-23 17:58:02 +08:00
DHR60
f28fa31c14
Fix tcp dns (#8179) 2025-10-23 17:57:47 +08:00
JieXu
a2a75d5e16
Update ResUI.fr.resx 2025-10-23 17:36:42 +08:00
JieXu
7f271e3a75
Update ResUI.fr.resx 2025-10-23 17:32:19 +08:00
JieXu
4361fd86a3
Update ResUI.fr.resx 2025-10-23 17:23:28 +08:00
JieXu
d567cfbeaf
Update ResUI.fr.resx 2025-10-23 17:18:50 +08:00
JieXu
d828767690
Update ResUI.fr.resx 2025-10-23 17:12:25 +08:00
JieXu
9304e5e8a5
Update ResUI.fr.resx 2025-10-23 17:04:59 +08:00
4 changed files with 33 additions and 24 deletions

View file

@ -1221,6 +1221,7 @@ public static class ConfigHandler
CoreType = coreType, CoreType = coreType,
ConfigType = EConfigType.PolicyGroup, ConfigType = EConfigType.PolicyGroup,
Remarks = remark, Remarks = remark,
IsSub = false
}; };
if (!subId.IsNullOrEmpty()) if (!subId.IsNullOrEmpty())
{ {

View file

@ -187,7 +187,7 @@
<value>Type</value> <value>Type</value>
</data> </data>
<data name="LvSubscription" xml:space="preserve"> <data name="LvSubscription" xml:space="preserve">
<value>Groupe dabonnement</value> <value>Grp abonn.</value>
</data> </data>
<data name="LvTodayDownloadDataAmount" xml:space="preserve"> <data name="LvTodayDownloadDataAmount" xml:space="preserve">
<value>Téléchargement du jour</value> <value>Téléchargement du jour</value>
@ -202,7 +202,7 @@
<value>Total téléversé</value> <value>Total téléversé</value>
</data> </data>
<data name="LvTransportProtocol" xml:space="preserve"> <data name="LvTransportProtocol" xml:space="preserve">
<value>Protocole de transport</value> <value>Protoc. Transport</value>
</data> </data>
<data name="MsgDownloadV2rayCoreSuccessfully" xml:space="preserve"> <data name="MsgDownloadV2rayCoreSuccessfully" xml:space="preserve">
<value>Téléchargement du Core réussi</value> <value>Téléchargement du Core réussi</value>
@ -397,7 +397,7 @@
<value>Local</value> <value>Local</value>
</data> </data>
<data name="MsgServerTitle" xml:space="preserve"> <data name="MsgServerTitle" xml:space="preserve">
<value>Filtre, appuyez sur Entrée pour exécuter</value> <value>Filtre : Entrée pour exécuter</value>
</data> </data>
<data name="menuCheckUpdate" xml:space="preserve"> <data name="menuCheckUpdate" xml:space="preserve">
<value>Rechercher mises à jour</value> <value>Rechercher mises à jour</value>
@ -463,7 +463,7 @@
<value>Mode PAC</value> <value>Mode PAC</value>
</data> </data>
<data name="menuSystemProxySet" xml:space="preserve"> <data name="menuSystemProxySet" xml:space="preserve">
<value>Configurer automatiquement le proxy système</value> <value>Configuration auto proxy système</value>
</data> </data>
<data name="TbSettingsColor" xml:space="preserve"> <data name="TbSettingsColor" xml:space="preserve">
<value>Couleur</value> <value>Couleur</value>
@ -607,7 +607,7 @@
<value>Alias (remarks)</value> <value>Alias (remarks)</value>
</data> </data>
<data name="TbRequestHost" xml:space="preserve"> <data name="TbRequestHost" xml:space="preserve">
<value>Nom dhôte de camouflage (host)</value> <value>Domaine de camouflage (host)</value>
</data> </data>
<data name="TbSecurity" xml:space="preserve"> <data name="TbSecurity" xml:space="preserve">
<value>Méthode de chiffrement (security)</value> <value>Méthode de chiffrement (security)</value>
@ -616,7 +616,7 @@
<value>SNI</value> <value>SNI</value>
</data> </data>
<data name="TbStreamSecurity" xml:space="preserve"> <data name="TbStreamSecurity" xml:space="preserve">
<value>Sécurité de la couche de transport (TLS)</value> <value>Sécurité couche transport (TLS)</value>
</data> </data>
<data name="TipNetwork" xml:space="preserve"> <data name="TipNetwork" xml:space="preserve">
<value>*tcp par défaut ; un mauvais choix empêchera la connexion</value> <value>*tcp par défaut ; un mauvais choix empêchera la connexion</value>
@ -640,13 +640,13 @@
<value>ID utilisateur (id)</value> <value>ID utilisateur (id)</value>
</data> </data>
<data name="TbSecurity3" xml:space="preserve"> <data name="TbSecurity3" xml:space="preserve">
<value>Méthode de chiffrement (encryption)</value> <value>Mode chiffrement (encryption)</value>
</data> </data>
<data name="TbSecurity4" xml:space="preserve"> <data name="TbSecurity4" xml:space="preserve">
<value>Nom dutilisateur (optionnel)</value> <value>Nom dutilisateur (optionnel)</value>
</data> </data>
<data name="TbSecurity5" xml:space="preserve"> <data name="TbSecurity5" xml:space="preserve">
<value>Méthode de chiffrement (encryption)</value> <value>Mode chiffrement (encryption)</value>
</data> </data>
<data name="TbPreSocksPort" xml:space="preserve"> <data name="TbPreSocksPort" xml:space="preserve">
<value>Port Socks</value> <value>Port Socks</value>
@ -715,7 +715,7 @@
<value>Niveau de journalisation</value> <value>Niveau de journalisation</value>
</data> </data>
<data name="TbSettingsMuxEnabled" xml:space="preserve"> <data name="TbSettingsMuxEnabled" xml:space="preserve">
<value>Activer la multiplexion Mux</value> <value>Activer Mux multiplex</value>
</data> </data>
<data name="TbSettingsN" xml:space="preserve"> <data name="TbSettingsN" xml:space="preserve">
<value>Paramètres v2rayN</value> <value>Paramètres v2rayN</value>
@ -988,16 +988,16 @@
<value>Redémarrer en tant quadministrateur</value> <value>Redémarrer en tant quadministrateur</value>
</data> </data>
<data name="LvMoreUrl" xml:space="preserve"> <data name="LvMoreUrl" xml:space="preserve">
<value>Adresses supplémentaires (URL), séparées par des virgules ; la conversion dabonnement sera désactivée</value> <value>Adresses suppl. (URL), séparées par des virgules ; la conversion dabonnement sera désactivée</value>
</data> </data>
<data name="LvAutoUpdateInterval" xml:space="preserve"> <data name="LvAutoUpdateInterval" xml:space="preserve">
<value>Intervalle de mise à jour automatique (minutes)</value> <value>Intervalle maj. auto (min)</value>
</data> </data>
<data name="TbSettingsLogEnabledToFile" xml:space="preserve"> <data name="TbSettingsLogEnabledToFile" xml:space="preserve">
<value>Activer lenregistrement des journaux dans un fichier</value> <value>Activer lenregistrement des journaux dans un fichier</value>
</data> </data>
<data name="LvConvertTarget" xml:space="preserve"> <data name="LvConvertTarget" xml:space="preserve">
<value>Type de cible de conversion dabonnement</value> <value>Type cible conv. dabonnement</value>
</data> </data>
<data name="LvConvertTargetTip" xml:space="preserve"> <data name="LvConvertTargetTip" xml:space="preserve">
<value>Laisser vide si aucune conversion nest nécessaire</value> <value>Laisser vide si aucune conversion nest nécessaire</value>
@ -1042,7 +1042,7 @@
<value>Ajouter [TUIC]</value> <value>Ajouter [TUIC]</value>
</data> </data>
<data name="TbHeaderType8" xml:space="preserve"> <data name="TbHeaderType8" xml:space="preserve">
<value>Algorithme de contrôle de congestion</value> <value>Algo contrôle congestion</value>
</data> </data>
<data name="LvPrevProfile" xml:space="preserve"> <data name="LvPrevProfile" xml:space="preserve">
<value>Alias de configuration du proxy amont</value> <value>Alias de configuration du proxy amont</value>
@ -1051,7 +1051,7 @@
<value>Alias de configuration du proxy aval</value> <value>Alias de configuration du proxy aval</value>
</data> </data>
<data name="LvPrevProfileTip" xml:space="preserve"> <data name="LvPrevProfileTip" xml:space="preserve">
<value>Assurez-vous que lalias de configuration existe et est unique</value> <value>Assurez-vous que lalias config existe et est unique</value>
</data> </data>
<data name="TbSettingsTunAutoRoute" xml:space="preserve"> <data name="TbSettingsTunAutoRoute" xml:space="preserve">
<value>Routage automatique</value> <value>Routage automatique</value>
@ -1120,7 +1120,7 @@
<value>Set de règles sing-box perso</value> <value>Set de règles sing-box perso</value>
</data> </data>
<data name="NeedRebootTips" xml:space="preserve"> <data name="NeedRebootTips" xml:space="preserve">
<value>Opération réussie. Veuillez redémarrer lapplication via le menu Paramètres.</value> <value>Opération réussie. Veuillez redémarrer lapp via le menu Paramètres.</value>
</data> </data>
<data name="menuOpenTheFileLocation" xml:space="preserve"> <data name="menuOpenTheFileLocation" xml:space="preserve">
<value>Ouvrir lemplacement du fichier</value> <value>Ouvrir lemplacement du fichier</value>
@ -1225,7 +1225,7 @@
<value>Afficher ou masquer linterface principale</value> <value>Afficher ou masquer linterface principale</value>
</data> </data>
<data name="TbPreSocksPort4Sub" xml:space="preserve"> <data name="TbPreSocksPort4Sub" xml:space="preserve">
<value>Port Socks de la configuration personnalisée</value> <value>Port Socks config personnalisée</value>
</data> </data>
<data name="menuBackupAndRestore" xml:space="preserve"> <data name="menuBackupAndRestore" xml:space="preserve">
<value>Sauvegarder et restaurer</value> <value>Sauvegarder et restaurer</value>
@ -1297,7 +1297,7 @@
<value>Iran</value> <value>Iran</value>
</data> </data>
<data name="TbSettingsChinaUserTip" xml:space="preserve"> <data name="TbSettingsChinaUserTip" xml:space="preserve">
<value>Les utilisateurs de la région Chine peuvent ignorer ceci</value> <value>Les utilisateurs de Chine peuvent ignorer</value>
</data> </data>
<data name="menuAddServerViaImage" xml:space="preserve"> <data name="menuAddServerViaImage" xml:space="preserve">
<value>Scanner le QR code dans limage</value> <value>Scanner le QR code dans limage</value>
@ -1318,7 +1318,7 @@
<value>Mémo</value> <value>Mémo</value>
</data> </data>
<data name="TbSettingsLinuxSudoPassword" xml:space="preserve"> <data name="TbSettingsLinuxSudoPassword" xml:space="preserve">
<value>Mot de passe sudo du système</value> <value>Mot de passe sudo système</value>
</data> </data>
<data name="TbSettingsLinuxSudoPasswordTip" xml:space="preserve"> <data name="TbSettingsLinuxSudoPasswordTip" xml:space="preserve">
<value>Le mot de passe sera vérifié en ligne de commande. En cas déchec ou de dysfonctionnement, redémarrez lapplication. Il nest pas stocké et doit être saisi à chaque redémarrage.</value> <value>Le mot de passe sera vérifié en ligne de commande. En cas déchec ou de dysfonctionnement, redémarrez lapplication. Il nest pas stocké et doit être saisi à chaque redémarrage.</value>
@ -1336,7 +1336,7 @@
<value>Niveau de concurrence lors des tests multithread</value> <value>Niveau de concurrence lors des tests multithread</value>
</data> </data>
<data name="TbSettingsExceptionTip2" xml:space="preserve"> <data name="TbSettingsExceptionTip2" xml:space="preserve">
<value>Exceptions : ne pas utiliser le proxy pour les adresses suivantes. Séparez par des virgules (,).</value> <value>Exceptions : ne pas utiliser le proxy pour ces adresses, séparées par des virgules (,).</value>
</data> </data>
<data name="TbSettingsDestOverride" xml:space="preserve"> <data name="TbSettingsDestOverride" xml:space="preserve">
<value>Type de détection de trafic</value> <value>Type de détection de trafic</value>
@ -1360,7 +1360,7 @@
<value>Selon le résultat des tests</value> <value>Selon le résultat des tests</value>
</data> </data>
<data name="menuRemoveInvalidServerResult" xml:space="preserve"> <data name="menuRemoveInvalidServerResult" xml:space="preserve">
<value>Supprimer les éléments invalides selon le résultat des tests</value> <value>Supprimer les éléments invalides selon résultats tests</value>
</data> </data>
<data name="RemoveInvalidServerResultTip" xml:space="preserve"> <data name="RemoveInvalidServerResultTip" xml:space="preserve">
<value>{0} résultats de test invalides supprimés.</value> <value>{0} résultats de test invalides supprimés.</value>
@ -1579,7 +1579,7 @@
<value>Protocole « {0} » non pris en charge.</value> <value>Protocole « {0} » non pris en charge.</value>
</data> </data>
<data name="TbSettingsHide2TrayWhenCloseTip" xml:space="preserve"> <data name="TbSettingsHide2TrayWhenCloseTip" xml:space="preserve">
<value>Si le système na pas de zone de notification, ne pas activer cette option</value> <value>Si le système na pas de zone de notif., nactivez pas cette option</value>
</data> </data>
<data name="TbRuleType" xml:space="preserve"> <data name="TbRuleType" xml:space="preserve">
<value>Type de règle</value> <value>Type de règle</value>

View file

@ -97,9 +97,12 @@ public partial class CoreConfigV2rayService
continue; continue;
} }
} }
else if (!fullConfigTemplate.ProxyDetour.IsNullOrEmpty()) else if ((!fullConfigTemplate.ProxyDetour.IsNullOrEmpty())
&& ((outbound.streamSettings?.sockopt?.dialerProxy.IsNullOrEmpty() ?? true) == true))
{ {
var outboundAddress = outbound.settings?.servers?.FirstOrDefault()?.address ?? outbound.settings?.vnext?.FirstOrDefault()?.address ?? string.Empty; var outboundAddress = outbound.settings?.servers?.FirstOrDefault()?.address
?? outbound.settings?.vnext?.FirstOrDefault()?.address
?? string.Empty;
if (!Utils.IsPrivateNetwork(outboundAddress)) if (!Utils.IsPrivateNetwork(outboundAddress))
{ {
outbound.streamSettings ??= new StreamSettings4Ray(); outbound.streamSettings ??= new StreamSettings4Ray();

View file

@ -82,11 +82,16 @@ public partial class CoreConfigV2rayService
var (domain, scheme, port, path) = Utils.ParseUrl(dnsAddress); var (domain, scheme, port, path) = Utils.ParseUrl(dnsAddress);
var domainFinal = dnsAddress; var domainFinal = dnsAddress;
int? portFinal = null; int? portFinal = null;
if (scheme.IsNullOrEmpty() || scheme.Contains("udp", StringComparison.OrdinalIgnoreCase) || scheme.Contains("tcp", StringComparison.OrdinalIgnoreCase)) if (scheme.IsNullOrEmpty() || scheme.StartsWith("udp", StringComparison.OrdinalIgnoreCase))
{ {
domainFinal = domain; domainFinal = domain;
portFinal = port > 0 ? port : null; portFinal = port > 0 ? port : null;
} }
else if (scheme.StartsWith("tcp", StringComparison.OrdinalIgnoreCase))
{
domainFinal = scheme + "://" + domain;
portFinal = port > 0 ? port : null;
}
var dnsServer = new DnsServer4Ray var dnsServer = new DnsServer4Ray
{ {
address = domainFinal, address = domainFinal,