0

Outlook2010 アドイン パッケージをロックするために Intellilock 1.8 を使用したいと考えています。これには、他の Mocrosoft VSTO dll の中に、私のカスタム署名済み dll とセキュリティ ハッシュを含むマニフェスト ファイルが含まれています。その dll をロックするときにプロジェクト *.snk キー ファイルを提供しましたが、最終的なパッケージをインストールしようとするとエラーが発生します。

System.Deployment.Application.InvalidDeploymentException: ファイル OutlookAddIn2010.dll に、マニフェストで指定されたものとは異なる計算されたハッシュがあります。

元の Visual Studio セットアップでは、署名付きの ClickOnce マニフェストも自動的に作成されます。このセクションでは、メインの dll について説明します。

  <dependency>
    <dependentAssembly dependencyType="install" allowDelayedBinding="true" codebase="OutlookAddIn2010.dll" size="275968">
      <assemblyIdentity name="OutlookAddIn2010" version="2.7.0.0" publicKeyToken="DEDC24E24E6D7D88" language="neutral" processorArchitecture="msil" />
      <hash>
        <dsig:Transforms>
          <dsig:Transform Algorithm="urn:schemas-microsoft-com:HashTransforms.Identity" />
        </dsig:Transforms>
        <dsig:DigestMethod Algorithm="http://www.w3.org/2000/09/xmldsig#sha1" />
        <dsig:DigestValue>Vg17KBReMnOV9emW0ddVuN7AaIU=</dsig:DigestValue>
      </hash>
    </dependentAssembly>
  </dependency>
4

1 に答える 1

0

解決策は、メイン ビルドの前に IntelliLock 署名を適用することです。解決策は、この質問と同じです。

<Target Name="AfterCompile">
    <Exec Command="$(IntelliLockLocation) -project $(IntelliLockProject) -file &quot;$(ProjectDir)$(IntermediateOutputPath)$(TargetFileName)&quot; -targetfile &quot;$(ProjectDir)$(IntermediateOutputPath)$(TargetFileName)&quot;  -snkeypair &quot;$(ProjectDir)$(AssemblyOriginatorKeyFile)&quot; -snpassword *****" />
  </Target>
于 2014-02-26T03:55:48.660 に答える