問題タブ [publickeytoken]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
6 に答える
24352 参照

c# - 公開鍵トークンとは何ですか?アセンブリの厳密な名前でどのように計算されますか?

「公開鍵トークン」とは何ですか?アセンブリの厳密な名前でどのように計算されますか?

0 投票する
10 に答える
170973 参照

.net - 特定のdllのPublicKeyTokenを見つけるにはどうすればよいですか?

web.configファイルに次のようなプロバイダーを再作成する必要があります。

ただし、このアセンブリをロードできないというランタイムエラーが発生します。これは、PublicKeyTokenが間違っていることが原因だと思います。アセンブリのPublicKeyTokenを検索するにはどうすればよいですか?

あるいは、私はこれで完全に間違った方向に進んでいますか?

0 投票する
3 に答える
20847 参照

.net - 異なる公開キー トークンを使用した .Net アセンブリ バインディング リダイレクト

公開キー トークンが古いバージョンでは null で、新しいバージョンでは設定されている場合、参照されているアセンブリの異なるバージョン間でアセンブリ バインド リダイレクトを実行することは可能ですか?

たとえば、2 つのアセンブリがあります...

次のアセンブリ バインディング リダイレクトは、Asp.Net の web.config で機能する必要があります...

0 投票する
2 に答える
9704 参照

.net - web.configからアセンブリを参照する方法は?

'System.XML.dll'アセンブリへの参照をweb.configに追加する必要があります(問題の解決策を試すために、ここで説明:拡張メソッドの問題:IXmlLineInfo)。

「アセンブリ」セクションに次の行を追加しようとしました。

それはエラーを引き起こしました:

説明:この要求を処理するために必要な構成ファイルの処理中にエラーが発生しました。以下の特定のエラーの詳細を確認し、構成ファイルを適切に変更してください。

パーサーエラーメッセージ:ファイルまたはアセンブリ'System.Xml、Version = 2.0.5.0、Culture = neutral、PublicKeyToken=7cec85d7bea7798e'またはその依存関係の1つを読み込めませんでした。見つかったアセンブリのマニフェスト定義がアセンブリ参照と一致しません。(HRESULTからの例外:0x80131040)

正直なところ、version / Culture/PublicKeyTokenが正しく指定されているかどうかはわかりません。

System.XML.dllのバージョンはいくつかあります。

  • C:\ Program Files(x86)\ Reference Assemblies \ Microsoft \ Framework.NETFramework \ v3.5 \ Profile \ Client \ System.XML.dll
  • C:\ Program Files(x86)\ Reference Assemblies \ Microsoft \ Framework.NETFramework \ v4.0 \ Profile \ Client \ System.XML.dll
  • C:\ Program Files(x86)\ Reference Assemblies \ Microsoft \ Framework.NETFramework \ v4.0 \ System.XML.dll
  • C:\ Program Files(x86)\ Reference Assemblies \ Microsoft \ Framework \ Silverlight \ v3.0 \ System.Xml.dll
  • C:\ Program Files(x86)\ Reference Assemblies \ Microsoft \ Framework \ Silverlight \ v4.0 \ System.Xml.dll

また、フレームワーク、フレームワークx64などのGACにいくつかのアセンブリがあります...

質問1:

どのアセンブリが必要ですか?

質問2:(廃止)

正確なアセンブリバージョンとpublicKeyTokenを確認する方法は?

PS面白いことに、質問を投稿したときに、「publickkeytoken」タグがすでにあり、質問2の回答が含まれていることがわかりました:)

どうもありがとう!

0 投票する
0 に答える
1453 参照

asp.net - publickeytoken の大文字と小文字の区別 - ASP.Net web.config の問題

私は最近、asp.net ソリューションを Win2003 サーバーにデプロイしようとしました。

おそらく欠落しているアセンブリを参照するエラーメッセージが表示されていました。

私の開発マシン (XP SP3 32 ビット) の publickeytoken は大文字でしたが、サーバー上の同じファイル (32 ビットか 64 ビットかは現時点では確認できません) は小文字の publickeytoken でした。

(c:\windows\assembly に移動する win エクスプローラーを使用しました)

publickeytokenがサーバー上のアセンブリのトークンと一致するようにweb.configを修正すると、アプリが機能しました。

違いの理由を調べてみましたが、何も見つかりませんでした。

異なるマシンのパブリックキートークンが異なるケースになる理由について、誰かが私を助けたり、正しい方向に向けたりすることはできますか?

どうもありがとう

ニール

0 投票する
6 に答える
36529 参照

.net - publickeytoken を変更し続ける log4net を回避するにはどうすればよいですか

log4net バージョン 1.2.10.0 に依存するいくつかのフレームワークを使用する asp.net 4.0 プロジェクトがあります。今日、log4net バージョン 1.2.11.0 に依存する新しいフレームワークを含めようとしましたが、それ以来行き詰まっています。

log4net 1.2.10.0 には publickeytoken = 1b44e1d426115821 があります

log4net 1.2.11.0 には publickeytoken = 669e0ddf0bb1aa2a があります

これらは異なるため、web.config のランタイム要素を介して、アセンブリ リダイレクト (すべてのフレームワークで同じバージョンの log4net を使用するため) またはコードベース (新しいフレームワークだけでバージョン 1.2.11.0 を使用するため) を使用することはできません。

ここでのオプションは何ですか?

(そして、バージョン 1.2.9.0 と 1.2.10.0 の間の切り替えの理由がキーの紛失であったことを理解しているため、log4net がバージョン間で publickeytokens を変更し続けるのはなぜですか。必要に応じて安全に保管するため...)

編集: わかりまし、log4net の連中は 2 つのキーでリリースするのが良い考えだったようです。同じアプリドメインに並んでいます。これが恐ろしい考えだと思うのは私だけですか?みんなでやったら全部壊れちゃうよね?

Edit2: 私が述べたように、私は自分のビジネス コードで log4net を使用していませんが、1.2.10.0 に依存するいくつかのフレームワークを使用しており、1.2.11.0 に依存する新しいフレームワークを使用しようとしたときに問題が発生しました (新しいキー)、新しいフレームワークは古いキーではなく新しいキーを期待するため、Stefans の回答は適用されません。

0 投票する
1 に答える
2703 参照

gac - GAC から PublicKeyToken を取得する方法

gacutil を使用して GAC にファイルを追加するこのガイドに従っています。

この手順は完了しましたが、ファイルから Keytoken を読み取ることができないようです。

GACに追加したアセンブリに移動し、右クリックしてプロパティを表示するように指示されています。これを行うと、PKTはプロパティページのどこにも記載されません。

他の誰もこの問題を抱えていないように見えるので、ここで何かを誤解したと仮定します。どこで間違ったのでしょうか? PublickKeyToken を表示するにはどうすればよいですか?

編集:解決しました。

これは簡単です。

0 投票する
1 に答える
1642 参照

c# - アセンブリを参照するときに、バージョン番号を主張することはできますが、publickeytokenを無視することはできますか?(つまり、署名付き/署名なしを受け入れる)

質問によると、

特定のバージョンを必要とするが、特定のパブリックキートークンを要求しない、別のアセンブリへの参照を指定することは可能ですか?私の直感はノーです(バージョンが指定されていると推測しているので、バージョンとpktの両方を含む完全修飾アセンブリ名全体が使用されます)

したがって、このシナリオがある場合:

アセンブリAのv1.0(符号なし)アセンブリAのv1.0を必要とするアセンブリBのv1.0

ソースコードなしで、アセンブリに再署名して(ildasm + ilasm経由で)、AとBの作業バージョンに署名してもらうことはできますか?

0 投票する
1 に答える
2804 参照

c# - publickeytoken == null の場合に C# を使用して Dll からパブリック メソッドを取得する方法

dll からパブリック ユーザー定義関数を検索したい場合publickeytoken == null

これを解決する方法

publictokenkey を検索するためにこれを試しても、0 バイトが返されます

0 投票する
4 に答える
2945 参照

android - Xamarin Studio の更新後の警告

Xamarin Studio を最新バージョン (Xamarin.Android バージョン: 4.6.4 (Business Edition)) に更新したところ、更新後に多くの警告が表示されます..:

/Library/Frameworks/Mono.framework/External/xbuild/Xamarin/Android/Xamarin.Android.Common.targets: 警告: 参照 'mscorlib、Version=2.0.5.0、Culture=neutral、PublicKeyToken=xxxxx' が解決されていません (TrackandTrace.ドロイド)

/Library/Frameworks/Mono.framework/External/xbuild/Xamarin/Android/Xamarin.Android.Common.targets: 警告: 参照 'Mono.Android, Version=0.0.0.0, Culture=neutral, PublicKeyToken=xxxx' が解決されていません ( TrackandTrace.Droid)

私はすでに参照を削除して、何の効果もなく再追加しようとしました。

更新: 新しいプロジェクトを作成しても、最初から 2 つのエラーが表示されます。これらのエラーにより、Android プロジェクトをビルドできません。