2016-07-13 8 views
5

バージョン4.3.0リリースをビルドしようとしています。しかし、私は既知のエラーが発生しています:DotNetOpenAuthの特定のバージョンを少し変更してコンパイルすると、問題が発生する

ファイルまたはアセンブリ 'DotNetOpenAuth.Core'またはその依存関係の1つを読み込めませんでした。強い名前の署名を検証できませんでした。アセンブリが改ざんされている可能性があります。署名が遅延されていても、正しい秘密鍵で完全に署名されていない可能性があります。 (HRESULTからの例外:0x80131045)

私はいくつかのオプションを試しましたが、管理しませんでした。

問題はOpenIdプロバイダと関連付ける必要があり、私がprotected string GetSignatureメソッドを変更しない限り、動作しないと言われています。

ライン:それをコンパイルする方法を説明することができ、それが示唆された。このquestion

MessageDictionary dictionary = this.Channel.MessageDescriptions.GetAccessor(signedMessage, true); 

MessageDictionary dictionary = this.Channel.MessageDescriptions.GetAccessor(signedMessage); 

それらに係るに変更する必要があります。誰もまだそうすることができますか?数多くのGoogle検索は私を解決に導かなかった。

誰でも私にこれを手伝うことができますか?私はOpenId 2.0が廃止されたことを知っていますが、プロバイダはすぐにOpen Connectに切り替えることはありません。

+0

この1つをご覧ください http://stackoverflow.com/questions/20212035/how-to-fix-could-not-load-file-or-assembly-xxx-or-one-of-its-依存関係st –

答えて

0

上記のコメントはそれ以上私を得られませんでした。

もう少し試してみると、秘密の部分がキーから抜けているので、署名は不可能だと思った。

だから、すべてのcsprojファイルで次の真の値をfalseに置き換えるだけで、署名を削除することにしました。メモ帳で一括で置換することは、Visual Studioのすべてのプロジェクトのマニュアルよりも速くなります。

<PropertyGroup> 
    <SignAssembly>true</SignAssembly> 
</PropertyGroup> 
<PropertyGroup> 
    <DelaySign>true</DelaySign> 
</PropertyGroup> 

上記のプロパティはプロジェクトノードにあります。

削除後、私はコンパイルして配布することができました。

Visual Studio IDEで実行する場合は、プロジェクトを右クリックしてプロパティを選択し、[署名]タブに移動します。署名の回し。

関連する問題