Repository navigation
FR UO Topic proxy
Українська · Русский · English · Deutsch · Français · Italiano · Español · 繁體中文 · 日本語 · 한국어
Accueil · C# · IDE · UO API · A–Z · Exemples · Langues
Noms compatibles API pour les proxys. La simple présence d'un nom dans le registre ne prouve pas la prise en charge du transport : les restrictions réelles sont indiquées sur chaque fiche.
| Sujet | Commandes et explications |
|---|---|
| UseProxy | UO.UseProxy |
| ProxyIP | UO.ProxyIP |
| ProxyPort | UO.ProxyPort |
| Authentication | UO.UseProxy |
UO.UseProxy · UO.ProxyIP · UO.ProxyPort
Chaque carte de commande possède plusieurs scénarios indépendants : code direct, fonctions et classes. Vous trouverez ci-dessous une sélection de courts scénarios ; des restrictions et une analyse complète sont à prévoir.
Paramètres, résultat et tous les scénarios
return UO.ProxyIP();Paramètres, résultat et tous les scénarios
return UO.ProxyPort();Українська · Русский · English · Deutsch · Français · Italiano · Español · 繁體中文 · 日本語 · 한국어
dynamic UO.ProxyIP();Lit l'adresse proxy du profil actuel pour vérifier l'itinéraire sélectionné avant de se connecter.
Il n'y a pas de paramètres.
string : Le IP ou DNS spécifié est le nom du proxy. Une chaîne vide pour une jointure directe. Le nom DNS n'est pas converti en IP ici ; Ce n'est pas l'adresse du serveur de jeu.
- Il n'y a pas de paramètres. Lit les paramètres du propriétaire de cette session, y compris sans connexion. N'active ni ne désactive le proxy, n'y accède pas, ne se reconnecte pas et ne révèle pas le mot de passe. Un Full standard sans proxy géré renvoie les valeurs de connexion directe. Pour appliquer les modifications de connexion, modifiez le profil et redémarrez sa session. Le profil est utilisé à la fois pour la connexion et pour la connexion aux jeux.
Chaque exemple peut être enregistré dans un fichier séparé .csx et exécuté dans IDE. Les fonctions d'objet UO et d'attente fournissent l'hôte de la session de jeu en cours. Remplacez les noms, coordonnées et adresses de la démo serial par les vôtres.
Exécutez ce code dans un fichier .csx séparé. Les arguments sont visibles dans l’appel ; remplacez les noms, serials et adresses d’exemple par les vôtres.
Le résultat d’un seul appel est affiché dans le journal. Un nombre n’est pas converti en bool ; un tableau est affiché par son nombre d’éléments.
object? result = UO.ProxyIP();
UO.Print(result is Array values ? "Count: " + values.Length : Convert.ToString(result));Paramètres et déroulement de l’exécution :
- Main renvoie le paramètre actuel. Pour proxy.example.invalid :1080, l'adresse est "proxy.example.invalid", port 1080, UseProxy == 1. Pour une connexion directe, respectivement "", 0, 0. L'exemple de domaine est un stub et non un proxy fonctionnel.
return UO.ProxyIP();Paramètres et déroulement de l’exécution :
- Le tableau contient deux adresses résolues avec une correspondance exacte. La boucle compare le nom configuré uniquement si UseProxy == 1 et renvoie 1 s'il y a une correspondance, sinon 0. Replace the names with your own. Il s'agit d'une vérification de la configuration et non de l'authenticité du proxy distant.
return RunScenario();
object? RunScenario()
{
dynamic[] allowed = new dynamic[checked((int)(1) + 1)];
allowed[0] = "proxy.example.invalid";
allowed[1] = "127.0.0.1";
if (Truth(UO.UseProxy()))
{
var index = 0;
while (Truth(index < ArrayLength(allowed)))
{
if (Truth(UO.ProxyIP() == allowed[index]))
{
return 1;
}
index = index + 1;
}
}
return 0;
return null;
}
int ArrayLength(object? value) => value is System.Array array ? array.Length : 0;
bool Truth(object? value) => value is bool flag ? flag : value is string text ? !string.IsNullOrEmpty(text) : value != null && Convert.ToDouble(value) != 0;Paramètres et déroulement de l’exécution :
- RequireRoute reçoit l'adresse="proxy.example.invalid", port=1080. Vérifie les trois paramètres jusqu'à UO.Connect. Un décalage donne 0 sans connexion. Le match demande à se connecter et donne 1 ; Il s'agit d'une demande et non d'une confirmation d'entrée dans le jeu. Remplacez les deux fiches ; UO.Connected vérifier séparément.
return new ScriptScenario(UO, WaitAsync, Args, Cancellation, Checkpoint).RunScenario();
class ScriptScenario
{
private readonly global::ClassicUO.CSharp.CSharpGameApi UO;
private readonly Func<int, Task> WaitAsync;
private readonly string[] Args;
private readonly CancellationToken Cancellation;
private readonly Action Checkpoint;
public ScriptScenario(global::ClassicUO.CSharp.CSharpGameApi api, Func<int, Task> wait, string[] args, CancellationToken cancellation, Action checkpoint)
{
UO = api;
WaitAsync = wait;
Args = args;
Cancellation = cancellation;
Checkpoint = checkpoint;
}
public object? RunScenario()
{
return RequireRoute("proxy.example.invalid", 1080);
return null;
}
dynamic RequireRoute(dynamic address, dynamic port)
{
if (!(Truth(UO.UseProxy())))
{
return 0;
}
if (Truth(UO.ProxyIP() != address) || Truth(UO.ProxyPort() != port))
{
return 0;
}
UO.Connect();
return 1;
}
bool Truth(object? value) => value is bool flag ? flag : value is string text ? !string.IsNullOrEmpty(text) : value != null && Convert.ToDouble(value) != 0;
}C# distingue les majuscules. Utilisez le nom UO exact. Comparez les indicateurs numériques à 0 ; utilisez bool seulement si la signature renvoie bool.
Paramètres: Aucun paramètre.
Résultat: dynamic / Any.
Pendant un appel:
Code interne de l’implémentation ; ce n’est pas un script autonome.
case "proxyip": return new InjectionValue((bridge as IProxyMetadataBridge)?.ProxyAddress ?? string.Empty);Українська · Русский · English · Deutsch · Français · Italiano · Español · 繁體中文 · 日本語 · 한국어
dynamic UO.ProxyPort();Lit le port proxy du profil actuel pour vérifier la paire adresse/port.
Il n'y a pas de paramètres.
int : port proxy configuré dans 1..65535 ; 0 pour une connexion directe. Ce n'est pas un port de serveur de jeu.
- Il n'y a pas de paramètres. Lit les paramètres du propriétaire de cette session, y compris sans connexion. N'active ni ne désactive le proxy, n'y accède pas, ne se reconnecte pas et ne révèle pas le mot de passe. Un Full standard sans proxy géré renvoie les valeurs de connexion directe. Pour appliquer les modifications de connexion, modifiez le profil et redémarrez sa session. Le profil est utilisé à la fois pour la connexion et pour la connexion aux jeux.
Chaque exemple peut être enregistré dans un fichier séparé .csx et exécuté dans IDE. Les fonctions d'objet UO et d'attente fournissent l'hôte de la session de jeu en cours. Remplacez les noms, coordonnées et adresses de la démo serial par les vôtres.
Exécutez ce code dans un fichier .csx séparé. Les arguments sont visibles dans l’appel ; remplacez les noms, serials et adresses d’exemple par les vôtres.
Le résultat d’un seul appel est affiché dans le journal. Un nombre n’est pas converti en bool ; un tableau est affiché par son nombre d’éléments.
object? result = UO.ProxyPort();
UO.Print(result is Array values ? "Count: " + values.Length : Convert.ToString(result));Paramètres et déroulement de l’exécution :
- Main renvoie le paramètre actuel. Pour proxy.example.invalid :1080, l'adresse est "proxy.example.invalid", port 1080, UseProxy == 1. Pour une connexion directe, respectivement "", 0, 0. L'exemple de domaine est un stub et non un proxy fonctionnel.
return UO.ProxyPort();Paramètres et déroulement de l’exécution :
- RouteLabel construit la signature de la route configurée : adresse:port ou « direct » pour une connexion directe. Le login et le mot de passe ne sont pas lisibles.
return RunScenario();
object? RunScenario()
{
return RouteLabel();
return null;
}
dynamic RouteLabel()
{
if (Truth(UO.UseProxy()))
{
return UO.ProxyIP() + ":" + Convert.ToString(UO.ProxyPort());
}
return "direct";
}
bool Truth(object? value) => value is bool flag ? flag : value is string text ? !string.IsNullOrEmpty(text) : value != null && Convert.ToDouble(value) != 0;Paramètres et déroulement de l’exécution :
- RequireRoute reçoit l'adresse="proxy.example.invalid", port=1080. Vérifie les trois paramètres jusqu'à UO.Connect. Un décalage donne 0 sans connexion. Le match demande à se connecter et donne 1 ; Il s'agit d'une demande et non d'une confirmation d'entrée dans le jeu. Remplacez les deux fiches ; UO.Connected vérifier séparément.
return new ScriptScenario(UO, WaitAsync, Args, Cancellation, Checkpoint).RunScenario();
class ScriptScenario
{
private readonly global::ClassicUO.CSharp.CSharpGameApi UO;
private readonly Func<int, Task> WaitAsync;
private readonly string[] Args;
private readonly CancellationToken Cancellation;
private readonly Action Checkpoint;
public ScriptScenario(global::ClassicUO.CSharp.CSharpGameApi api, Func<int, Task> wait, string[] args, CancellationToken cancellation, Action checkpoint)
{
UO = api;
WaitAsync = wait;
Args = args;
Cancellation = cancellation;
Checkpoint = checkpoint;
}
public object? RunScenario()
{
return RequireRoute("proxy.example.invalid", 1080);
return null;
}
dynamic RequireRoute(dynamic address, dynamic port)
{
if (!(Truth(UO.UseProxy())))
{
return 0;
}
if (Truth(UO.ProxyIP() != address) || Truth(UO.ProxyPort() != port))
{
return 0;
}
UO.Connect();
return 1;
}
bool Truth(object? value) => value is bool flag ? flag : value is string text ? !string.IsNullOrEmpty(text) : value != null && Convert.ToDouble(value) != 0;
}C# distingue les majuscules. Utilisez le nom UO exact. Comparez les indicateurs numériques à 0 ; utilisez bool seulement si la signature renvoie bool.
Paramètres: Aucun paramètre.
Résultat: dynamic / Any.
Pendant un appel:
Code interne de l’implémentation ; ce n’est pas un script autonome.
case "proxyport": return new InjectionValue((bridge as IProxyMetadataBridge)?.ProxyPort ?? 0);Українська · Русский · English · Deutsch · Français · Italiano · Español · 繁體中文 · 日本語 · 한국어
dynamic UO.UseProxy();Vérifie si cette session est configurée pour se connecter via un proxy.
Il n'y a pas de paramètres.
int 1 (true) si le proxy est configuré, sinon 0 (false). Dans C# vérifiez si (result != 0) ou if (result == 1); le résultat est de type int, donc if (résultat) et la comparaison avec true ne sont pas autorisés. L'unité ne confirme pas la disponibilité du proxy ni l'autorisation réussie.
- Il n'y a pas de paramètres. Lit les paramètres du propriétaire de cette session, y compris sans connexion. N'active ni ne désactive le proxy, n'y accède pas, ne se reconnecte pas et ne révèle pas le mot de passe. Un Full standard sans proxy géré renvoie les valeurs de connexion directe. Pour appliquer les modifications de connexion, modifiez le profil et redémarrez sa session. Le profil est utilisé à la fois pour la connexion et pour la connexion aux jeux.
Chaque exemple peut être enregistré dans un fichier séparé .csx et exécuté dans IDE. Les fonctions d'objet UO et d'attente fournissent l'hôte de la session de jeu en cours. Remplacez les noms, coordonnées et adresses de la démo serial par les vôtres.
Exécutez ce code dans un fichier .csx séparé. Les arguments sont visibles dans l’appel ; remplacez les noms, serials et adresses d’exemple par les vôtres.
Le résultat d’un seul appel est affiché dans le journal. Un nombre n’est pas converti en bool ; un tableau est affiché par son nombre d’éléments.
object? result = UO.UseProxy();
UO.Print(result is Array values ? "Count: " + values.Length : Convert.ToString(result));Paramètres et déroulement de l’exécution :
- Main renvoie le paramètre actuel. Pour proxy.example.invalid :1080, l'adresse est "proxy.example.invalid", port 1080, UseProxy == 1. Pour une connexion directe, respectivement "", 0, 0. L'exemple de domaine est un stub et non un proxy fonctionnel.
return UO.UseProxy();Paramètres et déroulement de l’exécution :
- RouteLabel construit la signature de la route configurée : adresse:port ou « direct » pour une connexion directe. Le login et le mot de passe ne sont pas lisibles.
return RunScenario();
object? RunScenario()
{
return RouteLabel();
return null;
}
dynamic RouteLabel()
{
if (Truth(UO.UseProxy()))
{
return UO.ProxyIP() + ":" + Convert.ToString(UO.ProxyPort());
}
return "direct";
}
bool Truth(object? value) => value is bool flag ? flag : value is string text ? !string.IsNullOrEmpty(text) : value != null && Convert.ToDouble(value) != 0;Paramètres et déroulement de l’exécution :
- RequireRoute reçoit l'adresse="proxy.example.invalid", port=1080. Vérifie les trois paramètres jusqu'à UO.Connect. Un décalage donne 0 sans connexion. Le match demande à se connecter et donne 1 ; Il s'agit d'une demande et non d'une confirmation d'entrée dans le jeu. Remplacez les deux fiches ; UO.Connected vérifier séparément.
return new ScriptScenario(UO, WaitAsync, Args, Cancellation, Checkpoint).RunScenario();
class ScriptScenario
{
private readonly global::ClassicUO.CSharp.CSharpGameApi UO;
private readonly Func<int, Task> WaitAsync;
private readonly string[] Args;
private readonly CancellationToken Cancellation;
private readonly Action Checkpoint;
public ScriptScenario(global::ClassicUO.CSharp.CSharpGameApi api, Func<int, Task> wait, string[] args, CancellationToken cancellation, Action checkpoint)
{
UO = api;
WaitAsync = wait;
Args = args;
Cancellation = cancellation;
Checkpoint = checkpoint;
}
public object? RunScenario()
{
return RequireRoute("proxy.example.invalid", 1080);
return null;
}
dynamic RequireRoute(dynamic address, dynamic port)
{
if (!(Truth(UO.UseProxy())))
{
return 0;
}
if (Truth(UO.ProxyIP() != address) || Truth(UO.ProxyPort() != port))
{
return 0;
}
UO.Connect();
return 1;
}
bool Truth(object? value) => value is bool flag ? flag : value is string text ? !string.IsNullOrEmpty(text) : value != null && Convert.ToDouble(value) != 0;
}C# distingue les majuscules. Utilisez le nom UO exact. Comparez les indicateurs numériques à 0 ; utilisez bool seulement si la signature renvoie bool.
Paramètres: Aucun paramètre.
Résultat: dynamic / Any.
Pendant un appel:
Code interne de l’implémentation ; ce n’est pas un script autonome.
case "useproxy": return new InjectionValue((bridge as IProxyMetadataBridge)?.UsesProxy == true ? 1 : 0);ClassicUO — Bad Newbie & C# Scripts IDE