Existe-t-il un moyen d'obtenir les traductions de ressources disponibles d'une DLL .net? Notre logiciel est en cours de traduction dans différentes langues, et je voudrais donner à l'utilisateur le choix de la langue dans laquelle le logiciel est, bien que je voudrais seulement les laisser choisir seulement entre les langues dans lesquelles il a été traduit.Comment obtenir les traductions disponibles depuis un DLL
Répondre
Je viens de recevoir un problème similaire donc juste pour référence future.
Pour mes traductions de logiciels sont dans le dossier du programme, chacun sous leur propre sous-dossier nommé après le nom de la culture. Code explique tout:
private void SettingsForm_Load(object sender, EventArgs e)
{
// load default language to the list
languageList.Add(new Language("English", "en"));
string fileName = "myProgram.resources.dll";
// load other languages available in the folder
DirectoryInfo di = new DirectoryInfo(Application.StartupPath);
foreach (DirectoryInfo dir in di.GetDirectories())
{
if (File.Exists(dir.FullName + "\\" + fileName))
{
try
{
CultureInfo ci = new CultureInfo(dir.Name);
languageList.Add(new Language(ci.NativeName, ci.Name));
}
catch
{
// whatever happens just don't load the language and proceed ;)
continue;
}
}
}
}
Il annonce une exception manutention aérienne, mais combien d'utilisateurs vont créer des dossiers personnalisés dans le répertoire d'installation avec la ressource faux nom exactement comme fichier de localisation ?? : P
Vous devez donc être en mesure d'obtenir la culture de la DLL de base, puis d'énumérer toutes les DLL satellites?
La première partie est assez facile (il suffit d'obtenir l'attribut de niveau d'assemblage). Pour ce dernier, il ne semble pas y avoir d'assistant sur la classe ResourceManager, ce qui signifie que vous devrez émuler son machanisme de sondage (y compris, potentiellement, tous les remplacements disponibles avec les attributs et le fichier .config). Une alternative est de construire la liste à la construction ou à l'installation (ce qui fonctionnerait mieux si d'autres langages peuvent être ajoutés plus tard), crée une liste pour le fichier .config.
- 1. Comment obtenir le nom de l'application depuis une DLL?
- 2. Comment puis-je obtenir les polices disponibles dans WPF
- 3. localisation asp.net: rapports sur les traductions manquantes
- 4. Puis-je exporter des traductions de noms de lieux depuis freebase.com
- 5. Comment stocker/accéder efficacement aux traductions?
- 6. Comment récupérer une ressource depuis un tWebModule
- 7. Comment obtenir par programme des dépendances DLL
- 8. Comment protéger les DLL?
- 9. Douilles, obtenir le nombre d'octets disponibles (C#)
- 10. Comment faire pour obtenir Highlighter.Net 2.0.0.dll
- 11. obtenir une liste des énumérations disponibles
- 12. Comment vérifier les ressources externes sont disponibles
- 13. Extension des traductions LINQ du compilateur
- 14. Comment trouver les ports COM disponibles?
- 15. Charger une DLL depuis gac en utilisant Assembly.Load depuis une machine distante?
- 16. Obtenir le nom d'une DLL à partir de la DLL
- 17. étiquettes Django et traductions - Modèle de conception
- 18. Obtenir les modifications de dernière depuis la dernière valeur Variation
- 19. Comment puis-je trouver les modules disponibles à l'importation dans un package?
- 20. Plugin: comment obtenir tous les types disponibles dans mon espace de travail eclipse?
- 21. Comment lier un .DLL statiquement?
- 22. Comment obtenir les points d'accès Wi-Fi disponibles et la force de leur signal dans .net?
- 23. Comment obtenir tous les noms de culture disponibles dans l'application ASP.NET
- 24. Comment filtrer les éléments depuis un std :: map?
- 25. Comment accéder au système de fichiers depuis une DLL .NET appelée par ASP classique?
- 26. Comment obtenir la version d'un autre projet depuis app.config?
- 27. Comment obtenir des ID photo depuis l'API Flickr?
- 28. Comment tracer ou déboguer tous les événements javascript disponibles
- 29. Requête SQL pour insérer les emplacements disponibles dans une table (avail) depuis la table des emplacements réservés
- 30. Imprimer toutes les variables disponibles dans un modèle Smarty
Déjà élaboré une solution similaire, mais j'ai oublié de le poster ici, alors félicitations, je vous donne la réponse: D – Stormenet