Jak znaleźć w pełni kwalifikowaną nazwę zespołu?
Jak mogę znaleźć w pełni kwalifikowaną nazwę mojego zgromadzenia, taką jak:
MyNamespace.MyAssembly, version=1.0.3300.0,
Culture=neutral, PublicKeyToken=b77a5c561934e089
Udało mi się dostać moje publiczne za pomocą sn.exe
W SDK, ale chciałbym łatwo uzyskać pełną kwalifikowaną nazwę.
9 answers
Jeśli możesz załadować assembly do aplikacji. NET, możesz to zrobić:
typeof(SomeTypeInTheAssembly).Assembly.FullName
Jeśli nie możesz, możesz użyć ildasm.exe i gdzieś tam będzie:
ildasm.exe MyAssembly.dll /text
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2009-03-18 14:56:36
Jest to bezwstydny Kopiuj-Wklej z zapisuję to i jest to prosty sposób na uzyskanie FQN dla wyniku projektu:
Open Visual Studio
Go to Tools –> External Tools –> Add
Title: Get Qualified Assembly Name
Command: Powershell.exe
Arguments: -command "[System.Reflection.AssemblyName]::GetAssemblyName(\"$(TargetPath)\").FullName"
Check "Use Output Window".
Nowe narzędzie pojawia się pod Tools –> Get Qualified Assembly Name
. Po wybraniu elementu menu w oknie wyjściowym zostanie podana nazwa złożenia.
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2013-07-04 21:09:46
Spóźniłem się na imprezę, ale wygooglowałem trochę więcej na ten temat i znalazłem tę stronę:
Opisuje funkcję powershell, która może to zrobić. Więc. Nigdy wcześniej nie używałem PowerShella, ale pomyślałem, że spróbuję:
C:\> cd PATH_TO_ASSEMBLY
C:\PATH_TO_ASSEMBLY>powershell
Windows PowerShell
Copyright (C) 2009 Microsoft Corporation. All rights reserved.
PS C:\PATH_TO_ASSEMBLY> [System.Reflection.AssemblyName]::GetAssemblyName('System.Data.SQLite.dll').FullName
System.Data.SQLite, Version=1.0.66.0, Culture=neutral, PublicKeyToken=db937bc2d44ff139
PS C:\PATH_TO_ASSEMBLY>
To robi sztuczkę wspomnianą w innych odpowiedziach za pomocą kodu, z tym, że nie musisz tworzyć projektu, aby to zrobić - po prostu wpisz w prompt;)
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2013-03-07 12:01:50
Użyj Montaż.GetExecutingAssembly () Aby pobrać bieżący assembly, użyj Assembly .GetEntryAssembly () Aby pobrać assembly, od którego wszystko się zaczęło, lub użyć Assembly .GetCallingAssembly () aby uzyskać złożenie kodu, który wywołał twoją funkcję(jeden w stosie).
Gdy już masz odpowiedni zestaw, użyj właściwości FullName, jak wskazano w innych odpowiedziach.
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2009-03-18 14:27:44
Również jeśli szukasz w pełni kwalifikowanej nazwy złożeń już w GAC, możesz uruchomić wiersz poleceń Visual Studio (najprostszy sposób na ustawienie prawidłowych ścieżek) i użyć gacutil /l
, aby wyświetlić listę wszystkich złożeń z odpowiednimi FQN. Użyj gacutil /l <yourassemblyname>
, aby filtrować listę, aby łatwiej znaleźć to, czego szukasz.
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2011-08-16 16:20:27
Jeśli załadujesz zespół (DLL, EXE, itp.) w Reflektor powie Ci pełną mocną nazwę na dole.
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2009-03-18 14:25:15
Możesz również użyć open source ILSpy, po załadowaniu twojego assembly jego pełna nazwa będzie diplayed in comments at the top of code window
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2012-08-27 09:52:46
JetBrains dotPeek lub Telerik JustDecompile są całkiem dobre. Po prostu otwórz DLL i masz nazwę od razu.
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2013-03-14 15:27:04
Kilka sposobów.
W kodzie:
Montaż.FullName np.
typeof(Thingy).Assembly.FullName
Lub, jeśli jest to zainstalowany zespół, z GAC za pomocą kroków w tym poście na msdn .
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2009-03-18 14:26:11