アセンブリの公開鍵トークンを見つける最も簡単な方法は何ですか?
私が考えることができる最も簡単な方法は、単純な右クリックで公開キーを取得することですが、この機能はありません。おそらくそのためのVisual Studio拡張機能がありますか?
拡張機能が利用可能な場合、Visual Studio 2010 を使用しています。
アセンブリの公開鍵トークンを見つける最も簡単な方法は何ですか?
私が考えることができる最も簡単な方法は、単純な右クリックで公開キーを取得することですが、この機能はありません。おそらくそのためのVisual Studio拡張機能がありますか?
拡張機能が利用可能な場合、Visual Studio 2010 を使用しています。
コマンド プロンプトを開き、Visual Studio のバージョンとオペレーティング システムのアーキテクチャに応じて、次のいずれかの行を入力します。
32 ビット Windows 上の VS 2008 :
"%ProgramFiles%\Microsoft SDKs\Windows\v6.0A\bin\sn.exe" -T <assemblyname>
64 ビット Windows 上の VS 2008:
"%ProgramFiles(x86)%\Microsoft SDKs\Windows\v6.0A\bin\sn.exe" -T <assemblyname>
32 ビット Windows 上の VS 2010:
"%ProgramFiles%\Microsoft SDKs\Windows\v7.0A\bin\sn.exe" -T <assemblyname>
64 ビット Windows 上の VS 2010:
"%ProgramFiles(x86)%\Microsoft SDKs\Windows\v7.0A\bin\sn.exe" -T <assemblyname>
32 ビット Windows 上の VS 2012:
"%ProgramFiles%\Microsoft SDKs\Windows\v8.0A\bin\NETFX 4.0 Tools\sn.exe" -T <assemblyname>
64 ビット Windows 上の VS 2012:
"%ProgramFiles(x86)%\Microsoft SDKs\Windows\v8.0A\bin\NETFX 4.0 Tools\sn.exe" -T <assemblyname>
64 ビット Windows 上の VS 2015:
"%ProgramFiles(x86)%\Microsoft SDKs\Windows\v10.0A\bin\NETFX 4.6.1 Tools\sn.exe" -T <assemblyname>
バージョン VS2012+ では、sn.exe アプリケーションは bin ではなくサブフォルダーにあることに注意してください。また、64 ビットの場合は (x86) フォルダーを指定する必要があることに注意してください。
Visual Studio コマンド プロンプトを使用する場合は、次のように入力します。
sn -T <assembly>
where<assemblyname>
は、関心のあるアセンブリへの完全なファイル パスで、スペースがある場合は引用符で囲みます。
ここに示すように、これをVSの外部ツールとして追加できます。
-for-a-stong-named-assembly.aspx
プロジェクトにアセンブリを含めた場合は、次のことができます。
var assemblies =
AppDomain.CurrentDomain.GetAssemblies();
foreach (var assem in assemblies)
{
Console.WriteLine(assem.FullName);
}
次のように、これを外部ツールとして Visual Studio に追加できます。
題名:
Get PublicKeyToken
指示:
c:\Program Files (x86)\Microsoft SDKs\Windows\v8.1A\bin\NETFX 4.5.1 Tools\sn.exe
(パスはバージョンによって異なる場合があります)
引数:
-T "$(TargetPath)"
「出力ウィンドウを使用」オプションをチェックします。
1)コマンドはC:\Program Files\Microsoft SDKs\Windows\v6.0A\bin\sn -T {your.dll}
上記の例では、Microsoft SDKはC:\ Program Files \ Microsoft SDKs \ Windows\v6.0Aにあります。環境が異なる場合があります。
2)プロジェクトの公開鍵トークンを取得するには、VisualStudioの外部ツールの一部としてsn.exeを追加します。手順は、次のMicrosoftリンクに示されています。方法:アセンブリの公開鍵を取得するためのツールを作成する
別の方法は、逆コンパイラがある場合です。そこで調べるだけで、通常は公開鍵が提供されます。.Net Reflector、Telerik Just Decompile、ILSpy just decompile を見たところ、公開鍵トークンが表示されているようです。
Ildasm.exe (IL 逆アセンブラー) を使用して、完全修飾名を含むアセンブリのメタデータを調べることができます。
次の MSDN: https://msdn.microsoft.com/en-us/library/2exyydhb(v=vs.110).aspx