私は Active Directory Rights Management サービス (AD RMS) を初めて使用し、AD RMS を使用して一部のドキュメントを暗号化するアプリケーションを開発しています。相互運用の例を使用していますが、エラーが発生します - 指定されたファイルが見つかりません。HRESULT: 0x80070002 - 以下のコードを実行しようとすると:
このステートメントを実行しようとすると、エラーが発生します。
コレクション ipcTemplates = IPC.GetTemplates();
internal static class IPC
{
static IPC()
{
SafeNativeMethods.IpcInitialize();
}
public static Collection<TemplateInfo> GetTemplates()
{
Collection<TemplateInfo> templates = null;
try
{
templates = SafeNativeMethods.IpcGetTemplateList(null, true, true,
false, false, null, null);
}
catch (Exception /*ex*/)
{
/* TODO: Add logging */
throw;
}
return templates;
}
}
スタックトレース:
システムは、指定されたファイルを見つけることができません。HRESULT: Microsoft.InformationProtectionAndControl.SafeNativeMethods.ThrowOnErrorCode(Int32 hrError) の 0x80070002 (c:\Microsoft.InformationProtectionAndControl\SafeNativeMethods.cs:行 1678、Microsoft.InformationProtectionAndControl.SafeNativeMethods.IpcGetTemplateList (ConnectionInfo connectionInfo、ブール値の forceDownload、ブール値の suppressUI、ブール値のオフライン、 c:\Microsoft.InformationProtectionAndControl\SafeNativeMethods.cs:c:\IPC.cs の IPC.GetTemplates() の行 137 の Boolean hasUserConsent、Form parentForm、CultureInfo cultureInfo)
また、ビルド後のイベントを設定して、コードがコンパイルされるたびにマニフェスト ファイルが作成されるようにしました。アプリケーションは、Windows サービスでホストされる WCF サービスです。機能する非常に単純なコンソールアプリがあります。
このエラーを解決するための助けと、マネージ コードを使用した AD RMS の例を教えていただければ幸いです :)