big changes

This commit is contained in:
Mike Gisler
2026-07-28 08:03:12 +02:00
parent c73f53d740
commit 4d19873776
179 changed files with 14953 additions and 494 deletions
@@ -7,28 +7,102 @@ public static class AppSettingsLoader
{
public static AppSettings Load()
{
// Zuerst Output-Verzeichnis, dann aktuelles Arbeitsverzeichnis (z.B. VS Debug).
string basePath = Directory.Exists(AppContext.BaseDirectory)
? AppContext.BaseDirectory
: Directory.GetCurrentDirectory();
string settingsPath = Path.Combine(basePath, "appsettings.json");
if (!File.Exists(settingsPath))
{
string cwdPath = Path.Combine(Directory.GetCurrentDirectory(), "appsettings.json");
string cwdPath = Path.Combine(
Directory.GetCurrentDirectory(),
"appsettings.json");
if (File.Exists(cwdPath))
{
basePath = Directory.GetCurrentDirectory();
}
else
{
throw new FileNotFoundException(
"Die Datei appsettings.json wurde nicht gefunden.",
settingsPath);
}
}
IConfigurationRoot configuration = new ConfigurationBuilder()
.SetBasePath(basePath)
.AddJsonFile("appsettings.json", optional: true, reloadOnChange: false)
.AddJsonFile(
"appsettings.json",
optional: false,
reloadOnChange: false)
.Build();
AppSettings settings = new();
configuration.Bind(settings);
Validate(settings);
return settings;
}
private static void Validate(
AppSettings settings)
{
if (string.IsNullOrWhiteSpace(settings.EnvironmentCode))
{
throw new InvalidOperationException(
"EnvironmentCode fehlt in appsettings.json.");
}
settings.EnvironmentCode =
settings.EnvironmentCode
.Trim()
.ToUpperInvariant();
string[] allowedEnvironmentCodes =
[
"DEV",
"TEST",
"PROD"
];
if (!allowedEnvironmentCodes.Contains(
settings.EnvironmentCode,
StringComparer.OrdinalIgnoreCase))
{
throw new InvalidOperationException(
$"EnvironmentCode '{settings.EnvironmentCode}' ist ungültig. " +
"Erlaubt sind DEV, TEST und PROD.");
}
if (string.IsNullOrWhiteSpace(
settings.Database.ConnectionString))
{
throw new InvalidOperationException(
"Database:ConnectionString fehlt in appsettings.json.");
}
if (string.IsNullOrWhiteSpace(
settings.Runtime.JavaExecutablePath))
{
throw new InvalidOperationException(
"Runtime:JavaExecutablePath fehlt in appsettings.json.");
}
if (string.IsNullOrWhiteSpace(
settings.Runtime.SonicClientLibraryPath))
{
throw new InvalidOperationException(
"Runtime:SonicClientLibraryPath fehlt in appsettings.json.");
}
if (string.IsNullOrWhiteSpace(
settings.AlwaysEncrypted.CertificateThumbprint))
{
throw new InvalidOperationException(
"AlwaysEncrypted:CertificateThumbprint fehlt.");
}
}
}
+1
View File
@@ -29,6 +29,7 @@
ClientSize = new Size(800, 450);
Name = "Form1";
Text = "Form1";
Load += Form1_Load;
ResumeLayout(false);
}
+373 -70
View File
@@ -1,16 +1,15 @@
using System;
using System.Security.Cryptography;
using System.Security.Cryptography.X509Certificates;
using ZA.CoreService.ESBCertificateManager.Configuration;
using ZA.CoreService.ESBCertificateManager.Models;
using ZA.CoreService.ESBCertificateManager.Services;
using Microsoft.Data.SqlClient;
namespace ZA.CoreService.ESBCertificateManager
{
public partial class Form1 : Form
{
// ---------------------------------------------------------
// ZIEHL-ABEGG-inspirierte Dark-Mode-Farbpalette
// ---------------------------------------------------------
// Große Hintergrundflächen
private readonly Color BackgroundColor = Color.FromArgb(10, 18, 34); // #0A1222
@@ -32,8 +31,17 @@ namespace ZA.CoreService.ESBCertificateManager
private readonly Color RedColor = Color.FromArgb(239, 106, 106); // #EF6A6A
private readonly AppSettings _settings;
private readonly DeploymentOrchestrator _orchestrator;
private readonly SonicContainerDiscovery _sonicDiscovery;
private DeploymentOrchestrator? _orchestrator;
private readonly SonicConnectionRepository _sonicConnectionRepository;
private readonly DeploymentTargetRepository _deploymentTargetRepository;
private IReadOnlyList<DatabaseSonicConnection>
_databaseSonicConnections = [];
private CertificateInfo? _loadedCertificateInfo;
private IReadOnlyList<DeploymentTarget> _loadedTargets = [];
private bool _isOperationRunning;
private CancellationTokenSource? _runCts;
private Label lblStatus = null!;
private Label lblStatusDot = null!;
@@ -64,10 +72,6 @@ namespace ZA.CoreService.ESBCertificateManager
private Button btnSelectFile = null!;
private bool isCertificateFileLoaded;
private CertificateInfo? _loadedCertificateInfo;
private IReadOnlyList<DeploymentTarget> _loadedTargets = [];
private bool _isOperationRunning;
private CancellationTokenSource? _runCts;
private int nvbarlaststate = 1;
public Form1()
@@ -75,11 +79,19 @@ namespace ZA.CoreService.ESBCertificateManager
InitializeComponent();
_settings = AppSettingsLoader.Load();
_orchestrator = new DeploymentOrchestrator(_settings);
_sonicDiscovery = new SonicContainerDiscovery(_settings.SonicConnections);
_sonicConnectionRepository = new SonicConnectionRepository(
_settings.Database.ConnectionString);
_deploymentTargetRepository = new DeploymentTargetRepository(
_settings.Database.ConnectionString);
BuildDesign();
Shown += async (_, _) => await LoadTargetsAsync();
Shown += async (_, _) => await InitializeApplicationAsync();
}
private Button CreateWindowButton(string text)
{
@@ -123,7 +135,115 @@ namespace ZA.CoreService.ESBCertificateManager
dragStartPoint = e.Location;
}
}
private async Task InitializeApplicationAsync()
{
SetStatus(
"Java- und Sonic-Runtime werden geprüft ...",
isError: false);
RuntimeEnvironmentValidator runtimeValidator = new();
RuntimeValidationResult runtimeResult =
await runtimeValidator.ValidateAsync(
_settings.Runtime);
if (!runtimeResult.IsValid)
{
string details = string.Join(
Environment.NewLine,
runtimeResult.Issues.Select(
issue => "• " + issue));
throw new InvalidOperationException(
"Die lokale Runtime-Konfiguration ist unvollständig:" +
Environment.NewLine +
Environment.NewLine +
details);
}
try
{
_databaseSonicConnections =
await _sonicConnectionRepository.GetActiveAsync();
List<SonicConnection> runtimeConnections =
_databaseSonicConnections
.Where(connection => connection.HasCredentials)
.Select(connection =>
connection.ToRuntimeConnection(
_settings.Runtime))
.ToList();
_orchestrator = new DeploymentOrchestrator(
_settings,
runtimeConnections);
BindDatabaseSonicConnections();
await LoadTargetsAsync();
if (_databaseSonicConnections.Count == 0)
{
SetStatus(
"SQL-Zugriff erfolgreich. " +
"Noch keine aktiven Sonic-Verbindungen in SQL. " +
"Lokale Testziele wurden geladen.",
isError: false);
return;
}
SetStatus(
$"{_databaseSonicConnections.Count} aktive Sonic-Verbindung(en) " +
$"aus SQL und {_loadedTargets.Count} lokale Testziele geladen.",
isError: false);
}
catch (SqlException ex)
{
_databaseSonicConnections = [];
SetStatus(
$"SQL-Zugriff fehlgeschlagen: {ex.Message}",
isError: true);
MessageBox.Show(
this,
ex.Message,
"SQL-Zugriff fehlgeschlagen",
MessageBoxButtons.OK,
MessageBoxIcon.Error);
}
catch (InvalidOperationException ex)
{
_databaseSonicConnections = [];
SetStatus(
$"Konfiguration ungültig: {ex.Message}",
isError: true);
MessageBox.Show(
this,
ex.Message,
"Konfiguration ungültig",
MessageBoxButtons.OK,
MessageBoxIcon.Warning);
}
catch (Exception ex)
{
_databaseSonicConnections = [];
SetStatus(
$"Initialisierung fehlgeschlagen: {ex.Message}",
isError: true);
MessageBox.Show(
this,
ex.Message,
"Initialisierung fehlgeschlagen",
MessageBoxButtons.OK,
MessageBoxIcon.Error);
}
}
private void TitleBar_MouseMove(object? sender, MouseEventArgs e)
{
if (e.Button == MouseButtons.Left)
@@ -245,7 +365,7 @@ namespace ZA.CoreService.ESBCertificateManager
Dock = DockStyle.Right,
Width = 1,
BackColor = BorderColor
};
};
sidebar.Controls.Add(sidebarBorder);
@@ -484,7 +604,7 @@ namespace ZA.CoreService.ESBCertificateManager
Control[] foundlastTitels = navProgressPanel.Controls.Find($"stepTitle{nvbarlaststate}", true);
if (foundlastTitels.Length == 0) return;
Label lasttitel = (Label)foundlastTitels[0];
if(nvbarlaststate > state)
if (nvbarlaststate > state)
{
Control[] foundlastCircles = navProgressPanel.Controls.Find($"stepCircle{nvbarlaststate}", true);
if (foundlastCircles.Length == 0) return;
@@ -1239,20 +1359,29 @@ namespace ZA.CoreService.ESBCertificateManager
btnDeploy = CreatePrimaryButton("Deployment starten");
btnDeploy.Size = new Size(170, 42);
btnDeploy.Anchor = AnchorStyles.Top | AnchorStyles.Right;
btnDeploy.Visible = false;
btnDeploy.Enabled = false;
btnDeploy.Visible = true;
btnDeploy.Click += async (_, _) => await RunDeploymentAsync();
panel.Controls.Add(btnCancelRun);
panel.Controls.Add(btnValidate);
panel.Controls.Add(btnRestartOnly);
panel.Controls.Add(btnDeploy);
panel.Resize += (_, _) =>
void PositionActionButtons()
{
btnRestartOnly.Left = panel.Width - btnRestartOnly.Width;
btnValidate.Left = btnRestartOnly.Left - btnValidate.Width - 12;
btnCancelRun.Left = btnValidate.Left - btnCancelRun.Width - 12;
};
const int spacing = 12;
const int rightMargin = 0;
// Rechts nach links anordnen:
// Deployment | Neustart | Prüfung | Abbrechen
btnDeploy.Left = panel.ClientSize.Width - btnDeploy.Width - rightMargin;
btnRestartOnly.Left = btnDeploy.Left - btnRestartOnly.Width - spacing;
btnValidate.Left = btnRestartOnly.Left - btnValidate.Width - spacing;
btnCancelRun.Left = btnValidate.Left - btnCancelRun.Width - spacing;
}
panel.Resize += (_, _) => PositionActionButtons();
PositionActionButtons();
RefreshActionButtonStates();
return panel;
@@ -1290,37 +1419,43 @@ namespace ZA.CoreService.ESBCertificateManager
return panel;
}
private Task LoadTargetsAsync()
private async Task LoadTargetsAsync()
{
try
{
SetStatus("Lade Container aus appsettings (KnownContainers)…", isError: false);
_loadedTargets = _sonicDiscovery.BuildTargetsFromConfig();
SetStatus(
"Bereitstellungsziele werden aus SQL geladen ...",
isError: false);
_loadedTargets =
await _deploymentTargetRepository.GetActiveAsync();
BindTargetsToGrid(_loadedTargets);
if (_loadedTargets.Count == 0)
{
SetStatus(
"Keine KnownContainers in appsettings. SonicConnections[].KnownContainers setzen.",
"In SQL sind keine aktiven Bereitstellungsziele konfiguriert.",
isError: true);
return;
}
else
{
SetStatus($"{_loadedTargets.Count} Container aus appsettings.", isError: false);
}
SetStatus(
$"{_loadedTargets.Count} Bereitstellungsziel(e) aus SQL geladen.",
isError: false);
}
catch (Exception ex)
catch
{
_loadedTargets = [];
dgvTargets.Rows.Clear();
SetStatus($"Ziele konnten nicht geladen werden: {ex.Message}", isError: true);
throw;
}
finally
{
RefreshActionButtonStates();
}
return Task.CompletedTask;
}
private void BindTargetsToGrid(IReadOnlyList<DeploymentTarget> targets)
@@ -1393,8 +1528,8 @@ namespace ZA.CoreService.ESBCertificateManager
btnCancelRun.Enabled = _isOperationRunning;
// Prüfung nur für Neustart-Voraussetzungen (Zertifikat optional)
btnValidate.Enabled = idle && hasTargets;
btnDeploy.Enabled = false;
btnDeploy.Visible = false;
btnDeploy.Visible = true;
btnDeploy.Enabled = idle && hasCertificate && hasSelection;
if (btnRestartOnly is not null)
{
btnRestartOnly.Enabled = idle && hasSelection;
@@ -1437,6 +1572,14 @@ namespace ZA.CoreService.ESBCertificateManager
private Task RunValidationAsync()
{
if (_orchestrator is null)
{
SetStatus(
"Die Anwendung ist noch nicht vollständig initialisiert.",
isError: true);
return Task.CompletedTask;
}
if (_isOperationRunning)
{
return Task.CompletedTask;
@@ -1486,6 +1629,14 @@ namespace ZA.CoreService.ESBCertificateManager
private async Task RunRestartOnlyAsync()
{
if (_orchestrator is null)
{
SetStatus(
"Die Anwendung ist noch nicht vollständig initialisiert.",
isError: true);
return;
}
if (_isOperationRunning)
{
return;
@@ -1509,12 +1660,7 @@ namespace ZA.CoreService.ESBCertificateManager
DialogResult confirm = MessageBox.Show(
this,
$"Container wirklich neu starten?\n\n" +
$"Ziele: {targetNames}\n\n" +
"Laut Sonic/CX-Messenger Doku (Management Application API):\n" +
"IAgentProxy.restart dieselbe Aktion wie Restart in der SMC.\n" +
$"Verbindung: appsettings ConnectionUrl + User/Pass.\n" +
"Kein stopcontainer.bat nötig.\n\n" +
"Voraussetzung: Java + Client-JARs unter SonicHome\\lib (SMC-Installation).",
$"Ziele: {targetNames}\n\n",
"ESB neu starten",
MessageBoxButtons.YesNo,
MessageBoxIcon.Warning);
@@ -1576,10 +1722,127 @@ namespace ZA.CoreService.ESBCertificateManager
}
}
private Task RunDeploymentAsync()
private async Task RunDeploymentAsync()
{
// Deploy/Kopieren absichtlich deaktiviert UI-Design bleibt.
return Task.CompletedTask;
if (_orchestrator is null)
{
SetStatus(
"Die Anwendung ist noch nicht vollständig initialisiert.",
isError: true);
return;
}
if (_isOperationRunning)
{
return;
}
List<DeploymentTarget> selectedTargets = GetSelectedTargets();
if (_loadedCertificateInfo is null ||
string.IsNullOrWhiteSpace(txtCertificatePath.Text) ||
!File.Exists(txtCertificatePath.Text))
{
SetStatus(
"Bitte zuerst eine gültige Zertifikatsdatei auswählen.",
isError: true);
return;
}
if (selectedTargets.Count == 0)
{
SetStatus(
"Bitte mindestens ein Ziel auswählen.",
isError: true);
return;
}
DialogResult confirm = MessageBox.Show(
this,
$"Zertifikat wirklich auf {selectedTargets.Count} Ziel(e) kopieren?\n\n" +
$"Datei: {Path.GetFileName(txtCertificatePath.Text)}",
"Deployment starten",
MessageBoxButtons.YesNo,
MessageBoxIcon.Warning);
if (confirm != DialogResult.Yes)
{
return;
}
_runCts?.Dispose();
_runCts = new CancellationTokenSource();
SetOperationRunning(true);
UpdateToNextStep(3);
SetStatus(
$"Kopiere Zertifikat auf {selectedTargets.Count} Ziel(e) ...",
isError: false);
Progress<TargetProgressUpdate> progress = new(update =>
{
SetTargetRowStatus(update.TargetId, update.StatusText);
SetStatus(update.StatusText, isError: update.SuccessHint == false);
});
try
{
DeploymentRunResult runResult = await _orchestrator.DeployAsync(
txtCertificatePath.Text,
_loadedCertificateInfo.FingerprintSha256,
selectedTargets,
progress,
_runCts.Token);
foreach (TargetStepResult targetResult in runResult.TargetResults)
{
SetTargetRowStatus(
targetResult.TargetId,
targetResult.StatusText);
}
if (runResult.OverallSuccess)
{
SetStatus(
$"Deployment erfolgreich: {runResult.TargetResults.Count} Ziel(e).",
isError: false);
UpdateToNextStep(4);
}
else
{
SetStatus(
"Deployment für mindestens ein Ziel fehlgeschlagen.",
isError: true);
}
}
catch (OperationCanceledException)
{
SetStatus("Deployment abgebrochen.", isError: true);
}
catch (Exception ex)
{
SetStatus(
$"Deployment fehlgeschlagen: {ex.Message}",
isError: true);
MessageBox.Show(
this,
ex.Message,
"Deployment fehlgeschlagen",
MessageBoxButtons.OK,
MessageBoxIcon.Error);
}
finally
{
SetOperationRunning(false);
_runCts?.Dispose();
_runCts = null;
}
}
private Panel CreateCard()
@@ -1680,12 +1943,29 @@ namespace ZA.CoreService.ESBCertificateManager
// ---------------------------------------------------------------
// Sonic Status (KnownContainers aus appsettings)
// ---------------------------------------------------------------
private void BindDatabaseSonicConnections()
{
cmbSonicConnection.Items.Clear();
foreach (DatabaseSonicConnection connection
in _databaseSonicConnections)
{
cmbSonicConnection.Items.Add(connection.Name);
}
if (cmbSonicConnection.Items.Count > 0)
{
cmbSonicConnection.SelectedIndex = 0;
return;
}
RefreshSonicStatusLine();
}
private void BuildSonicDiscoveryRow(Panel card)
{
Label sonicLabel = new Label
{
Text = "Sonic Management:",
Text = "Sonic Verbindung:",
ForeColor = MutedTextColor,
Font = new Font("Segoe UI", 8.5f, FontStyle.Bold),
AutoSize = true,
@@ -1703,11 +1983,6 @@ namespace ZA.CoreService.ESBCertificateManager
Font = new Font("Segoe UI", 9)
};
foreach (SonicConnection conn in _sonicDiscovery.Connections)
{
cmbSonicConnection.Items.Add(conn.Name);
}
lblSonicStatus = new Label
{
ForeColor = MutedTextColor,
@@ -1719,14 +1994,8 @@ namespace ZA.CoreService.ESBCertificateManager
cmbSonicConnection.SelectedIndexChanged += (_, _) => RefreshSonicStatusLine();
if (cmbSonicConnection.Items.Count > 0)
{
cmbSonicConnection.SelectedIndex = 0;
}
else
{
RefreshSonicStatusLine();
}
lblSonicStatus.Text = "Sonic-Verbindungen werden aus SQL geladen ...";
lblSonicStatus.ForeColor = MutedTextColor;
card.Controls.Add(sonicLabel);
card.Controls.Add(cmbSonicConnection);
@@ -1735,25 +2004,59 @@ namespace ZA.CoreService.ESBCertificateManager
private void RefreshSonicStatusLine()
{
if (!_sonicDiscovery.HasConnections)
if (_databaseSonicConnections.Count == 0)
{
lblSonicStatus.Text = "Keine Sonic-Verbindung in appsettings konfiguriert";
lblSonicStatus.Text =
"Keine aktive Sonic-Verbindung in SQL konfiguriert.";
lblSonicStatus.ForeColor = GoldColor;
return;
}
string? selectedName =
cmbSonicConnection.SelectedItem?.ToString();
DatabaseSonicConnection? connection =
_databaseSonicConnections.FirstOrDefault(
item => string.Equals(
item.Name,
selectedName,
StringComparison.OrdinalIgnoreCase));
if (connection is null)
{
lblSonicStatus.Text =
"Die ausgewählte SQL-Verbindung wurde nicht gefunden.";
lblSonicStatus.ForeColor = RedColor;
return;
}
string? selectedName = cmbSonicConnection?.SelectedItem?.ToString();
SonicConnection conn = _sonicDiscovery.Connections
.FirstOrDefault(c => string.Equals(c.Name, selectedName, StringComparison.OrdinalIgnoreCase))
?? _sonicDiscovery.Connections[0];
try
{
string connectionUrl = connection.BuildConnectionUrl();
(string home, string? javaExe) = new SonicMfApiExecutor(conn).ResolveRuntimePaths();
string javaDisplay = string.IsNullOrWhiteSpace(javaExe)
? "java=? (JavaPath in appsettings setzen)"
: $"java={javaExe}";
lblSonicStatus.Text = $"{conn.ManagementModeDisplay} | SonicHome={home} | {javaDisplay}";
lblSonicStatus.ForeColor = string.IsNullOrWhiteSpace(javaExe) ? GoldColor : GreenColor;
bool hasCredentialReference =
!string.IsNullOrWhiteSpace(connection.CredentialReference);
lblSonicStatus.Text = hasCredentialReference
? $"{connection.Name}: {connectionUrl}, Credential-Referenz vorhanden"
: $"{connection.Name}: {connectionUrl}, sichere Zugangsdaten noch nicht konfiguriert";
lblSonicStatus.ForeColor = hasCredentialReference
? GreenColor
: GoldColor;
}
catch (InvalidOperationException ex)
{
lblSonicStatus.Text = ex.Message;
lblSonicStatus.ForeColor = RedColor;
}
}
private void Form1_Load(object sender, EventArgs e)
{
}
}
}
@@ -2,10 +2,41 @@ namespace ZA.CoreService.ESBCertificateManager.Models;
public sealed class AppSettings
{
public string EnvironmentCode { get; set; } = "TEST";
public string LogDirectory { get; set; } = "Logs";
/// <summary>
/// Sonic-/SMC-Verbindungen. Container kommen aus KnownContainers bzw. Live-Discovery.
/// </summary>
public List<SonicConnection> SonicConnections { get; set; } = [];
public DatabaseSettings Database { get; set; } = new();
public RuntimeSettings Runtime { get; set; } = new();
public AlwaysEncryptedSettings AlwaysEncrypted { get; set; } = new();
}
public sealed class DatabaseSettings
{
public string ConnectionString { get; set; } = string.Empty;
}
public sealed class RuntimeSettings
{
public string JavaExecutablePath { get; set; } =
@"Runtime\bin\java.exe";
public string SonicClientLibraryPath { get; set; } =
@"Runtime\SonicClient\lib";
public bool SetupCompleted { get; set; }
}
public sealed class AlwaysEncryptedSettings
{
public string CertificateThumbprint { get; set; } =
string.Empty;
public string StoreName { get; set; } =
"My";
public string StoreLocation { get; set; } =
"CurrentUser";
}
@@ -0,0 +1,136 @@
using ZA.CoreService.ESBCertificateManager.Services;
namespace ZA.CoreService.ESBCertificateManager.Models;
/// <summary>
/// Aus dbo.SonicConnection geladene Verbindungsdaten.
/// CredentialSecret wird durch Microsoft.Data.SqlClient
/// clientseitig entschlüsselt.
/// </summary>
public sealed class DatabaseSonicConnection
{
public int Id { get; init; }
public required string Name { get; init; }
public required string ManagementHost { get; init; }
public int? ManagementPort { get; init; }
public string? ConnectionProtocol { get; init; }
public string? DomainName { get; init; }
public string? CredentialUserName { get; init; }
public string? CredentialReference { get; init; }
/// <summary>
/// Nur zur Laufzeit verfügbar.
/// Darf niemals protokolliert oder angezeigt werden.
/// </summary>
public string? CredentialSecret { get; init; }
public string? JavaHomePath { get; init; }
public string? SonicHomePath { get; init; }
public string? Notes { get; init; }
public bool IsActive { get; init; }
public bool HasCredentials =>
!string.IsNullOrWhiteSpace(CredentialUserName)
&& !string.IsNullOrEmpty(CredentialSecret);
public string BuildConnectionUrl()
{
if (string.IsNullOrWhiteSpace(ConnectionProtocol))
{
throw new InvalidOperationException(
$"Bei der Sonic-Verbindung '{Name}' fehlt ConnectionProtocol.");
}
if (string.IsNullOrWhiteSpace(ManagementHost))
{
throw new InvalidOperationException(
$"Bei der Sonic-Verbindung '{Name}' fehlt ManagementHost.");
}
if (ManagementPort is null or < 1 or > 65535)
{
throw new InvalidOperationException(
$"Bei der Sonic-Verbindung '{Name}' fehlt ein gültiger ManagementPort.");
}
string protocol = ConnectionProtocol
.Trim()
.TrimEnd(':', '/');
string host = ManagementHost.Trim();
return $"{protocol}://{host}:{ManagementPort.Value}";
}
public SonicConnection ToRuntimeConnection(
RuntimeSettings runtimeSettings)
{
if (string.IsNullOrWhiteSpace(DomainName))
{
throw new InvalidOperationException(
$"Bei der Sonic-Verbindung '{Name}' fehlt DomainName.");
}
if (string.IsNullOrWhiteSpace(CredentialUserName))
{
throw new InvalidOperationException(
$"Bei der Sonic-Verbindung '{Name}' fehlt der Benutzername.");
}
if (string.IsNullOrEmpty(CredentialSecret))
{
throw new InvalidOperationException(
$"Bei der Sonic-Verbindung '{Name}' fehlen die Zugangsdaten. " +
"Bitte das Setup ausführen.");
}
string javaExecutablePath =
PathResolver.ResolvePath(
runtimeSettings.JavaExecutablePath);
string sonicClientLibraryPath =
PathResolver.ResolvePath(
runtimeSettings.SonicClientLibraryPath);
string javaBinDirectory =
Path.GetDirectoryName(javaExecutablePath)
?? string.Empty;
string javaHome =
Directory.GetParent(javaBinDirectory)?.FullName
?? string.Empty;
string sonicHome =
Directory.GetParent(sonicClientLibraryPath)?.FullName
?? string.Empty;
return new SonicConnection
{
Name = Name,
DomainName = DomainName,
ConnectionUrl = BuildConnectionUrl(),
Username = CredentialUserName,
// Nur Laufzeitwert, bereits clientseitig entschlüsselt.
Password = CredentialSecret,
JavaPath = javaExecutablePath,
JavaHome = javaHome,
MfClientLibPath = sonicClientLibraryPath,
SonicHome = sonicHome,
TimeoutSeconds = 120,
PostRestartDelaySeconds = 20
};
}
}
@@ -9,6 +9,12 @@ public sealed class DeploymentTarget
public required string TargetDirectory { get; init; }
public required string CertificateFileName { get; init; }
public bool BackupEnabled { get; init; } = true;
public string BackupDirectoryName { get; init; } = "Backup";
public int? BackupRetentionDays { get; init; }
/// <summary>Name des Sonic-ESB-Containers (z.B. "sonic-container-a").</summary>
public string ContainerName { get; init; } = string.Empty;
@@ -0,0 +1,19 @@
namespace ZA.CoreService.ESBCertificateManager.Models;
public sealed class LocalSetupSelection
{
public string EnvironmentCode { get; set; } =
string.Empty;
public int SonicConnectionId { get; set; }
public int SonicCredentialId { get; set; }
public string ConnectionName { get; set; } =
string.Empty;
public string CredentialName { get; set; } =
string.Empty;
public DateTimeOffset SavedAtUtc { get; set; }
}
@@ -15,7 +15,16 @@ public sealed class SonicConnection
public required string ConnectionUrl { get; init; }
public required string Username { get; init; }
public required string Password { get; init; }
/// <summary>
/// Nur zur Laufzeit aus Always Encrypted geladen.
/// Darf nicht geloggt oder dauerhaft gespeichert werden.
/// </summary>
public string Password { get; init; } = string.Empty;
/// <summary>
/// Verweis auf eine generische Windows-Anmeldeinformation.
/// Enthält ausdrücklich kein Kennwort.
/// </summary>
public string CredentialReference { get; init; } = string.Empty;
/// <summary>Installationsroot (optional; Libs oft unter lib).</summary>
public string SonicHome { get; init; } = @"C:\Sonic\MQ10.0";
@@ -0,0 +1,31 @@
namespace ZA.CoreService.ESBCertificateManager.Models;
public sealed class SonicCredentialProfile
{
public int SonicCredentialId { get; init; }
public int SonicConnectionId { get; init; }
public required string CredentialName { get; init; }
public required string UserName { get; init; }
/// <summary>
/// Durch Microsoft.Data.SqlClient clientseitig entschlüsselt.
/// Darf niemals angezeigt oder protokolliert werden.
/// </summary>
public required string Secret { get; init; }
public bool IsDefault { get; init; }
public bool IsActive { get; init; }
public bool IsComplete =>
!string.IsNullOrWhiteSpace(UserName)
&& !string.IsNullOrEmpty(Secret);
public override string ToString()
{
return CredentialName;
}
}
@@ -0,0 +1,38 @@
namespace ZA.CoreService.ESBCertificateManager.Models;
public sealed class SonicSystemOption
{
public int SonicConnectionId { get; init; }
public required string ConnectionName { get; init; }
public required string EnvironmentCode { get; init; }
public required string DomainName { get; init; }
public required string ManagementHost { get; init; }
public int ManagementPort { get; init; }
public required string ConnectionProtocol { get; init; }
public required string ValidationContainerName { get; init; }
public string ConnectionUrl
{
get
{
string protocol = ConnectionProtocol
.Trim()
.TrimEnd(':', '/');
return
$"{protocol}://{ManagementHost.Trim()}:{ManagementPort}";
}
}
public override string ToString()
{
return ConnectionName;
}
}
@@ -1,13 +1,80 @@
namespace ZA.CoreService.ESBCertificateManager
{
internal static class Program
{
using System;
using System.Windows.Forms;
using ZA.CoreService.ESBCertificateManager.Configuration;
using ZA.CoreService.ESBCertificateManager.Models;
using ZA.CoreService.ESBCertificateManager.Services;
using ZA.CoreService.ESBCertificateManager.Setup;
[STAThread]
static void Main()
namespace ZA.CoreService.ESBCertificateManager;
internal static class Program
{
[STAThread]
private static void Main()
{
ApplicationConfiguration.Initialize();
try
{
ApplicationConfiguration.Initialize();
Application.Run(new Form1());
AppSettings settings =
AppSettingsLoader.Load();
SonicSetupRepository repository =
new(
settings.Database.ConnectionString);
SetupCoordinator coordinator =
new(
settings,
repository);
SetupCheckResult setupResult =
coordinator
.CheckAsync()
.GetAwaiter()
.GetResult();
if (setupResult.IsReady)
{
using SetupWizardForm setupForm =
new(coordinator);
DialogResult setupDialogResult =
setupForm.ShowDialog();
if (setupDialogResult != DialogResult.OK)
{
return;
}
SetupCheckResult finalCheck =
coordinator
.CheckAsync()
.GetAwaiter()
.GetResult();
if (!finalCheck.IsReady)
{
MessageBox.Show(
"Die Einrichtung ist noch nicht vollständig.",
"Setup unvollständig",
MessageBoxButtons.OK,
MessageBoxIcon.Warning);
return;
}
}
Application.Run(
new Form1());
}
catch (Exception exception)
{
MessageBox.Show(
exception.ToString(),
"Anwendung konnte nicht gestartet werden",
MessageBoxButtons.OK,
MessageBoxIcon.Error);
}
}
}
@@ -0,0 +1,69 @@
Copyright © 1993, 2026, Oracle and/or its affiliates.
All rights reserved.
This software and related documentation are provided under a
license agreement containing restrictions on use and
disclosure and are protected by intellectual property laws.
Except as expressly permitted in your license agreement or
allowed by law, you may not use, copy, reproduce, translate,
broadcast, modify, license, transmit, distribute, exhibit,
perform, publish, or display any part, in any form, or by
any means. Reverse engineering, disassembly, or
decompilation of this software, unless required by law for
interoperability, is prohibited.
The information contained herein is subject to change
without notice and is not warranted to be error-free. If you
find any errors, please report them to us in writing.
If this is software or related documentation that is
delivered to the U.S. Government or anyone licensing it on
behalf of the U.S. Government, the following notice is
applicable:
U.S. GOVERNMENT END USERS: Oracle programs, including any
operating system, integrated software, any programs
installed on the hardware, and/or documentation, delivered
to U.S. Government end users are "commercial computer
software" pursuant to the applicable Federal Acquisition
Regulation and agency-specific supplemental regulations. As
such, use, duplication, disclosure, modification, and
adaptation of the programs, including any operating system,
integrated software, any programs installed on the hardware,
and/or documentation, shall be subject to license terms and
license restrictions applicable to the programs. No other
rights are granted to the U.S. Government.
This software or hardware is developed for general use in a
variety of information management applications. It is not
developed or intended for use in any inherently dangerous
applications, including applications that may create a risk
of personal injury. If you use this software or hardware in
dangerous applications, then you shall be responsible to
take all appropriate fail-safe, backup, redundancy, and
other measures to ensure its safe use. Oracle Corporation
and its affiliates disclaim any liability for any damages
caused by use of this software or hardware in dangerous
applications.
Oracle and Java are registered trademarks of Oracle and/or
its affiliates. Other names may be trademarks of their
respective owners.
Intel and Intel Xeon are trademarks or registered trademarks
of Intel Corporation. All SPARC trademarks are used under
license and are trademarks or registered trademarks of SPARC
International, Inc. AMD, Opteron, the AMD logo, and the AMD
Opteron logo are trademarks or registered trademarks of
Advanced Micro Devices. UNIX is a registered trademark of
The Open Group.
This software or hardware and documentation may provide
access to or information on content, products, and services
from third parties. Oracle Corporation and its affiliates
are not responsible for and expressly disclaim all
warranties of any kind with respect to third-party content,
products, and services. Oracle Corporation and its
affiliates will not be responsible for any loss, costs, or
damages incurred due to your access to or use of third-party
content, products, or services.
@@ -0,0 +1 @@
Please refer to https://java.com/otnlicense
@@ -0,0 +1,6 @@
#
# Load the Java Access Bridge class into the JVM
#
#assistive_technologies=com.sun.java.accessibility.AccessBridge
#screen_magnifier_present=true
@@ -0,0 +1,62 @@
# Copyright (c) 2005, 2013, Oracle and/or its affiliates. All rights reserved.
# ORACLE PROPRIETARY/CONFIDENTIAL. Use is subject to license terms.
#
#
#
#
#
#
#
#
#
#
#
#
#
#
#
#
#
#
#
#
#
#
# Japanese imperial calendar
#
# Meiji since 1868-01-01 00:00:00 local time (Gregorian)
# Taisho since 1912-07-30 00:00:00 local time (Gregorian)
# Showa since 1926-12-25 00:00:00 local time (Gregorian)
# Heisei since 1989-01-08 00:00:00 local time (Gregorian)
# Reiwa since 2019-05-01 00:00:00 local time (Gregorian)
calendar.japanese.type: LocalGregorianCalendar
calendar.japanese.eras: \
name=Meiji,abbr=M,since=-3218832000000; \
name=Taisho,abbr=T,since=-1812153600000; \
name=Showa,abbr=S,since=-1357603200000; \
name=Heisei,abbr=H,since=600220800000; \
name=Reiwa,abbr=R,since=1556668800000
#
# Taiwanese calendar
# Minguo since 1911-01-01 00:00:00 local time (Gregorian)
calendar.taiwanese.type: LocalGregorianCalendar
calendar.taiwanese.eras: \
name=MinGuo,since=-1830384000000
#
# Thai Buddhist calendar
# Buddhist Era since -542-01-01 00:00:00 local time (Gregorian)
calendar.thai-buddhist.type: LocalGregorianCalendar
calendar.thai-buddhist.eras: \
name=BuddhistEra,abbr=B.E.,since=-79302585600000
calendar.thai-buddhist.year-boundary: \
day1=4-1,since=-79302585600000; \
day1=1-1,since=-915148800000
#
# Hijrah calendars
#
calendar.hijrah.Hijrah-umalqura: hijrah-config-umalqura.properties
calendar.hijrah.Hijrah-umalqura.type: islamic-umalqura
File diff suppressed because it is too large Load Diff
@@ -0,0 +1,276 @@
#sun.net.www MIME content-types table
#
# Property fields:
#
# <description> ::= 'description' '=' <descriptive string>
# <extensions> ::= 'file_extensions' '=' <comma-delimited list, include '.'>
# <image> ::= 'icon' '=' <filename of icon image>
# <action> ::= 'browser' | 'application' | 'save' | 'unknown'
# <application> ::= 'application' '=' <command line template>
#
#
# The "we don't know anything about this data" type(s).
# Used internally to mark unrecognized types.
#
content/unknown: description=Unknown Content
unknown/unknown: description=Unknown Data Type
#
# The template we should use for temporary files when launching an application
# to view a document of given type.
#
temp.file.template: c:\\temp\\%s
#
# The "real" types.
#
application/octet-stream: \
description=Generic Binary Stream;\
file_extensions=.saveme,.dump,.hqx,.arc,.obj,.lib,.bin,.exe,.zip,.gz
application/oda: \
description=ODA Document;\
file_extensions=.oda
application/pdf: \
description=Adobe PDF Format;\
file_extensions=.pdf
application/postscript: \
description=Postscript File;\
file_extensions=.eps,.ai,.ps;\
icon=ps
application/rtf: \
description=Wordpad Document;\
file_extensions=.rtf;\
action=application;\
application=wordpad.exe %s
application/x-dvi: \
description=TeX DVI File;\
file_extensions=.dvi
application/x-hdf: \
description=Hierarchical Data Format;\
file_extensions=.hdf;\
action=save
application/x-latex: \
description=LaTeX Source;\
file_extensions=.latex
application/x-netcdf: \
description=Unidata netCDF Data Format;\
file_extensions=.nc,.cdf;\
action=save
application/x-tex: \
description=TeX Source;\
file_extensions=.tex
application/x-texinfo: \
description=Gnu Texinfo;\
file_extensions=.texinfo,.texi
application/x-troff: \
description=Troff Source;\
file_extensions=.t,.tr,.roff
application/x-troff-man: \
description=Troff Manpage Source;\
file_extensions=.man
application/x-troff-me: \
description=Troff ME Macros;\
file_extensions=.me
application/x-troff-ms: \
description=Troff MS Macros;\
file_extensions=.ms
application/x-wais-source: \
description=Wais Source;\
file_extensions=.src,.wsrc
application/zip: \
description=Zip File;\
file_extensions=.zip;\
icon=zip;\
action=save
application/x-bcpio: \
description=Old Binary CPIO Archive;\
file_extensions=.bcpio;\
action=save
application/x-cpio: \
description=Unix CPIO Archive;\
file_extensions=.cpio;\
action=save
application/x-gtar: \
description=Gnu Tar Archive;\
file_extensions=.gtar;\
icon=tar;\
action=save
application/x-shar: \
description=Shell Archive;\
file_extensions=.sh,.shar;\
action=save
application/x-sv4cpio: \
description=SVR4 CPIO Archive;\
file_extensions=.sv4cpio;\
action=save
application/x-sv4crc: \
description=SVR4 CPIO with CRC;\
file_extensions=.sv4crc;\
action=save
application/x-tar: \
description=Tar Archive;\
file_extensions=.tar;\
icon=tar;\
action=save
application/x-ustar: \
description=US Tar Archive;\
file_extensions=.ustar;\
action=save
audio/basic: \
description=Basic Audio;\
file_extensions=.snd,.au;\
icon=audio
audio/x-aiff: \
description=Audio Interchange Format File;\
file_extensions=.aifc,.aif,.aiff;\
icon=aiff
audio/x-wav: \
description=Wav Audio;\
file_extensions=.wav;\
icon=wav;\
action=application;\
application=mplayer.exe %s
image/gif: \
description=GIF Image;\
file_extensions=.gif;\
icon=gif;\
action=browser
image/ief: \
description=Image Exchange Format;\
file_extensions=.ief
image/jpeg: \
description=JPEG Image;\
file_extensions=.jfif,.jfif-tbnl,.jpe,.jpg,.jpeg;\
icon=jpeg;\
action=browser
image/tiff: \
description=TIFF Image;\
file_extensions=.tif,.tiff;\
icon=tiff
image/vnd.fpx: \
description=FlashPix Image;\
file_extensions=.fpx,.fpix
image/x-cmu-rast: \
description=CMU Raster Image;\
file_extensions=.ras
image/x-portable-anymap: \
description=PBM Anymap Image;\
file_extensions=.pnm
image/x-portable-bitmap: \
description=PBM Bitmap Image;\
file_extensions=.pbm
image/x-portable-graymap: \
description=PBM Graymap Image;\
file_extensions=.pgm
image/x-portable-pixmap: \
description=PBM Pixmap Image;\
file_extensions=.ppm
image/x-rgb: \
description=RGB Image;\
file_extensions=.rgb
image/x-xbitmap: \
description=X Bitmap Image;\
file_extensions=.xbm,.xpm
image/x-xwindowdump: \
description=X Window Dump Image;\
file_extensions=.xwd
image/png: \
description=PNG Image;\
file_extensions=.png;\
icon=png;\
action=browser
image/bmp: \
description=Bitmap Image;\
file_extensions=.bmp;
text/html: \
description=HTML Document;\
file_extensions=.htm,.html;\
icon=html
text/plain: \
description=Plain Text;\
file_extensions=.text,.c,.cc,.c++,.h,.pl,.txt,.java,.el;\
icon=text;\
action=browser
text/tab-separated-values: \
description=Tab Separated Values Text;\
file_extensions=.tsv
text/x-setext: \
description=Structure Enhanced Text;\
file_extensions=.etx
video/mpeg: \
description=MPEG Video Clip;\
file_extensions=.mpg,.mpe,.mpeg;\
icon=mpeg
video/quicktime: \
description=QuickTime Video Clip;\
file_extensions=.mov,.qt
application/x-troff-msvideo: \
description=AVI Video;\
file_extensions=.avi;\
icon=avi;\
action=application;\
application=mplayer.exe %s
video/x-sgi-movie: \
description=SGI Movie;\
file_extensions=.movie,.mv
message/rfc822: \
description=Internet Email Message;\
file_extensions=.mime
application/xml: \
description=XML document;\
file_extensions=.xml
@@ -0,0 +1,57 @@
#
# Copyright (c) 2004, 2011, Oracle and/or its affiliates. All rights reserved.
# ORACLE PROPRIETARY/CONFIDENTIAL. Use is subject to license terms.
#
error.internal.badmsg=internal error, unknown message
error.badinst.nojre=Bad installation. No JRE found in configuration file
error.launch.execv=Error encountered while invoking Java Web Start (execv)
error.launch.sysexec=Error encountered while invoking Java Web Start (SysExec)
error.listener.failed=Splash: sysCreateListenerSocket failed
error.accept.failed=Splash: accept failed
error.recv.failed=Splash: recv failed
error.invalid.port=Splash: didn't revive a valid port
error.read=Read past end of buffer
error.xmlparsing=XML Parsing error: wrong kind of token found
error.splash.exit=Java Web Start splash screen process exiting .....\n
# "Last WinSock Error" means the error message for the last operation that failed.
error.winsock=\tLast WinSock Error:
error.winsock.load=Couldn't load winsock.dll
error.winsock.start=WSAStartup failed
error.badinst.nohome=Bad installation: JAVAWS_HOME not set
error.splash.noimage=Splash: couldn't load splash screen image
error.splash.socket=Splash: server socket failed
error.splash.cmnd=Splash: unrecognized command
error.splash.port=Splash: port not specified
error.splash.send=Splash: send failed
error.splash.timer=Splash: couldn't create shutdown timer
error.splash.x11.open=Splash: Can't open X11 display
error.splash.x11.connect=Splash: X11 connection failed
# Javaws usage: '\' is a joining of two sentence,which are connected including
# the invisible character '\n'.
message.javaws.usage=\n\
Usage:\tjavaws [run-options] <jnlp-file> \n\
\tjavaws [control-options] \n\
\n\
where run-options include: \n\
-verbose \tdisplay additional output \n\
-offline \trun the application in offline mode \n\
-system \trun the application from the system cache only\n\
-Xnosplash \trun without showing a splash screen \n\
-J<option> \tsupply option to the vm \n\
-wait \tstart java process and wait for its exit \n\
\n\
control-options include: \n\
-viewer \tshow the cache viewer in the java control panel\n\
-clearcache \tremove all non-installed applications from the cache\n\
-uninstall \tremove all applications from the cache\n\
-uninstall <jnlp-file> \tremove the application from the cache \n\
-import [import-options] <jnlp-file>\timport the application to the cache \n\
\n\
import-options include: \n\
-silent \timport silently (with no user interface) \n\
-system \timport application into the system cache \n\
-codebase <url>\tretrieve resources from the given codebase \n\
-shortcut \tinstall shortcuts as if user allowed prompt \n\
-association \tinstall associations as if user allowed prompt \n\
\n
@@ -0,0 +1,32 @@
#
# Copyright (c) 2004, 2013, Oracle and/or its affiliates. All rights reserved.
# ORACLE PROPRIETARY/CONFIDENTIAL. Use is subject to license terms.
#
error.internal.badmsg=interner Fehler, unbekannte Meldung
error.badinst.nojre=Ung\u00FCltige Installation. Keine JRE in Konfigurationsdatei gefunden
error.launch.execv=Fehler beim Aufrufen von Java Web Start (execv) aufgetreten
error.launch.sysexec=Fehler beim Aufrufen von Java Web Start (SysExec) aufgetreten
error.listener.failed=Startbildschirm: sysCreateListenerSocket nicht erfolgreich
error.accept.failed=Startbildschirm: accept nicht erfolgreich
error.recv.failed=Startbildschirm: recv nicht erfolgreich
error.invalid.port=Startbildschirm: Reaktivierung eines g\u00FCltigen Ports nicht m\u00F6glich
error.read=\u00DCber Pufferende hinaus gelesen
error.xmlparsing=XML-Parsefehler: Falscher Tokentyp gefunden
error.splash.exit=Prozess f\u00FCr Startbildschirm von Java Web Start wird beendet.....\n
# "Last WinSock Error" means the error message for the last operation that failed.
error.winsock=\tLetzter WinSock-Fehler:
error.winsock.load=winsock.dll konnte nicht geladen werden
error.winsock.start=WSAStartup nicht erfolgreich
error.badinst.nohome=Ung\u00FCltige Installation: JAVAWS_HOME nicht festgelegt
error.splash.noimage=Startbildschirm: Startbildschirmbild konnte nicht geladen werden
error.splash.socket=Startbildschirm: Server-Socket nicht erfolgreich
error.splash.cmnd=Startbildschirm: Unbekannter Befehl
error.splash.port=Startbildschirm: Port nicht angegeben
error.splash.send=Startbildschirm: send nicht erfolgreich
error.splash.timer=Startbildschirm: Timer f\u00FCr das Herunterfahren konnte nicht erstellt werden
error.splash.x11.open=Startbildschirm: X11-Anzeige kann nicht ge\u00F6ffnet werden
error.splash.x11.connect=Startbildschirm: X11-Verbindung nicht erfolgreich
# Javaws usage: '\' is a joining of two sentence,which are connected including
# the invisible character '\n'.
message.javaws.usage=\nVerwendung:\tjavaws [run-options] <jnlp-file>\t\n\tjavaws [control-options]\t\t\n\nwobei run-options Folgendes umfasst:\t\t\t\n-verbose \tZus\u00E4tzliche Ausgabe anzeigen\t\n-offline \tAnwendung im Offlinemodus ausf\u00FChren\t\n-system \tAnwendung nur aus Systemcache ausf\u00FChren\n-Xnosplash \tOhne Anzeige eines Startbildschirms ausf\u00FChren\t\n-J<option> \tOption f\u00FCr VM angeben\t\n-wait \tJava-Prozess starten und auf dessen Beendigung warten\t\n\ncontrol-options umfassen:\t\n-viewer \tCache-Viewer in Java-Systemsteuerung anzeigen\n-clearcache \tAlle nicht installierten Anwendungen aus dem Cache entfernen\n-uninstall \tAlle Anwendungen aus dem Cache entfernen\n-uninstall <jnlp-file> \tAnwendung aus dem Cache entfernen\t\n-import [import-options] <jnlp-file>\tAnwendung in Cache importieren\t\t\n\nimport-options umfassen:\t\t\t\t\t\t\n-silent \tVollautomatisch importieren (ohne Benutzeroberfl\u00E4che)\t\n-system \tAnwendung in Systemcache importieren\t\n-codebase <url>\tRessourcen aus angegebener Codebase abrufen\t\n-shortcut \tShortcuts so installieren, als w\u00FCrde der Benutzer einen Prompt zulassen\t\n-association \tVerkn\u00FCpfungen so installieren, als w\u00FCrde der Benutzer einen Prompt zulassen\n\n
@@ -0,0 +1,32 @@
#
# Copyright (c) 2004, 2013, Oracle and/or its affiliates. All rights reserved.
# ORACLE PROPRIETARY/CONFIDENTIAL. Use is subject to license terms.
#
error.internal.badmsg=Error interno, mensaje desconocido
error.badinst.nojre=Instalaci\u00F3n incorrecta. No se ha encontrado JRE en el archivo de configuraci\u00F3n
error.launch.execv=Se ha encontrado un error al llamar a Java Web Start (execv)
error.launch.sysexec=Se ha encontrado un error al llamar a Java Web Start (SysExec)
error.listener.failed=Pantalla de Presentaci\u00F3n: fallo de sysCreateListenerSocket
error.accept.failed=Pantalla de Presentaci\u00F3n: fallo de accept
error.recv.failed=Pantalla de Presentaci\u00F3n: fallo de recv
error.invalid.port=Pantalla de Presentaci\u00F3n: no se ha activado un puerto v\u00E1lido
error.read=Lectura m\u00E1s all\u00E1 del final del buffer
error.xmlparsing=Error de an\u00E1lisis de XML: se ha encontrado un tipo de token no v\u00E1lido
error.splash.exit=Saliendo del proceso de la pantalla de presentaci\u00F3n de Java Web Start...\n
# "Last WinSock Error" means the error message for the last operation that failed.
error.winsock=\t\u00DAltimo Error de WinSock:
error.winsock.load=No se ha podido cargar winsock.dll
error.winsock.start=Fallo de WSAStartup
error.badinst.nohome=Instalaci\u00F3n incorrecta: JAVAWS_HOME no definido
error.splash.noimage=Presentaci\u00F3n: no se ha podido cargar la imagen de la pantalla de presentaci\u00F3n
error.splash.socket=Pantalla de Presentaci\u00F3n: fallo en el socket del servidor
error.splash.cmnd=Pantalla de Presentaci\u00F3n: comando no reconocido
error.splash.port=Pantalla de Presentaci\u00F3n: puerto no especificado
error.splash.send=Pantalla de Presentaci\u00F3n: fallo de send
error.splash.timer=Pantalla de Presentaci\u00F3n: no se ha podido crear el temporizador de apagado
error.splash.x11.open=Pantalla de Presentaci\u00F3n: no se ha podido abrir la pantalla X11
error.splash.x11.connect=Pantalla de Presentaci\u00F3n: fallo de conexi\u00F3n X11
# Javaws usage: '\' is a joining of two sentence,which are connected including
# the invisible character '\n'.
message.javaws.usage=\nSintaxis:\tjavaws [run-options] <archivo-jnlp>\t\n\tjavaws [control-options]\t\t\n\ndonde run-options incluye:\t\t\t\n-verbose \tmostrar salida adicional\t\n-offline \tejecutar la aplicaci\u00F3n en el modo fuera de l\u00EDnea\t\n-system \tejecutar la aplicaci\u00F3n \u00FAnicamente desde la cach\u00E9 del sistema\n-Xnosplash \tejecutar sin mostrar ninguna pantalla de presentaci\u00F3n\t\n-J<opci\u00F3n> \tproporcione una opci\u00F3n a la VM\t\n-wait \tiniciar un proceso java y esperar a que se cierre\t\n\ncontrol-options incluye:\t\n-viewer \tmostrar el visor de la cach\u00E9 en el panel de control java\n-clearcache \teliminar todas las aplicaciones no instaladas desde la cach\u00E9\n-uninstall \teliminar todas las aplicaciones de la cach\u00E9\n-uninstall <archivo-jnlp> \teliminar la aplicaci\u00F3n de la cach\u00E9\t\n-import [import-options] <archivo-jnlp>\timportar la aplicaci\u00F3n a la cach\u00E9\t\t\n\nimport-options incluye:\t\t\t\t\t\t\n-silent \timportar de forma silenciosa (sin interfaz de usuario)\t\n-system \timportar la aplicaci\u00F3n a la cach\u00E9 del sistema\t\n-codebase <url>\trecuperar los recursos del codebase correspondiente\t\n-shortcut \tinstalar los accesos directos como si el usuario hubiera aceptado la petici\u00F3n\t\n-association \tinstalar las asociaciones como si el usuario hubiera aceptado la petici\u00F3n\t\n\n
@@ -0,0 +1,32 @@
#
# Copyright (c) 2004, 2011, Oracle and/or its affiliates. All rights reserved.
# ORACLE PROPRIETARY/CONFIDENTIAL. Use is subject to license terms.
#
error.internal.badmsg=erreur interne, message inconnu
error.badinst.nojre=Installation incorrecte. JRE introuvable dans le fichier de configuration
error.launch.execv=Erreur lors de l'appel de Java Web Start (execv)
error.launch.sysexec=Erreur lors de l'appel de Java Web Start (SysExec)
error.listener.failed=Accueil : \u00E9chec de sysCreateListenerSocket
error.accept.failed=Accueil : \u00E9chec d'accept
error.recv.failed=Accueil : \u00E9chec de recv
error.invalid.port=Accueil : impossible de r\u00E9activer un port valide
error.read=Lecture apr\u00E8s la fin de tampon
error.xmlparsing=Erreur d'analyse XML : type incorrect de jeton
error.splash.exit=Le processus d'affichage de l'\u00E9cran d'accueil de Java Web Start est en cours de fermeture...\n
# "Last WinSock Error" means the error message for the last operation that failed.
error.winsock=\tDerni\u00E8re erreur WinSock :
error.winsock.load=Impossible de charger winsock.dll
error.winsock.start=Echec de WSAStartup
error.badinst.nohome=Installation incorrecte : JAVAWS_HOME non d\u00E9fini
error.splash.noimage=Accueil : impossible de charger l'image de l'\u00E9cran d'accueil
error.splash.socket=Accueil : \u00E9chec du socket de serveur
error.splash.cmnd=Accueil : commande inconnue
error.splash.port=Accueil : port non sp\u00E9cifi\u00E9
error.splash.send=Accueil : \u00E9chec de l'envoi
error.splash.timer=Accueil : impossible de cr\u00E9er l'horloge d'arr\u00EAt
error.splash.x11.open=Accueil : impossible d'ouvrir l'affichage X11
error.splash.x11.connect=Accueil : \u00E9chec de la connexion X11
# Javaws usage: '\' is a joining of two sentence,which are connected including
# the invisible character '\n'.
message.javaws.usage=\nSyntaxe :\tjavaws [run-options] <jnlp-file>\t\n\tjavaws [control-options]\t\t\n\no\u00F9 les options d'ex\u00E9cution sont :\t\t\t\n-verbose \taffichage de texte de sortie suppl\u00E9mentaire\t\n-offline \tex\u00E9cution de l'application en mode hors ligne\t\n-system \tex\u00E9cution de l'application \u00E0 partir du cache syst\u00E8me uniquement\n-Xnosplash \tex\u00E9cution sans affichage de l'\u00E9cran d'accueil\t\n-J<option> \tsp\u00E9cification d'une option \u00E0 la machine virtuelle\t\n-wait \tlancement du processus Java et attente de sa fermeture\t\n\nles options de contr\u00F4le sont :\t\n-viewer \taffichage du visionneur du cache dans le panneau de configuration Java\n-clearcache \tsuppression de toutes les applications non install\u00E9es du cache\n-uninstall \tsuppression de toutes les applications du cache\n-uninstall <jnlp-file> \td\u00E9sinstallation de l'application dans le cache\t\n-import [import-options] <jnlp-file>\timport de l'application dans le cache\t\t\n\nles options d'import sont :\t\t\t\t\t\t\n-silent \timport silencieux (sans interface utilisateur)\t\n-system \timport de l'application dans le cache syst\u00E8me\t\n-codebase <url>\textraction des ressources \u00E0 partir d'une base de code sp\u00E9cifique\t\n-shortcut \tinstallation des raccourcis comme si l'utilisateur avait autoris\u00E9 l'op\u00E9ration\t\n-association \tinstallation des associations comme si l'utilisateur avait autoris\u00E9 l'op\u00E9ration\t\n\n
@@ -0,0 +1,32 @@
#
# Copyright (c) 2004, 2011, Oracle and/or its affiliates. All rights reserved.
# ORACLE PROPRIETARY/CONFIDENTIAL. Use is subject to license terms.
#
error.internal.badmsg=errore interno, messaggio sconosciuto
error.badinst.nojre=Installazione errata. Impossibile trovare il JRE nel file di configurazione
error.launch.execv=Errore durante la chiamata di Java Web Start (execv)
error.launch.sysexec=Errore durante la chiamata di Java Web Start (SysExec)
error.listener.failed=Apertura: sysCreateListenerSocket non riuscito
error.accept.failed=Apertura: accept non riuscito
error.recv.failed=Apertura: recv non riuscito
error.invalid.port=Apertura: impossibile identificare una porta valida
error.read=Tentativo di lettura dopo la fine del buffer
error.xmlparsing=Errore durante l'analisi XML: trovato un tipo di token errato
error.splash.exit=Uscita dal processo di schermata iniziale di Java Web Start in corso...\n
# "Last WinSock Error" means the error message for the last operation that failed.
error.winsock=\tErrore ultima operazione WinSock:
error.winsock.load=Impossibile caricare winsock.dll
error.winsock.start=WSAStartup non riuscito
error.badinst.nohome=Installazione errata: JAVAWS_HOME non impostato
error.splash.noimage=Apertura: impossibile caricare l'immagine della schermata iniziale
error.splash.socket=Apertura: socket del server non riuscita
error.splash.cmnd=Apertura: comando non riconosciuto
error.splash.port=Apertura: porta non specificata
error.splash.send=Apertura: send non riuscito
error.splash.timer=Apertura: impossibile creare il timer per l'arresto
error.splash.x11.open=Apertura: impossibile aprire il display X11
error.splash.x11.connect=Apertura: connessione X11 non riuscita
# Javaws usage: '\' is a joining of two sentence,which are connected including
# the invisible character '\n'.
message.javaws.usage=\nUso:\tjavaws [opzioni di esecuzione] <file jnlp>\t\n\tjavaws [opzioni di controllo]\t\t\n\ndove le opzioni di esecuzione sono:\t\t\t\n-verbose \tvisualizza output aggiuntivo\t\n-offline \tesegue l'applicazione in modalit\u00E0 non in linea\t\n-system \tesegue l'applicazione solo dalla cache del sistema\n-Xnosplash \tesegue l'applicazione senza visualizzare la schermata iniziale\t\n-J<opzione> \tfornisce l'opzione alla VM\t\n-wait \tavvia il processo Java e ne attende il completamento\t\n\nle opzioni di controllo sono:\t\n-viewer \tmostra il visualizzatore cache nel pannello di controllo Java\n-clearcache \trimuove tutte le applicazioni non installate dalla cache\n-uninstall \trimuove tutte le applicazioni dalla cache\n-uninstall <file jnlp> \trimuove l'applicazione dalla cache\t\n-import [opzioni di importazione] <file jnlp>\timporta l'applicazione nella cache\t\t\n\nle opzioni di importazione sono:\t\t\t\t\t\t\n-silent \tesegue l'installazione in background (senza un'interfaccia utente)\t\n-system \timporta l'applicazione nella cache del sistema\t\n-codebase <url>\trecupera le risorse dal codebase specificato\t\n-shortcut \tinstalla i collegamenti senza chiedere conferma all'utente\t\n-association \tinstalla le associazioni senza chiedere conferma all'utente\t\n\n
@@ -0,0 +1,32 @@
#
# Copyright (c) 2004, 2013, Oracle and/or its affiliates. All rights reserved.
# ORACLE PROPRIETARY/CONFIDENTIAL. Use is subject to license terms.
#
error.internal.badmsg=\u5185\u90E8\u30A8\u30E9\u30FC\u3001\u4E0D\u660E\u306A\u30E1\u30C3\u30BB\u30FC\u30B8
error.badinst.nojre=\u30A4\u30F3\u30B9\u30C8\u30FC\u30EB\u304C\u6B63\u3057\u304F\u3042\u308A\u307E\u305B\u3093\u3002\u69CB\u6210\u30D5\u30A1\u30A4\u30EB\u5185\u306BJRE\u304C\u3042\u308A\u307E\u305B\u3093
error.launch.execv=Java Web Start\u306E\u547C\u51FA\u3057\u4E2D\u306B\u30A8\u30E9\u30FC\u304C\u767A\u751F\u3057\u307E\u3057\u305F(execv)
error.launch.sysexec=Java Web Start\u306E\u547C\u51FA\u3057\u4E2D\u306B\u30A8\u30E9\u30FC\u304C\u767A\u751F\u3057\u307E\u3057\u305F(SysExec)
error.listener.failed=\u30B9\u30D7\u30E9\u30C3\u30B7\u30E5: sysCreateListenerSocket\u306B\u5931\u6557\u3057\u307E\u3057\u305F
error.accept.failed=\u30B9\u30D7\u30E9\u30C3\u30B7\u30E5: accept\u306B\u5931\u6557\u3057\u307E\u3057\u305F
error.recv.failed=\u30B9\u30D7\u30E9\u30C3\u30B7\u30E5: recv\u306B\u5931\u6557\u3057\u307E\u3057\u305F
error.invalid.port=\u30B9\u30D7\u30E9\u30C3\u30B7\u30E5: \u6709\u52B9\u306A\u30DD\u30FC\u30C8\u3092\u5FA9\u6D3B\u3055\u305B\u308B\u3053\u3068\u304C\u3067\u304D\u307E\u305B\u3093\u3067\u3057\u305F
error.read=\u524D\u306E\u30D0\u30C3\u30D5\u30A1\u306E\u7D42\u308F\u308A\u3092\u8AAD\u307F\u8FBC\u307F\u307E\u3057\u305F
error.xmlparsing=XML\u89E3\u6790\u30A8\u30E9\u30FC: \u8AA4\u3063\u305F\u30C8\u30FC\u30AF\u30F3\u304C\u691C\u51FA\u3055\u308C\u307E\u3057\u305F
error.splash.exit=Java Web Start\u30B9\u30D7\u30E9\u30C3\u30B7\u30E5\u753B\u9762\u51E6\u7406\u3092\u7D42\u4E86\u3057\u307E\u3059.....\n
# "Last WinSock Error" means the error message for the last operation that failed.
error.winsock=\t\u6700\u5F8C\u306EWinSock\u30A8\u30E9\u30FC:
error.winsock.load=winsock.dll\u3092\u30ED\u30FC\u30C9\u3067\u304D\u307E\u305B\u3093
error.winsock.start=WSAStartup\u306B\u5931\u6557\u3057\u307E\u3057\u305F
error.badinst.nohome=\u30A4\u30F3\u30B9\u30C8\u30FC\u30EB\u304C\u6B63\u3057\u304F\u3042\u308A\u307E\u305B\u3093: JAVAWS_HOME\u304C\u8A2D\u5B9A\u3055\u308C\u3066\u3044\u307E\u305B\u3093
error.splash.noimage=\u30B9\u30D7\u30E9\u30C3\u30B7\u30E5: \u30B9\u30D7\u30E9\u30C3\u30B7\u30E5\u753B\u9762\u306E\u753B\u50CF\u3092\u30ED\u30FC\u30C9\u3067\u304D\u307E\u305B\u3093
error.splash.socket=\u30B9\u30D7\u30E9\u30C3\u30B7\u30E5: \u30B5\u30FC\u30D0\u30FC\u30FB\u30BD\u30B1\u30C3\u30C8\u306B\u969C\u5BB3\u304C\u767A\u751F\u3057\u307E\u3057\u305F
error.splash.cmnd=\u30B9\u30D7\u30E9\u30C3\u30B7\u30E5: \u8A8D\u8B58\u3055\u308C\u306A\u3044\u30B3\u30DE\u30F3\u30C9
error.splash.port=\u30B9\u30D7\u30E9\u30C3\u30B7\u30E5: \u30DD\u30FC\u30C8\u304C\u6307\u5B9A\u3055\u308C\u3066\u3044\u307E\u305B\u3093
error.splash.send=\u30B9\u30D7\u30E9\u30C3\u30B7\u30E5: \u9001\u4FE1\u306B\u5931\u6557\u3057\u307E\u3057\u305F
error.splash.timer=\u30B9\u30D7\u30E9\u30C3\u30B7\u30E5: \u30B7\u30E3\u30C3\u30C8\u30C0\u30A6\u30F3\u30FB\u30BF\u30A4\u30DE\u30FC\u3092\u4F5C\u6210\u3067\u304D\u307E\u305B\u3093
error.splash.x11.open=\u30B9\u30D7\u30E9\u30C3\u30B7\u30E5: X11\u30C7\u30A3\u30B9\u30D7\u30EC\u30A4\u3092\u958B\u3051\u307E\u305B\u3093
error.splash.x11.connect=\u30B9\u30D7\u30E9\u30C3\u30B7\u30E5: X11\u63A5\u7D9A\u306B\u5931\u6557\u3057\u307E\u3057\u305F
# Javaws usage: '\' is a joining of two sentence,which are connected including
# the invisible character '\n'.
message.javaws.usage=\n\u4F7F\u7528\u65B9\u6CD5:\tjavaws [run-options] <jnlp-file>\t\n\tjavaws [control-options]\t\t\n\nrun-options\u306B\u306F\u6B21\u306E\u3082\u306E\u304C\u3042\u308A\u307E\u3059\u3002\t\t\t\n-verbose \t\u8FFD\u52A0\u306E\u51FA\u529B\u3092\u8868\u793A\t\n-offline \t\u30A2\u30D7\u30EA\u30B1\u30FC\u30B7\u30E7\u30F3\u3092\u30AA\u30D5\u30E9\u30A4\u30F3\u30FB\u30E2\u30FC\u30C9\u3067\u5B9F\u884C\t\n-system \t\u30A2\u30D7\u30EA\u30B1\u30FC\u30B7\u30E7\u30F3\u3092\u30B7\u30B9\u30C6\u30E0\u30FB\u30AD\u30E3\u30C3\u30B7\u30E5\u306E\u307F\u304B\u3089\u5B9F\u884C\n-Xnosplash \t\u30B9\u30D7\u30E9\u30C3\u30B7\u30E5\u753B\u9762\u3092\u8868\u793A\u305B\u305A\u306B\u5B9F\u884C\t\n-J<option> \t\u30AA\u30D7\u30B7\u30E7\u30F3\u3092VM\u306B\u4E0E\u3048\u308B\t\n-wait \tJava\u30D7\u30ED\u30BB\u30B9\u3092\u958B\u59CB\u3057\u3001\u305D\u306E\u7D42\u4E86\u3092\u5F85\u6A5F\t\n\ncontrol-options\u306B\u306F\u6B21\u306E\u3082\u306E\u304C\u3042\u308A\u307E\u3059\u3002\t\n-viewer \t\u30AD\u30E3\u30C3\u30B7\u30E5\u30FB\u30D3\u30E5\u30FC\u30A2\u3092Java\u30B3\u30F3\u30C8\u30ED\u30FC\u30EB\u30FB\u30D1\u30CD\u30EB\u306B\u8868\u793A\n-clearcache \t\u672A\u30A4\u30F3\u30B9\u30C8\u30FC\u30EB\u306E\u3059\u3079\u3066\u306E\u30A2\u30D7\u30EA\u30B1\u30FC\u30B7\u30E7\u30F3\u3092\u30AD\u30E3\u30C3\u30B7\u30E5\u304B\u3089\u524A\u9664\n-uninstall \t\u3059\u3079\u3066\u306E\u30A2\u30D7\u30EA\u30B1\u30FC\u30B7\u30E7\u30F3\u3092\u30AD\u30E3\u30C3\u30B7\u30E5\u304B\u3089\u524A\u9664\n-uninstall <jnlp-file> \t\u30A2\u30D7\u30EA\u30B1\u30FC\u30B7\u30E7\u30F3\u3092\u30AD\u30E3\u30C3\u30B7\u30E5\u304B\u3089\u524A\u9664\t\n-import [import-options] <jnlp-file>\t\u30A2\u30D7\u30EA\u30B1\u30FC\u30B7\u30E7\u30F3\u3092\u30AD\u30E3\u30C3\u30B7\u30E5\u306B\u30A4\u30F3\u30DD\u30FC\u30C8\t\t\n\nimport-options\u306B\u306F\u6B21\u306E\u3082\u306E\u304C\u3042\u308A\u307E\u3059\u3002\t\n-silent \t\u30E1\u30C3\u30BB\u30FC\u30B8\u3092\u8868\u793A\u305B\u305A\u306B\u30A4\u30F3\u30DD\u30FC\u30C8(\u30E6\u30FC\u30B6\u30FC\u30FB\u30A4\u30F3\u30BF\u30D5\u30A7\u30FC\u30B9\u306A\u3057)\t\n-system \t\u30A2\u30D7\u30EA\u30B1\u30FC\u30B7\u30E7\u30F3\u3092\u30B7\u30B9\u30C6\u30E0\u30FB\u30AD\u30E3\u30C3\u30B7\u30E5\u306B\u30A4\u30F3\u30DD\u30FC\u30C8\t\n-codebase <url>\t\u6307\u5B9A\u3055\u308C\u305F\u30B3\u30FC\u30C9\u30FB\u30D9\u30FC\u30B9\u304B\u3089\u30EA\u30BD\u30FC\u30B9\u3092\u53D6\u5F97\t\n-shortcut \t\u30E6\u30FC\u30B6\u30FC\u304C\u30D7\u30ED\u30F3\u30D7\u30C8\u3092\u53D7\u3051\u5165\u308C\u305F\u3082\u306E\u3068\u3057\u3066\u30B7\u30E7\u30FC\u30C8\u30AB\u30C3\u30C8\u3092\u30A4\u30F3\u30B9\u30C8\u30FC\u30EB\t\n-association \t\u30E6\u30FC\u30B6\u30FC\u304C\u30D7\u30ED\u30F3\u30D7\u30C8\u3092\u53D7\u3051\u5165\u308C\u305F\u3082\u306E\u3068\u3057\u3066\u30A2\u30BD\u30B7\u30A8\u30FC\u30B7\u30E7\u30F3\u3092\u30A4\u30F3\u30B9\u30C8\u30FC\u30EB\t\n\n
@@ -0,0 +1,32 @@
#
# Copyright (c) 2004, 2016, Oracle and/or its affiliates. All rights reserved.
# ORACLE PROPRIETARY/CONFIDENTIAL. Use is subject to license terms.
#
error.internal.badmsg=\uB0B4\uBD80 \uC624\uB958\uAC00 \uBC1C\uC0DD\uD588\uC2B5\uB2C8\uB2E4. \uC54C \uC218 \uC5C6\uB294 \uBA54\uC2DC\uC9C0\uC785\uB2C8\uB2E4.
error.badinst.nojre=\uC124\uCE58\uAC00 \uC798\uBABB\uB418\uC5C8\uC2B5\uB2C8\uB2E4. \uAD6C\uC131 \uD30C\uC77C\uC5D0\uC11C JRE\uB97C \uCC3E\uC744 \uC218 \uC5C6\uC2B5\uB2C8\uB2E4.
error.launch.execv=Java Web Start(execv)\uB97C \uD638\uCD9C\uD558\uB294 \uC911 \uC624\uB958\uAC00 \uBC1C\uC0DD\uD588\uC2B5\uB2C8\uB2E4.
error.launch.sysexec=Java Web Start(SysExec)\uB97C \uD638\uCD9C\uD558\uB294 \uC911 \uC624\uB958\uAC00 \uBC1C\uC0DD\uD588\uC2B5\uB2C8\uB2E4.
error.listener.failed=\uC2A4\uD50C\uB798\uC2DC: sysCreateListenerSocket\uC744 \uC2E4\uD328\uD588\uC2B5\uB2C8\uB2E4.
error.accept.failed=\uC2A4\uD50C\uB798\uC2DC: \uC2B9\uC778\uC744 \uC2E4\uD328\uD588\uC2B5\uB2C8\uB2E4.
error.recv.failed=\uC2A4\uD50C\uB798\uC2DC: recv\uB97C \uC2E4\uD328\uD588\uC2B5\uB2C8\uB2E4.
error.invalid.port=\uC2A4\uD50C\uB798\uC2DC: \uC801\uD569\uD55C \uD3EC\uD2B8\uB97C \uBCF5\uC6D0\uD558\uC9C0 \uBABB\uD588\uC2B5\uB2C8\uB2E4.
error.read=\uBC84\uD37C \uB05D\uC744 \uC9C0\uB098\uC11C \uC77D\uC5C8\uC2B5\uB2C8\uB2E4.
error.xmlparsing=XML \uAD6C\uBB38 \uBD84\uC11D \uC624\uB958: \uC798\uBABB\uB41C \uD1A0\uD070 \uC720\uD615\uC774 \uBC1C\uACAC\uB418\uC5C8\uC2B5\uB2C8\uB2E4.
error.splash.exit=Java Web Start \uC2A4\uD50C\uB798\uC2DC \uD654\uBA74 \uCC98\uB9AC\uB97C \uC885\uB8CC\uD558\uB294 \uC911...\n
# "Last WinSock Error" means the error message for the last operation that failed.
error.winsock=\t\uB9C8\uC9C0\uB9C9 WinSock \uC624\uB958:
error.winsock.load=winsock.dll\uC744 \uB85C\uB4DC\uD560 \uC218 \uC5C6\uC2B5\uB2C8\uB2E4.
error.winsock.start=WSAStartup\uC744 \uC2E4\uD328\uD588\uC2B5\uB2C8\uB2E4.
error.badinst.nohome=\uC798\uBABB\uB41C \uC124\uCE58: JAVAWS_HOME\uC774 \uC124\uC815\uB418\uC9C0 \uC54A\uC558\uC2B5\uB2C8\uB2E4.
error.splash.noimage=\uC2A4\uD50C\uB798\uC2DC: \uC2A4\uD50C\uB798\uC2DC \uD654\uBA74 \uC774\uBBF8\uC9C0\uB97C \uB85C\uB4DC\uD560 \uC218 \uC5C6\uC2B5\uB2C8\uB2E4.
error.splash.socket=\uC2A4\uD50C\uB798\uC2DC: \uC11C\uBC84 \uC18C\uCF13\uC744 \uC2E4\uD328\uD588\uC2B5\uB2C8\uB2E4.
error.splash.cmnd=\uC2A4\uD50C\uB798\uC2DC: \uC54C \uC218 \uC5C6\uB294 \uBA85\uB839\uC785\uB2C8\uB2E4.
error.splash.port=\uC2A4\uD50C\uB798\uC2DC: \uD3EC\uD2B8\uAC00 \uC9C0\uC815\uB418\uC9C0 \uC54A\uC558\uC2B5\uB2C8\uB2E4.
error.splash.send=\uC2A4\uD50C\uB798\uC2DC: \uC804\uC1A1\uC744 \uC2E4\uD328\uD588\uC2B5\uB2C8\uB2E4.
error.splash.timer=\uC2A4\uD50C\uB798\uC2DC: \uC885\uB8CC \uD0C0\uC774\uBA38\uB97C \uC0DD\uC131\uD560 \uC218 \uC5C6\uC2B5\uB2C8\uB2E4.
error.splash.x11.open=\uC2A4\uD50C\uB798\uC2DC: X11 \uB514\uC2A4\uD50C\uB808\uC774\uB97C \uC5F4 \uC218 \uC5C6\uC2B5\uB2C8\uB2E4.
error.splash.x11.connect=\uC2A4\uD50C\uB798\uC2DC: X11 \uC811\uC18D\uC744 \uC2E4\uD328\uD588\uC2B5\uB2C8\uB2E4.
# Javaws usage: '\' is a joining of two sentence,which are connected including
# the invisible character '\n'.
message.javaws.usage=\n\uC0AC\uC6A9\uBC95:\tjavaws [run-options] <jnlp-file>\t\n\tjavaws [control-options]\t\t\n\n\uC5EC\uAE30\uC11C run-options\uB294 \uB2E4\uC74C\uACFC \uAC19\uC2B5\uB2C8\uB2E4.\t\t\t\n-verbose \t\uCD94\uAC00 \uCD9C\uB825\uC744 \uD45C\uC2DC\uD569\uB2C8\uB2E4.\t\n-offline \t\uC624\uD504\uB77C\uC778 \uBAA8\uB4DC\uB85C \uC560\uD50C\uB9AC\uCF00\uC774\uC158\uC744 \uC2E4\uD589\uD569\uB2C8\uB2E4.\t\n-system \t\uC2DC\uC2A4\uD15C \uCE90\uC2DC\uC5D0\uC11C\uB9CC \uC560\uD50C\uB9AC\uCF00\uC774\uC158\uC744 \uC2E4\uD589\uD569\uB2C8\uB2E4.\n-Xnosplash \t\uC2A4\uD50C\uB798\uC2DC \uD654\uBA74\uC744 \uD45C\uC2DC\uD558\uC9C0 \uC54A\uACE0 \uC2E4\uD589\uD569\uB2C8\uB2E4.\t\n-J<option> \tvm\uC5D0 \uC635\uC158\uC744 \uC81C\uACF5\uD569\uB2C8\uB2E4.\t\n-wait \tJava \uD504\uB85C\uC138\uC2A4\uB97C \uC2DC\uC791\uD558\uACE0 \uC885\uB8CC\uB420 \uB54C\uAE4C\uC9C0 \uAE30\uB2E4\uB9BD\uB2C8\uB2E4.\t\n\ncontrol-options\uB294 \uB2E4\uC74C\uACFC \uAC19\uC2B5\uB2C8\uB2E4.\t\n-viewer \tJava \uC81C\uC5B4\uD310\uC5D0\uC11C \uCE90\uC2DC \uBDF0\uC5B4\uB97C \uD45C\uC2DC\uD569\uB2C8\uB2E4.\n-clearcache \t\uCE90\uC2DC\uC5D0\uC11C \uC124\uCE58\uB418\uC9C0 \uC54A\uC740 \uBAA8\uB4E0 \uC560\uD50C\uB9AC\uCF00\uC774\uC158\uC744 \uC81C\uAC70\uD569\uB2C8\uB2E4.\n-uninstall \t\uCE90\uC2DC\uC5D0\uC11C \uBAA8\uB4E0 \uC560\uD50C\uB9AC\uCF00\uC774\uC158\uC744 \uC81C\uAC70\uD569\uB2C8\uB2E4.\n-uninstall <jnlp-file> \t\uCE90\uC2DC\uC5D0\uC11C \uC560\uD50C\uB9AC\uCF00\uC774\uC158\uC744 \uC81C\uAC70\uD569\uB2C8\uB2E4.\t\n-import [import-options] <jnlp-file>\t\uCE90\uC2DC\uB85C \uC560\uD50C\uB9AC\uCF00\uC774\uC158\uC744 \uC784\uD3EC\uD2B8\uD569\uB2C8\uB2E4.\t\t\n\nimport-options\uB294 \uB2E4\uC74C\uACFC \uAC19\uC2B5\uB2C8\uB2E4.\t\t\t\t\t\t\n-silent \t\uC0AC\uC6A9\uC790 \uC778\uD130\uD398\uC774\uC2A4 \uC5C6\uC774 \uC790\uB3D9\uC73C\uB85C \uC784\uD3EC\uD2B8\uD569\uB2C8\uB2E4.\t\n-system \t\uC2DC\uC2A4\uD15C \uCE90\uC2DC\uB85C \uC560\uD50C\uB9AC\uCF00\uC774\uC158\uC744 \uC784\uD3EC\uD2B8\uD569\uB2C8\uB2E4.\t\n-codebase <url>\t\uC81C\uACF5\uB41C \uCF54\uB4DC\uBCA0\uC774\uC2A4\uC5D0\uC11C \uB9AC\uC18C\uC2A4\uB97C \uAC80\uC0C9\uD569\uB2C8\uB2E4.\t\n-shortcut \t\uC0AC\uC6A9\uC790\uAC00 \uD504\uB86C\uD504\uD2B8\uB97C \uD5C8\uC6A9\uD55C \uAC83\uC73C\uB85C \uAC04\uC8FC\uD558\uC5EC \uB2E8\uCD95\uD0A4\uB97C \uC124\uCE58\uD569\uB2C8\uB2E4.\t\n-association \t\uC0AC\uC6A9\uC790\uAC00 \uD504\uB86C\uD504\uD2B8\uB97C \uD5C8\uC6A9\uD55C \uAC83\uC73C\uB85C \uAC04\uC8FC\uD558\uC5EC \uC5F0\uAD00\uC744 \uC124\uCE58\uD569\uB2C8\uB2E4.\t\n\n
@@ -0,0 +1,32 @@
#
# Copyright (c) 2004, 2016, Oracle and/or its affiliates. All rights reserved.
# ORACLE PROPRIETARY/CONFIDENTIAL. Use is subject to license terms.
#
error.internal.badmsg=erro interno, mensagem desconhecida
error.badinst.nojre=Instala\u00E7\u00E3o incorreta. Nenhum JRE encontrado no arquivo de configura\u00E7\u00E3o
error.launch.execv=Erro encontrado ao chamar Java Web Start (execv)
error.launch.sysexec=Erro encontrado ao chamar Java Web Start (SysExec)
error.listener.failed=Tela Inicial: falha em sysCreateListenerSocket
error.accept.failed=Tela Inicial: falha na fun\u00E7\u00E3o accept
error.recv.failed=Tela Inicial: falha na fun\u00E7\u00E3o recv
error.invalid.port=Tela Inicial: n\u00E3o reativou uma porta v\u00E1lida
error.read=Ler ap\u00F3s o final do buffer
error.xmlparsing=Erro durante o parsing de XML: tipo incorreto de token encontrado
error.splash.exit=Saindo do processamento da tela inicial do Java Web .....\n
# "Last WinSock Error" means the error message for the last operation that failed.
error.winsock=\t\u00DAltimo Erro de WinSock:
error.winsock.load=N\u00E3o foi poss\u00EDvel carregar winsock.dll
error.winsock.start=Falha em WSAStartup
error.badinst.nohome=Instala\u00E7\u00E3o incorreta: JAVAWS_HOME n\u00E3o definido
error.splash.noimage=Tela Inicial: n\u00E3o foi poss\u00EDvel carregar a imagem da tela inicial
error.splash.socket=Tela Inicial: falha no soquete do servidor
error.splash.cmnd=Tela Inicial: comando n\u00E3o reconhecido
error.splash.port=Tela Inicial: porta n\u00E3o especificada
error.splash.send=Tela Inicial: falha na fun\u00E7\u00E3o send
error.splash.timer=Tela Inicial: n\u00E3o foi poss\u00EDvel criar temporizador de shutdown
error.splash.x11.open=Tela Inicial: N\u00E3o \u00E9 poss\u00EDvel abrir a exibi\u00E7\u00E3o X11
error.splash.x11.connect=Tela Inicial: falha na conex\u00E3o X11
# Javaws usage: '\' is a joining of two sentence,which are connected including
# the invisible character '\n'.
message.javaws.usage=\nUso:\tjavaws [run-options] <jnlp-file>\t\n\tjavaws [control-options]\t\t\n\nem que run-options inclui:\t\t\t\n-verbose \texibe a sa\u00EDda adicional\t\n-offline \texecuta o aplicativo no modo off-line\t\n-system \texecuta o aplicativo somente pelo cache do sistema\n-Xnosplash \texecuta sem mostrar uma tela de abertura\t\n-J<option> \tenvia a op\u00E7\u00E3o \u00E0 vm\t\n-wait \tinicia o processo java e aguarda sua sa\u00EDda\t\n\ncontrol-options inclui:\t\n-viewer \tmostra o visualizador do cache no painel de controle java\n-clearcache \tremove do cache todos os aplicativos n\u00E3o instalados\n-uninstall \tremove do cache todos os aplicativos\n-uninstall <jnlp-file> \tremove o aplicativo do cache\t\n-import [import-options] <jnlp-file>\timporta o aplicativo para o cache\t\t\n\nimport-options inclui:\t\t\t\t\t\t\n-silent \timporta silenciosamente (sem interface do usu\u00E1rio)\t\n-system \timporta o aplicativo para o cache do sistema\t\n-codebase <url>\trecupera recursos da base de c\u00F3digo especificada\t\n-shortcut \tinstala atalhos como se fosse um prompt permitido pelo usu\u00E1rio\t\n-association \tinstala associa\u00E7\u00F5es como se fosse um prompt permitido pelo usu\u00E1rio\t\n\n
@@ -0,0 +1,32 @@
#
# Copyright (c) 2004, 2018, Oracle and/or its affiliates. All rights reserved.
# ORACLE PROPRIETARY/CONFIDENTIAL. Use is subject to license terms.
#
error.internal.badmsg=internt fel, ok\u00E4nt meddelande
error.badinst.nojre=Felaktig installation. Ingen JRE har hittats i konfigurationsfilen
error.launch.execv=Ett fel intr\u00E4ffade under starten av Java Web Start (execv)
error.launch.sysexec=Ett fel intr\u00E4ffade under starten av Java Web Start (SysExec)
error.listener.failed=V\u00E4lkomstsk\u00E4rm: sysCreateListenerSocket utf\u00F6rdes inte
error.accept.failed=V\u00E4lkomstsk\u00E4rm: kunde inte accepteras
error.recv.failed=V\u00E4lkomstsk\u00E4rm: kunde inte mottaga
error.invalid.port=V\u00E4lkomstsk\u00E4rm: \u00E5terskapade inte en giltig port
error.read=L\u00E4ste f\u00F6rbi slutet av bufferten
error.xmlparsing=XML-tolkningsfel: fel typ av token hittades
error.splash.exit=Java Web Start - v\u00E4lkomstsk\u00E4rmen avslutas .....\n
# "Last WinSock Error" means the error message for the last operation that failed.
error.winsock=\tSenaste WinSock-fel:
error.winsock.load=Kunde inte ladda winsock.dll
error.winsock.start=WSAStartup utf\u00F6rdes inte
error.badinst.nohome=Felaktig installation: JAVAWS_HOME har inte st\u00E4llts in
error.splash.noimage=V\u00E4lkomstsk\u00E4rm: kunde inte ladda bilden f\u00F6r v\u00E4lkomstsk\u00E4rmen
error.splash.socket=V\u00E4lkomstsk\u00E4rm: serversocket utf\u00F6rdes inte
error.splash.cmnd=V\u00E4lkomstsk\u00E4rm: ok\u00E4nt kommando
error.splash.port=V\u00E4lkomstsk\u00E4rm: porten angavs inte
error.splash.send=V\u00E4lkomstsk\u00E4rm: kunde inte skicka
error.splash.timer=V\u00E4lkomstsk\u00E4rm: kunde inte skapa tidtagare f\u00F6r avst\u00E4ngning
error.splash.x11.open=V\u00E4lkomstsk\u00E4rm: kan inte \u00F6ppna X11-visningen
error.splash.x11.connect=V\u00E4lkomstsk\u00E4rm: X11-anslutning uppr\u00E4ttades inte
# Javaws usage: '\' is a joining of two sentence,which are connected including
# the invisible character '\n'.
message.javaws.usage=\nSyntax:\tjavaws [k\u00F6ralternativ] <jnlp-fil>\t\n\tjavaws [k\u00F6ralternativ]\t\t\n\nd\u00E4r k\u00F6ralternativen omfattar:\t\t\t\n-verbose \tvisa ytterligare utdata\t\n-offline \tk\u00F6r applikationen i offlinel\u00E4ge\t\n-system \tk\u00F6r applikationen endast fr\u00E5n systemcachen\n-Xnosplash \tk\u00F6r utan att visa v\u00E4lkomstsk\u00E4rmen\t\n-J<alternativ> \tange alternativ f\u00F6r VM\t\n-wait \tstarta javaprocessen och v\u00E4nta tills den har slutf\u00F6rts\t\n\nkontrollalternativen omfattar:\t\n-viewer \tvisa cachel\u00E4saren i kontrollpanelen f\u00F6r java\n-clearcache \tta bort alla icke installerade applikationer fr\u00E5n cachen\n-uninstall \tta bort alla applikationer fr\u00E5n cachen\n-uninstall <jnlp-fil> \tta bort applikationen fr\u00E5n cachen\t\n-import [importalternativ] <jnlp-fil>\timportera applikationen till cachen\t\t\n\nimportalternativen omfattar:\t\t\t\t\t\t\n-silent \timportera obevakat (utan anv\u00E4ndargr\u00E4nssnitt)\t\n-system \timportera applikationen till systemcachen\t\n-codebase <url>\th\u00E4mta resurserna fr\u00E5n den angivna kodbasen\t\n-shortcut \tinstallera genv\u00E4gar som om anv\u00E4ndaren till\u00E5tit det\t\n-association \tinstallera associationer som om anv\u00E4ndaren till\u00E5tit det\t\n\n
@@ -0,0 +1,32 @@
#
# Copyright (c) 2004, 2013, Oracle and/or its affiliates. All rights reserved.
# ORACLE PROPRIETARY/CONFIDENTIAL. Use is subject to license terms.
#
error.internal.badmsg=\u5185\u90E8\u9519\u8BEF, \u672A\u77E5\u6D88\u606F
error.badinst.nojre=\u9519\u8BEF\u5B89\u88C5\u3002\u914D\u7F6E\u6587\u4EF6\u4E2D\u627E\u4E0D\u5230 JRE
error.launch.execv=\u8C03\u7528 Java Web Start (execv) \u65F6\u9047\u5230\u9519\u8BEF
error.launch.sysexec=\u8C03\u7528 Java Web Start (SysExec) \u65F6\u9047\u5230\u9519\u8BEF
error.listener.failed=\u542F\u52A8\u5C4F\u5E55: sysCreateListenerSocket \u5931\u8D25
error.accept.failed=\u542F\u52A8\u5C4F\u5E55: \u63A5\u53D7\u5931\u8D25
error.recv.failed=\u542F\u52A8\u5C4F\u5E55: recv \u5931\u8D25
error.invalid.port=\u542F\u52A8\u5C4F\u5E55: \u672A\u6062\u590D\u6709\u6548\u7AEF\u53E3
error.read=\u8BFB\u53D6\u8D85\u51FA\u7F13\u51B2\u533A\u7ED3\u5C3E
error.xmlparsing=XML \u89E3\u6790\u9519\u8BEF: \u53D1\u73B0\u9519\u8BEF\u7684\u6807\u8BB0\u7C7B\u578B
error.splash.exit=Java Web Start \u542F\u52A8\u5C4F\u5E55\u8FDB\u7A0B\u6B63\u5728\u9000\u51FA.....\n
# "Last WinSock Error" means the error message for the last operation that failed.
error.winsock=\t\u4E0A\u4E00\u4E2A WinSock \u9519\u8BEF:
error.winsock.load=\u65E0\u6CD5\u52A0\u8F7D winsock.dll
error.winsock.start=WSAStartup \u5931\u8D25
error.badinst.nohome=\u9519\u8BEF\u5B89\u88C5: JAVAWS_HOME \u672A\u8BBE\u7F6E
error.splash.noimage=\u542F\u52A8\u5C4F\u5E55: \u65E0\u6CD5\u52A0\u8F7D\u542F\u52A8\u5C4F\u5E55\u56FE\u50CF
error.splash.socket=\u542F\u52A8\u5C4F\u5E55: \u670D\u52A1\u5668\u5957\u63A5\u5B57\u5931\u8D25
error.splash.cmnd=\u542F\u52A8\u5C4F\u5E55: \u65E0\u6CD5\u8BC6\u522B\u7684\u547D\u4EE4
error.splash.port=\u542F\u52A8\u5C4F\u5E55: \u672A\u6307\u5B9A\u7AEF\u53E3
error.splash.send=\u542F\u52A8\u5C4F\u5E55: \u53D1\u9001\u5931\u8D25
error.splash.timer=\u542F\u52A8\u5C4F\u5E55: \u65E0\u6CD5\u521B\u5EFA\u5173\u673A\u8BA1\u65F6\u5668
error.splash.x11.open=\u542F\u52A8\u5C4F\u5E55: \u65E0\u6CD5\u6253\u5F00 X11 \u663E\u793A
error.splash.x11.connect=\u542F\u52A8\u5C4F\u5E55: X11 \u8FDE\u63A5\u5931\u8D25
# Javaws usage: '\' is a joining of two sentence,which are connected including
# the invisible character '\n'.
message.javaws.usage=\n\u7528\u6CD5:\tjavaws [\u8FD0\u884C\u9009\u9879] <jnlp-file>\t\n\tjavaws [\u63A7\u5236\u9009\u9879]\t\t\n\n\u5176\u4E2D\u8FD0\u884C\u9009\u9879\u5305\u62EC:\t\t\t\n-verbose \t\u663E\u793A\u5176\u4ED6\u8F93\u51FA\u5185\u5BB9\t\n-offline \t\u4EE5\u8131\u673A\u6A21\u5F0F\u8FD0\u884C\u5E94\u7528\u7A0B\u5E8F\t\n-system \t\u4EC5\u4ECE\u7CFB\u7EDF\u9AD8\u901F\u7F13\u5B58\u8FD0\u884C\u5E94\u7528\u7A0B\u5E8F\n-Xnosplash \t\u8FD0\u884C\u65F6\u4E0D\u663E\u793A\u542F\u52A8\u5C4F\u5E55\t\n-J<\u9009\u9879> \t\u4E3A vm \u63D0\u4F9B\u9009\u9879\t\n-wait \t\u542F\u52A8 Java \u8FDB\u7A0B\u5E76\u7B49\u5F85\u5176\u9000\u51FA\t\n\n\u63A7\u5236\u9009\u9879\u5305\u62EC:\t\n-viewer \t\u5728 Java \u63A7\u5236\u9762\u677F\u4E2D\u663E\u793A\u9AD8\u901F\u7F13\u5B58\u67E5\u770B\u5668\n-clearcache \t\u4ECE\u9AD8\u901F\u7F13\u5B58\u5220\u9664\u6240\u6709\u672A\u5B89\u88C5\u7684\u5E94\u7528\u7A0B\u5E8F\n-uninstall \t\u4ECE\u9AD8\u901F\u7F13\u5B58\u5220\u9664\u6240\u6709\u5E94\u7528\u7A0B\u5E8F\n-uninstall <jnlp-file> \t\u4ECE\u9AD8\u901F\u7F13\u5B58\u5220\u9664\u5E94\u7528\u7A0B\u5E8F\t\n-import [\u5BFC\u5165\u9009\u9879] <jnlp-file>\t\u5C06\u5E94\u7528\u7A0B\u5E8F\u5BFC\u5165\u9AD8\u901F\u7F13\u5B58\t\t\n\n\u5BFC\u5165\u9009\u9879\u5305\u62EC:\t\t\t\t\t\t\n-silent \t\u4EE5\u65E0\u63D0\u793A\u6A21\u5F0F (\u4E0D\u51FA\u73B0\u7528\u6237\u754C\u9762) \u5BFC\u5165\t\n-system \t\u5C06\u5E94\u7528\u7A0B\u5E8F\u5BFC\u5165\u7CFB\u7EDF\u9AD8\u901F\u7F13\u5B58\t\n-codebase <url>\t\u4ECE\u7ED9\u5B9A\u7684\u4EE3\u7801\u5E93\u68C0\u7D22\u8D44\u6E90\t\n-shortcut \t\u4EE5\u7528\u6237\u63A5\u53D7\u63D0\u793A\u7684\u65B9\u5F0F\u5B89\u88C5\u5FEB\u6377\u65B9\u5F0F\t\n-association \t\u4EE5\u7528\u6237\u63A5\u53D7\u63D0\u793A\u7684\u65B9\u5F0F\u5B89\u88C5\u5173\u8054\t\n\n
@@ -0,0 +1,32 @@
#
# Copyright (c) 2004, 2013, Oracle and/or its affiliates. All rights reserved.
# ORACLE PROPRIETARY/CONFIDENTIAL. Use is subject to license terms.
#
error.internal.badmsg=\u5167\u90E8\u932F\u8AA4\uFF0C\u4E0D\u660E\u7684\u8A0A\u606F
error.badinst.nojre=\u5B89\u88DD\u932F\u8AA4\u3002\u5728\u7D44\u614B\u6A94\u4E2D\u627E\u4E0D\u5230 JRE
error.launch.execv=\u547C\u53EB Java Web Start (execv) \u6642\u9047\u5230\u932F\u8AA4
error.launch.sysexec=\u547C\u53EB Java Web Start (SysExec) \u6642\u9047\u5230\u932F\u8AA4
error.listener.failed=Splash: sysCreateListenerSocket \u5931\u6557
error.accept.failed=Splash: \u63A5\u53D7\u5931\u6557
error.recv.failed=Splash: recv \u5931\u6557
error.invalid.port=Splash: \u6709\u6548\u7684\u9023\u63A5\u57E0\u5C1A\u672A\u56DE\u5FA9
error.read=\u8B80\u53D6\u8D85\u51FA\u7DE9\u885D\u5340\u7D50\u5C3E
error.xmlparsing=XML \u5256\u6790\u932F\u8AA4: \u627E\u5230\u932F\u8AA4\u7684\u8A18\u865F\u7A2E\u985E
error.splash.exit=Java Web Start \u9583\u73FE\u87A2\u5E55\u8655\u7406\u7D50\u675F\u4E2D.....\n
# "Last WinSock Error" means the error message for the last operation that failed.
error.winsock=\t\u4E0A\u4E00\u6B21 WinSock \u932F\u8AA4:
error.winsock.load=\u7121\u6CD5\u8F09\u5165 winsock.dll
error.winsock.start=WSAStartup \u5931\u6557
error.badinst.nohome=\u5B89\u88DD\u932F\u8AA4: \u672A\u8A2D\u5B9A JAVAWS_HOME
error.splash.noimage=Splash: \u7121\u6CD5\u8F09\u5165\u9583\u73FE\u87A2\u5E55\u5F71\u50CF
error.splash.socket=Splash: \u4F3A\u670D\u5668 socket \u5931\u6557
error.splash.cmnd=Splash: \u7121\u6CD5\u8FA8\u8B58\u547D\u4EE4
error.splash.port=Splash: \u672A\u6307\u5B9A\u9023\u63A5\u57E0
error.splash.send=Splash: \u50B3\u9001\u5931\u6557
error.splash.timer=Splash: \u7121\u6CD5\u5EFA\u7ACB\u95DC\u6A5F\u8A08\u6642\u5668
error.splash.x11.open=Splash: \u7121\u6CD5\u958B\u555F X11 \u986F\u793A\u756B\u9762
error.splash.x11.connect=Splash: X11 \u9023\u7DDA\u5931\u6557
# Javaws usage: '\' is a joining of two sentence,which are connected including
# the invisible character '\n'.
message.javaws.usage=\n\u7528\u6CD5:\tjavaws [run-options] <jnlp-file>\t\n\tjavaws [control-options]\t\t\n\n\u5176\u4E2D\uFF0Crun-options \u5305\u62EC:\t\t\t\n-verbose \t\u986F\u793A\u66F4\u8A73\u7D30\u7684\u8F38\u51FA\t\n-offline \t\u5728\u96E2\u7DDA\u6A21\u5F0F\u4E0B\u57F7\u884C\u61C9\u7528\u7A0B\u5F0F\t\n-system \t\u50C5\u5F9E\u7CFB\u7D71\u5FEB\u53D6\u57F7\u884C\u61C9\u7528\u7A0B\u5F0F\n-Xnosplash \t\u57F7\u884C\u6642\u4E0D\u986F\u793A\u8EDF\u9AD4\u8CC7\u8A0A\u756B\u9762\t\n-J<option> \t\u70BA vm \u63D0\u4F9B\u9078\u9805\t\n-wait \t\u555F\u52D5 Java \u8655\u7406\u4E26\u7B49\u5F85\u5176\u7D50\u675F\t\n\ncontrol-options \u5305\u62EC:\t\n-viewer \t\u5728 Java \u63A7\u5236\u9762\u677F\u4E2D\u986F\u793A\u5FEB\u53D6\u6AA2\u8996\u5668\n-clearcache \t\u5F9E\u5FEB\u53D6\u4E2D\u79FB\u9664\u6240\u6709\u975E\u5B89\u88DD\u61C9\u7528\u7A0B\u5F0F\n-uninstall \t\u5F9E\u5FEB\u53D6\u4E2D\u79FB\u9664\u6240\u6709\u61C9\u7528\u7A0B\u5F0F\n-uninstall <jnlp-file> \t\u5F9E\u5FEB\u53D6\u4E2D\u79FB\u9664\u61C9\u7528\u7A0B\u5F0F\t\n-import [import-options] <jnlp-file>\t\u5C07\u61C9\u7528\u7A0B\u5F0F\u532F\u5165\u5FEB\u53D6\t\t\n\nimport-options \u5305\u62EC:\t\t\t\t\t\t\n-silent \t\u4EE5\u7121\u63D0\u793A\u6A21\u5F0F\u532F\u5165 (\u7121\u4F7F\u7528\u8005\u4ECB\u9762)\t\n-system \t\u5C07\u61C9\u7528\u7A0B\u5F0F\u532F\u5165\u7CFB\u7D71\u5FEB\u53D6\t\n-codebase <url>\t\u5F9E\u6307\u5B9A\u7684\u4EE3\u78BC\u5EAB\u64F7\u53D6\u8CC7\u6E90\t\n-shortcut \t\u5B89\u88DD\u6377\u5F91 (\u7336\u5982\u4F7F\u7528\u8005\u5DF2\u5141\u8A31\u63D0\u793A)\t\n-association \t\u5B89\u88DD\u95DC\u806F (\u7336\u5982\u4F7F\u7528\u8005\u5DF2\u5141\u8A31\u63D0\u793A)\t\n\n
@@ -0,0 +1,32 @@
#
# Copyright (c) 2004, 2013, Oracle and/or its affiliates. All rights reserved.
# ORACLE PROPRIETARY/CONFIDENTIAL. Use is subject to license terms.
#
error.internal.badmsg=\u5167\u90E8\u932F\u8AA4\uFF0C\u4E0D\u660E\u7684\u8A0A\u606F
error.badinst.nojre=\u5B89\u88DD\u932F\u8AA4\u3002\u5728\u7D44\u614B\u6A94\u4E2D\u627E\u4E0D\u5230 JRE
error.launch.execv=\u547C\u53EB Java Web Start (execv) \u6642\u9047\u5230\u932F\u8AA4
error.launch.sysexec=\u547C\u53EB Java Web Start (SysExec) \u6642\u9047\u5230\u932F\u8AA4
error.listener.failed=Splash: sysCreateListenerSocket \u5931\u6557
error.accept.failed=Splash: \u63A5\u53D7\u5931\u6557
error.recv.failed=Splash: recv \u5931\u6557
error.invalid.port=Splash: \u6709\u6548\u7684\u9023\u63A5\u57E0\u5C1A\u672A\u56DE\u5FA9
error.read=\u8B80\u53D6\u8D85\u51FA\u7DE9\u885D\u5340\u7D50\u5C3E
error.xmlparsing=XML \u5256\u6790\u932F\u8AA4: \u627E\u5230\u932F\u8AA4\u7684\u8A18\u865F\u7A2E\u985E
error.splash.exit=Java Web Start \u9583\u73FE\u87A2\u5E55\u8655\u7406\u7D50\u675F\u4E2D.....\n
# "Last WinSock Error" means the error message for the last operation that failed.
error.winsock=\t\u4E0A\u4E00\u6B21 WinSock \u932F\u8AA4:
error.winsock.load=\u7121\u6CD5\u8F09\u5165 winsock.dll
error.winsock.start=WSAStartup \u5931\u6557
error.badinst.nohome=\u5B89\u88DD\u932F\u8AA4: \u672A\u8A2D\u5B9A JAVAWS_HOME
error.splash.noimage=Splash: \u7121\u6CD5\u8F09\u5165\u9583\u73FE\u87A2\u5E55\u5F71\u50CF
error.splash.socket=Splash: \u4F3A\u670D\u5668 socket \u5931\u6557
error.splash.cmnd=Splash: \u7121\u6CD5\u8FA8\u8B58\u547D\u4EE4
error.splash.port=Splash: \u672A\u6307\u5B9A\u9023\u63A5\u57E0
error.splash.send=Splash: \u50B3\u9001\u5931\u6557
error.splash.timer=Splash: \u7121\u6CD5\u5EFA\u7ACB\u95DC\u6A5F\u8A08\u6642\u5668
error.splash.x11.open=Splash: \u7121\u6CD5\u958B\u555F X11 \u986F\u793A\u756B\u9762
error.splash.x11.connect=Splash: X11 \u9023\u7DDA\u5931\u6557
# Javaws usage: '\' is a joining of two sentence,which are connected including
# the invisible character '\n'.
message.javaws.usage=\n\u7528\u6CD5:\tjavaws [run-options] <jnlp-file>\t\n\tjavaws [control-options]\t\t\n\n\u5176\u4E2D\uFF0Crun-options \u5305\u62EC:\t\t\t\n-verbose \t\u986F\u793A\u66F4\u8A73\u7D30\u7684\u8F38\u51FA\t\n-offline \t\u5728\u96E2\u7DDA\u6A21\u5F0F\u4E0B\u57F7\u884C\u61C9\u7528\u7A0B\u5F0F\t\n-system \t\u50C5\u5F9E\u7CFB\u7D71\u5FEB\u53D6\u57F7\u884C\u61C9\u7528\u7A0B\u5F0F\n-Xnosplash \t\u57F7\u884C\u6642\u4E0D\u986F\u793A\u8EDF\u9AD4\u8CC7\u8A0A\u756B\u9762\t\n-J<option> \t\u70BA vm \u63D0\u4F9B\u9078\u9805\t\n-wait \t\u555F\u52D5 Java \u8655\u7406\u4E26\u7B49\u5F85\u5176\u7D50\u675F\t\n\ncontrol-options \u5305\u62EC:\t\n-viewer \t\u5728 Java \u63A7\u5236\u9762\u677F\u4E2D\u986F\u793A\u5FEB\u53D6\u6AA2\u8996\u5668\n-clearcache \t\u5F9E\u5FEB\u53D6\u4E2D\u79FB\u9664\u6240\u6709\u975E\u5B89\u88DD\u61C9\u7528\u7A0B\u5F0F\n-uninstall \t\u5F9E\u5FEB\u53D6\u4E2D\u79FB\u9664\u6240\u6709\u61C9\u7528\u7A0B\u5F0F\n-uninstall <jnlp-file> \t\u5F9E\u5FEB\u53D6\u4E2D\u79FB\u9664\u61C9\u7528\u7A0B\u5F0F\t\n-import [import-options] <jnlp-file>\t\u5C07\u61C9\u7528\u7A0B\u5F0F\u532F\u5165\u5FEB\u53D6\t\t\n\nimport-options \u5305\u62EC:\t\t\t\t\t\t\n-silent \t\u4EE5\u7121\u63D0\u793A\u6A21\u5F0F\u532F\u5165 (\u7121\u4F7F\u7528\u8005\u4ECB\u9762)\t\n-system \t\u5C07\u61C9\u7528\u7A0B\u5F0F\u532F\u5165\u7CFB\u7D71\u5FEB\u53D6\t\n-codebase <url>\t\u5F9E\u6307\u5B9A\u7684\u4EE3\u78BC\u5EAB\u64F7\u53D6\u8CC7\u6E90\t\n-shortcut \t\u5B89\u88DD\u6377\u5F91 (\u7336\u5982\u4F7F\u7528\u8005\u5DF2\u5141\u8A31\u63D0\u793A)\t\n-association \t\u5B89\u88DD\u95DC\u806F (\u7336\u5982\u4F7F\u7528\u8005\u5DF2\u5141\u8A31\u63D0\u793A)\t\n\n
Binary file not shown.

After

Width:  |  Height:  |  Size: 8.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 15 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 7.6 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 12 KiB

@@ -0,0 +1,68 @@
% VERSION 2
% WARNING: this file is auto-generated; do not edit
% UNSUPPORTED: this file and its format may change and/or
% may be removed in a future release
! access-bridge-32.jar
com/sun/java/accessibility/
! access-bridge.jar
com/sun/java/accessibility/
! cldrdata.jar
sun/text
sun/util
# dnsns.jar
META-INF/services/sun.net.spi.nameservice.NameServiceDescriptor
sun/net
! jaccess.jar
com/sun/java/accessibility/
# jfxrt.jar
javafx/scene/
javafx/geometry/
com/sun/scenario/
javafx/beans/
javafx/util/
javafx/stage/
com/sun/media/
com/sun/glass/
com/sun/pisces/
com/sun/javafx/
javafx/fxml/
com/sun/deploy/
javafx/application/
javafx/print/
javafx/collections/
javafx/event/
com/sun/prism/
javafx/embed/
javafx/css/
javafx/concurrent/
javafx/animation/
com/sun/webkit/
META-INF/INDEX.LIST
netscape/javascript/
com/sun/openpisces/
# localedata.jar
sun/text
sun/util
# nashorn.jar
jdk/nashorn
META-INF/services/javax.script.ScriptEngineFactory
jdk/internal
# sunec.jar
sun/security
META-INF/ORACLE_J.RSA
META-INF/ORACLE_J.SF
# sunjce_provider.jar
com/sun/crypto/
META-INF/ORACLE_J.RSA
META-INF/ORACLE_J.SF
# sunmscapi.jar
sun/security
META-INF/ORACLE_J.RSA
META-INF/ORACLE_J.SF
# sunpkcs11.jar
sun/security
META-INF/ORACLE_J.RSA
META-INF/ORACLE_J.SF
# zipfs.jar
META-INF/services/java.nio.file.spi.FileSystemProvider
com/sun/nio/
@@ -0,0 +1,77 @@
#
# This properties file is used to initialize the default
# java.awt.datatransfer.SystemFlavorMap. It contains the Win32 platform-
# specific, default mappings between common Win32 Clipboard atoms and platform-
# independent MIME type strings, which will be converted into
# java.awt.datatransfer.DataFlavors.
#
# These default mappings may be augmented by specifying the
#
# AWT.DnD.flavorMapFileURL
#
# property in the appropriate awt.properties file. The specified properties URL
# will be loaded into the SystemFlavorMap.
#
# The standard format is:
#
# <native>=<MIME type>
#
# <native> should be a string identifier that the native platform will
# recognize as a valid data format. <MIME type> should specify both a MIME
# primary type and a MIME subtype separated by a '/'. The MIME type may include
# parameters, where each parameter is a key/value pair separated by '=', and
# where each parameter to the MIME type is separated by a ';'.
#
# Because SystemFlavorMap implements FlavorTable, developers are free to
# duplicate both native keys and DataFlavor values. If a mapping contains a
# duplicate key or value, earlier mappings which included this key or value
# will be preferred.
#
# Mappings whose values specify DataFlavors with primary MIME types of
# "text", and which support the charset parameter, should specify the exact
# format in which the native platform expects the data. The "charset"
# parameter specifies the char to byte encoding, the "eoln" parameter
# specifies the end-of-line marker, and the "terminators" parameter specifies
# the number of terminating NUL bytes. Note that "eoln" and "terminators"
# are not standardized MIME type parameters. They are specific to this file
# format ONLY. They will not appear in any of the DataFlavors returned by the
# SystemFlavorMap at the Java level.
#
# If the "charset" parameter is omitted, or has zero length, the platform
# default encoding is assumed. If the "eoln" parameter is omitted, or has
# zero length, "\n" is assumed. If the "terminators" parameter is omitted,
# or has a value less than zero, zero is assumed.
#
# Upon initialization, the data transfer subsystem will record the specified
# details of the native text format, but the default SystemFlavorMap will
# present a large set of synthesized DataFlavors which map, in both
# directions, to the native. After receiving data from the application in one
# of the synthetic DataFlavors, the data transfer subsystem will transform
# the data stream into the format specified in this file before passing the
# transformed stream to the native system.
#
# Mappings whose values specify DataFlavors with primary MIME types of
# "text", but which do not support the charset parameter, will be treated as
# opaque, 8-bit data. They will not undergo any transformation process, and
# any "charset", "eoln", or "terminators" parameters specified in this file
# will be ignored.
#
# See java.awt.datatransfer.DataFlavor.selectBestTextFlavor for a list of
# text flavors which support the charset parameter.
UNICODE\ TEXT=text/plain;charset=utf-16le;eoln="\r\n";terminators=2
TEXT=text/plain;eoln="\r\n";terminators=1
HTML\ Format=text/html;charset=utf-8;eoln="\r\n";terminators=1
Rich\ Text\ Format=text/rtf
HDROP=application/x-java-file-list;class=java.util.List
PNG=image/x-java-image;class=java.awt.Image
JFIF=image/x-java-image;class=java.awt.Image
DIB=image/x-java-image;class=java.awt.Image
ENHMETAFILE=image/x-java-image;class=java.awt.Image
METAFILEPICT=image/x-java-image;class=java.awt.Image
LOCALE=application/x-java-text-encoding;class="[B"
UniformResourceLocator=application/x-java-url;class=java.net.URL
UniformResourceLocator=text/uri-list;eoln="\r\n";terminators=1
UniformResourceLocator=text/plain;eoln="\r\n";terminators=1
FileGroupDescriptorW=application/x-java-file-list;class=java.util.List
FileGroupDescriptor=application/x-java-file-list;class=java.util.List
@@ -0,0 +1,302 @@
#
#
# Copyright (c) 2003, 2018, Oracle and/or its affiliates. All rights reserved.
# ORACLE PROPRIETARY/CONFIDENTIAL. Use is subject to license terms.
#
#
#
#
#
#
#
#
#
#
#
#
#
#
#
#
#
#
#
#
#
# Version
version=1
# Component Font Mappings
allfonts.chinese-ms936=SimSun
allfonts.chinese-ms936-extb=SimSun-ExtB
allfonts.chinese-gb18030=SimSun-18030
allfonts.chinese-gb18030-extb=SimSun-ExtB
allfonts.chinese-hkscs=MingLiU_HKSCS
allfonts.chinese-ms950-extb=MingLiU-ExtB
allfonts.devanagari=Mangal
allfonts.dingbats=Wingdings
allfonts.lucida=Lucida Sans Regular
allfonts.symbol=Symbol
allfonts.symbols=Segoe UI Symbol
allfonts.thai=Lucida Sans Regular
allfonts.georgian=Sylfaen
serif.plain.alphabetic=Times New Roman
serif.plain.chinese-ms950=MingLiU
serif.plain.chinese-ms950-extb=MingLiU-ExtB
serif.plain.hebrew=David
serif.plain.japanese=MS Mincho
serif.plain.korean=Batang
serif.bold.alphabetic=Times New Roman Bold
serif.bold.chinese-ms950=PMingLiU
serif.bold.chinese-ms950-extb=PMingLiU-ExtB
serif.bold.hebrew=David Bold
serif.bold.japanese=MS Mincho
serif.bold.korean=Batang
serif.italic.alphabetic=Times New Roman Italic
serif.italic.chinese-ms950=PMingLiU
serif.italic.chinese-ms950-extb=PMingLiU-ExtB
serif.italic.hebrew=David
serif.italic.japanese=MS Mincho
serif.italic.korean=Batang
serif.bolditalic.alphabetic=Times New Roman Bold Italic
serif.bolditalic.chinese-ms950=PMingLiU
serif.bolditalic.chinese-ms950-extb=PMingLiU-ExtB
serif.bolditalic.hebrew=David Bold
serif.bolditalic.japanese=MS Mincho
serif.bolditalic.korean=Batang
sansserif.plain.alphabetic=Arial
sansserif.plain.chinese-ms950=MingLiU
sansserif.plain.chinese-ms950-extb=MingLiU-ExtB
sansserif.plain.hebrew=David
sansserif.plain.japanese=MS Gothic
sansserif.plain.korean=Gulim
sansserif.bold.alphabetic=Arial Bold
sansserif.bold.chinese-ms950=PMingLiU
sansserif.bold.chinese-ms950-extb=PMingLiU-ExtB
sansserif.bold.hebrew=David Bold
sansserif.bold.japanese=MS Gothic
sansserif.bold.korean=Gulim
sansserif.italic.alphabetic=Arial Italic
sansserif.italic.chinese-ms950=PMingLiU
sansserif.italic.chinese-ms950-extb=PMingLiU-ExtB
sansserif.italic.hebrew=David
sansserif.italic.japanese=MS Gothic
sansserif.italic.korean=Gulim
sansserif.bolditalic.alphabetic=Arial Bold Italic
sansserif.bolditalic.chinese-ms950=PMingLiU
sansserif.bolditalic.chinese-ms950-extb=PMingLiU-ExtB
sansserif.bolditalic.hebrew=David Bold
sansserif.bolditalic.japanese=MS Gothic
sansserif.bolditalic.korean=Gulim
monospaced.plain.alphabetic=Courier New
monospaced.plain.chinese-ms950=MingLiU
monospaced.plain.chinese-ms950-extb=MingLiU-ExtB
monospaced.plain.hebrew=Courier New
monospaced.plain.japanese=MS Gothic
monospaced.plain.korean=GulimChe
monospaced.bold.alphabetic=Courier New Bold
monospaced.bold.chinese-ms950=PMingLiU
monospaced.bold.chinese-ms950-extb=PMingLiU-ExtB
monospaced.bold.hebrew=Courier New Bold
monospaced.bold.japanese=MS Gothic
monospaced.bold.korean=GulimChe
monospaced.italic.alphabetic=Courier New Italic
monospaced.italic.chinese-ms950=PMingLiU
monospaced.italic.chinese-ms950-extb=PMingLiU-ExtB
monospaced.italic.hebrew=Courier New
monospaced.italic.japanese=MS Gothic
monospaced.italic.korean=GulimChe
monospaced.bolditalic.alphabetic=Courier New Bold Italic
monospaced.bolditalic.chinese-ms950=PMingLiU
monospaced.bolditalic.chinese-ms950-extb=PMingLiU-ExtB
monospaced.bolditalic.hebrew=Courier New Bold
monospaced.bolditalic.japanese=MS Gothic
monospaced.bolditalic.korean=GulimChe
dialog.plain.alphabetic=Arial
dialog.plain.chinese-ms950=MingLiU
dialog.plain.chinese-ms950-extb=MingLiU-ExtB
dialog.plain.hebrew=David
dialog.plain.japanese=MS Gothic
dialog.plain.korean=Gulim
dialog.bold.alphabetic=Arial Bold
dialog.bold.chinese-ms950=PMingLiU
dialog.bold.chinese-ms950-extb=PMingLiU-ExtB
dialog.bold.hebrew=David Bold
dialog.bold.japanese=MS Gothic
dialog.bold.korean=Gulim
dialog.italic.alphabetic=Arial Italic
dialog.italic.chinese-ms950=PMingLiU
dialog.italic.chinese-ms950-extb=PMingLiU-ExtB
dialog.italic.hebrew=David
dialog.italic.japanese=MS Gothic
dialog.italic.korean=Gulim
dialog.bolditalic.alphabetic=Arial Bold Italic
dialog.bolditalic.chinese-ms950=PMingLiU
dialog.bolditalic.chinese-ms950-extb=PMingLiU-ExtB
dialog.bolditalic.hebrew=David Bold
dialog.bolditalic.japanese=MS Gothic
dialog.bolditalic.korean=Gulim
dialoginput.plain.alphabetic=Courier New
dialoginput.plain.chinese-ms950=MingLiU
dialoginput.plain.chinese-ms950-extb=MingLiU-ExtB
dialoginput.plain.hebrew=David
dialoginput.plain.japanese=MS Gothic
dialoginput.plain.korean=Gulim
dialoginput.bold.alphabetic=Courier New Bold
dialoginput.bold.chinese-ms950=PMingLiU
dialoginput.bold.chinese-ms950-extb=PMingLiU-ExtB
dialoginput.bold.hebrew=David Bold
dialoginput.bold.japanese=MS Gothic
dialoginput.bold.korean=Gulim
dialoginput.italic.alphabetic=Courier New Italic
dialoginput.italic.chinese-ms950=PMingLiU
dialoginput.italic.chinese-ms950-extb=PMingLiU-ExtB
dialoginput.italic.hebrew=David
dialoginput.italic.japanese=MS Gothic
dialoginput.italic.korean=Gulim
dialoginput.bolditalic.alphabetic=Courier New Bold Italic
dialoginput.bolditalic.chinese-ms950=PMingLiU
dialoginput.bolditalic.chinese-ms950-extb=PMingLiU-ExtB
dialoginput.bolditalic.hebrew=David Bold
dialoginput.bolditalic.japanese=MS Gothic
dialoginput.bolditalic.korean=Gulim
# Search Sequences
sequence.allfonts=alphabetic/default,dingbats,symbol
sequence.serif.GBK=alphabetic,chinese-ms936,dingbats,symbol,chinese-ms936-extb
sequence.sansserif.GBK=alphabetic,chinese-ms936,dingbats,symbol,chinese-ms936-extb
sequence.monospaced.GBK=chinese-ms936,alphabetic,dingbats,symbol,chinese-ms936-extb
sequence.dialog.GBK=alphabetic,chinese-ms936,dingbats,symbol,chinese-ms936-extb
sequence.dialoginput.GBK=alphabetic,chinese-ms936,dingbats,symbol,chinese-ms936-extb
sequence.serif.GB18030=alphabetic,chinese-gb18030,dingbats,symbol,chinese-gb18030-extb
sequence.sansserif.GB18030=alphabetic,chinese-gb18030,dingbats,symbol,chinese-gb18030-extb
sequence.monospaced.GB18030=chinese-gb18030,alphabetic,dingbats,symbol,chinese-gb18030-extb
sequence.dialog.GB18030=alphabetic,chinese-gb18030,dingbats,symbol,chinese-gb18030-extb
sequence.dialoginput.GB18030=alphabetic,chinese-gb18030,dingbats,symbol,chinese-gb18030-extb
sequence.serif.x-windows-950=alphabetic,chinese-ms950,dingbats,symbol,chinese-ms950-extb
sequence.sansserif.x-windows-950=alphabetic,chinese-ms950,dingbats,symbol,chinese-ms950-extb
sequence.monospaced.x-windows-950=chinese-ms950,alphabetic,dingbats,symbol,chinese-ms950-extb
sequence.dialog.x-windows-950=alphabetic,chinese-ms950,dingbats,symbol,chinese-ms950-extb
sequence.dialoginput.x-windows-950=alphabetic,chinese-ms950,dingbats,symbol,chinese-ms950-extb
sequence.serif.x-MS950-HKSCS=alphabetic,chinese-ms950,chinese-hkscs,dingbats,symbol,chinese-ms950-extb
sequence.sansserif.x-MS950-HKSCS=alphabetic,chinese-ms950,chinese-hkscs,dingbats,symbol,chinese-ms950-extb
sequence.monospaced.x-MS950-HKSCS=chinese-ms950,alphabetic,chinese-hkscs,dingbats,symbol,chinese-ms950-extb
sequence.dialog.x-MS950-HKSCS=alphabetic,chinese-ms950,chinese-hkscs,dingbats,symbol,chinese-ms950-extb
sequence.dialoginput.x-MS950-HKSCS=alphabetic,chinese-ms950,chinese-hkscs,dingbats,symbol,chinese-ms950-extb
sequence.serif.x-MS950-HKSCS-XP=alphabetic,chinese-ms950,chinese-hkscs,dingbats,symbol,chinese-ms950-extb
sequence.sansserif.x-MS950-HKSCS-XP=alphabetic,chinese-ms950,chinese-hkscs,dingbats,symbol,chinese-ms950-extb
sequence.monospaced.x-MS950-HKSCS-XP=chinese-ms950,alphabetic,chinese-hkscs,dingbats,symbol,chinese-ms950-extb
sequence.dialog.x-MS950-HKSCS-XP=alphabetic,chinese-ms950,chinese-hkscs,dingbats,symbol,chinese-ms950-extb
sequence.dialoginput.x-MS950-HKSCS-XP=alphabetic,chinese-ms950,chinese-hkscs,dingbats,symbol,chinese-ms950-extb
sequence.allfonts.UTF-8.hi=alphabetic/1252,devanagari,dingbats,symbol
sequence.allfonts.UTF-8.ja=alphabetic,japanese,devanagari,dingbats,symbol
sequence.allfonts.windows-1255=hebrew,alphabetic/1252,dingbats,symbol
sequence.serif.windows-31j=alphabetic,japanese,dingbats,symbol
sequence.sansserif.windows-31j=alphabetic,japanese,dingbats,symbol
sequence.monospaced.windows-31j=japanese,alphabetic,dingbats,symbol
sequence.dialog.windows-31j=alphabetic,japanese,dingbats,symbol
sequence.dialoginput.windows-31j=alphabetic,japanese,dingbats,symbol
sequence.serif.x-windows-949=alphabetic,korean,dingbats,symbol
sequence.sansserif.x-windows-949=alphabetic,korean,dingbats,symbol
sequence.monospaced.x-windows-949=korean,alphabetic,dingbats,symbol
sequence.dialog.x-windows-949=alphabetic,korean,dingbats,symbol
sequence.dialoginput.x-windows-949=alphabetic,korean,dingbats,symbol
sequence.allfonts.x-windows-874=alphabetic,thai,dingbats,symbol
sequence.fallback=lucida,symbols,\
chinese-ms950,chinese-hkscs,chinese-ms936,chinese-gb18030,\
japanese,korean,chinese-ms950-extb,chinese-ms936-extb,georgian
# Exclusion Ranges
exclusion.alphabetic=0700-1cff,1d80-1e9f,1f00-2017,2020-20ab,20ad-f8ff
exclusion.chinese-gb18030=0390-03d6,2200-22ef,2701-27be
exclusion.hebrew=0041-005a,0060-007a,007f-00ff,20ac-20ac
# Monospaced to Proportional width variant mapping
# (Experimental private syntax)
proportional.MS_Gothic=MS PGothic
proportional.MS_Mincho=MS PMincho
proportional.MingLiU=PMingLiU
proportional.MingLiU-ExtB=PMingLiU-ExtB
# Font File Names
filename.Arial=ARIAL.TTF
filename.Arial_Bold=ARIALBD.TTF
filename.Arial_Italic=ARIALI.TTF
filename.Arial_Bold_Italic=ARIALBI.TTF
filename.Courier_New=COUR.TTF
filename.Courier_New_Bold=COURBD.TTF
filename.Courier_New_Italic=COURI.TTF
filename.Courier_New_Bold_Italic=COURBI.TTF
filename.Times_New_Roman=TIMES.TTF
filename.Times_New_Roman_Bold=TIMESBD.TTF
filename.Times_New_Roman_Italic=TIMESI.TTF
filename.Times_New_Roman_Bold_Italic=TIMESBI.TTF
filename.SimSun=SIMSUN.TTC
filename.SimSun-18030=SIMSUN18030.TTC
filename.SimSun-ExtB=SIMSUNB.TTF
filename.MingLiU=MINGLIU.TTC
filename.MingLiU-ExtB=MINGLIUB.TTC
filename.PMingLiU=MINGLIU.TTC
filename.PMingLiU-ExtB=MINGLIUB.TTC
filename.MingLiU_HKSCS=hkscsm3u.ttf
filename.David=DAVID.TTF
filename.David_Bold=DAVIDBD.TTF
filename.MS_Mincho=MSMINCHO.TTC
filename.MS_PMincho=MSMINCHO.TTC
filename.MS_Gothic=MSGOTHIC.TTC
filename.MS_PGothic=MSGOTHIC.TTC
filename.Gulim=gulim.TTC
filename.Batang=batang.TTC
filename.GulimChe=gulim.TTC
filename.Lucida_Sans_Regular=LucidaSansRegular.ttf
filename.Mangal=MANGAL.TTF
filename.Symbol=SYMBOL.TTF
filename.Wingdings=WINGDING.TTF
filename.Sylfaen=sylfaen.ttf
filename.Segoe_UI_Symbol=SEGUISYM.TTF

Some files were not shown because too many files have changed in this diff Show More