2017-10-12 13 views
0

J'ai une application Windows WPF qui se compile à "MyApp.exe". Cette application fait référence à ma DLL nommée "MyDll.dll". Dans DLL, j'ai fonction suivante:Comment obtenir les informations d'assemblage de l'exécutable à partir de la DLL référencée?

public string GetFileDescription() 
{ 
    System.Diagnostics.FileVersionInfo fileVersionInfo = System.Diagnostics.FileVersionInfo.GetVersionInfo(Assembly.GetExecutingAssembly().Location); 
    return fileVersionInfo.FileDescription; 
} 

Cette fonction supposée lire la description du fichier de l'exécutable. Mais, il retourne la même chose de DLL à la place.

Si je copie la fonction sur l'application, cela fonctionne correctement. Mais la fonction devrait rester dans DLL.

Comment obtenir les informations d'assemblage de l'exécutable à partir de la DLL référencée?

Références:

J'ai lu plusieurs questions (y compris this) sur débordement de la pile, mais rien de tout cela implique DLL. Ce question concerne le nom de l'exécutable; Je veux une description de fichier exécutable.

Répondre

2

Utilisez Assembly.GetEntryAssembly() plutôt que pour obtenir l'entrée (c'est-à-dire EXE) plutôt que le courant (c'est-à-dire DLL).