Comment puis-je réutiliser l'icône de l'application dans mon application afin de ne pas avoir à l'intégrer deux fois (une fois pour l'icône de l'application et une fois pour l'usage interne)?Réutilisation de l'icône de l'application .NET
5
A
Répondre
4
Vous pouvez le relire via des appels P/Interop. Il va quelque chose comme ceci:
static Icon GetAppIcon() {
var fileName = Assembly.GetEntryAssembly().Location
System.IntPtr hLibrary = NativeMethods.LoadLibrary(fileName);
if (!hLibrary.Equals(System.IntPtr.Zero)) {
System.IntPtr hIcon = NativeMethods.LoadIcon(hLibrary, "#32512");
if (!hIcon.Equals(System.IntPtr.Zero)) {
return Icon.FromHandle(hIcon);
}
}
return null; //no icon was retrieved
}
En outre, les signatures natives sont:
private static class NativeMethods {
[DllImport("user32.dll", CharSet = CharSet.Unicode)]
static extern internal IntPtr LoadIcon(IntPtr hInstance, string lpIconName);
[DllImport("kernel32.dll", CharSet = CharSet.Unicode)]
static extern internal IntPtr LoadLibrary(string lpFileName);
}
6
Il semble plus facile à utiliser Icon.ExtractAssociatedIcon, comme indiqué dans cette question connexe: Avoiding duplicate icon resources in a .NET (C#) project
Questions connexes
- 1. Réutilisation des contrôles dans .NET MVC
- 2. Réutilisation de IndexSearcher
- 3. Réutilisation de la sous-vue
- 4. Problème de réutilisation de la connexion MySQL
- 5. Réutilisation de l'entrée de variable d'exécution Eclipse
- 6. Comment la réutilisation d'objet fonctionne-t-elle dans .NET?
- 7. Réutilisation des composants entre ASP.NET et C# .NET
- 8. Réutilisation du modèle de panneau dans Drupal
- 9. Le principe d'équivalence de réutilisation/libération (REP)
- 10. réutilisation de la logique d'instruction du commutateur
- 11. Réutilisation de StaticResource dans Silverlight 2.0
- 12. Réutilisation de colonnes calculées dans mysql
- 13. Réutilisation de session SSL avec SChannel (Windows)
- 14. Réutilisation de l'objet d'automatisation COM Internet Explorer
- 15. réutilisation des objets TableCellEditor
- 16. Réutilisation d'un MFMailComposeViewController
- 17. Réutilisation d'un PreparedStatement
- 18. Création de nouvelles commandes SQLC ou réutilisation de celles-ci
- 19. Éviter plusieurs (40) boîtes de dialogue de confirmation jquery - réutilisation?
- 20. Réutilisation de code entre django et appengine Classes de modèles
- 21. Problèmes lors de la réutilisation de l'objet HTTPService
- 22. réutilisation de suites de tests avec plusieurs implémentations?
- 23. Réutilisation des styles WPF intégrés
- 24. Python avec matplotlib - réutilisation des fonctions de dessin
- 25. Erreur d'utilisation du socket lors de la réutilisation des sockets
- 26. UITableViewCell Identifiant de réutilisation avec des cellules à hauteur variable
- 27. Réutilisation d'un resultMap pour différents noms de colonnes
- 28. Réutilisation de SocketAsyncEventArgs avec ReceiveAsync en boucle infinie
- 29. Création de ressources dans une DLL pour réutilisation, MFC/VC++
- 30. Réutilisation de la connexion avec Curl, Apache et mod_wsgi