2011-06-06 17 views
2

CRM2011サーバーにプラグインを追加しようとしています。プラグインサンプルの手順に従ってsdkを実行すると、すべてが期待通りに機能しました。私は(デフォルトでは、データベースにある)ディスクへのプラグインを登録しようとしたときしかし、私はDynamics CRM 2011はプラグインをディスクに登録できません

Unhandled Exception: System.ServiceModel.FaultException`1[[Microsoft.Xrm.Sdk.OrganizationServiceFault, Microsoft.Xrm.Sdk, Version=5.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35]]: Unable to load plug-in assembly. 

は、サーバーがmicrosoft.xrm.sdkファイルを見つけることができなかったことを思えました。しかし、なぜデータベースに公開するときに同じ設定がうまくいったのですか?

C:\ program files \ MicrosoftDynamics CRM \ Server \ binフォルダの "Network Service"ユーザーに "書き込み"特権を追加しましたが、同じエラーメッセージが表示されます。

サーバOSはWindows 2008 R2であり、VMware Playerの仮想マシン内で実行されます。

+0

私はこの質問をhttp://social.microsoft.com/Forums/en/crmdevelopment/thread/5389fb9d-04ee-4a00-b7f5-48dc37a4e155で尋ねてきましたが、マイクロソフトの内部関係者からのフィードバックを得ることを望みます。 –

答えて

5

私はマイクロソフトのフォーラムから答えを得ました。 CRMINSTLLDIR/Server/bin/assemblyの下にあるCRMサーバーにdllを手動でコピーする必要があることが判明しました。その後、クライアントマシンから登録を実行できます。

私はコンセプトを知っていますが、まだそれは反直感的だと思っています。 Microsoftがプラグイン登録プロセスをこのように設計した理由はありますか?セキュリティ?

+0

私たちはこの同じ問題を抱えていました。時間は痛みです)。 – ryanjones

0

グループ「Everyone」をbinフォルダにフルアクセスで追加しようとすると、エラーが表示されますか?

+0

今、Everyoneをフルコントロールで追加しました。それでも同じエラーが発生する:( –

0

CRMデータベースに.dllを登録すると、選択が完了した後に.dllが登録されてしまい、そのあとでアセンブリフォルダ(ディスク)を使用できなくなることがあります。

dev'ing時には常にディスクを使用して整理していますので、実稼働環境でデータベースオプションを使用するだけですばやくアセンブリを更新できます。

0

本当にこの試すディスクに展開する場合:ちょうど開発者のための読み取り/書き込みを[...] /サーバ/ binに/アセンブリフォルダに共有を作成し

  1. を。また、開発者がサーバー上で管理者権限を持っている場合は、この手順をスキップして管理共有を使用することもできます。たとえば、次のように \サーバー名\ ビルド後に実行するコマンドラインボックスで、プロジェクト/プロパティ]メニューの選択の下に$ \ Program Files \ MicrosoftダイナミクスCRM \サーバー\ビン\アセンブリのVisual Studioで

  2. 、C .dll(デバッグの場合は.pdb)をコピーするコマンドを追加します。コピーコマンドでも、管理者$

を使用して、前のステップで作成した共有名、またはパスを含める必要があり、編集後のビルドボタンの下に使用可能なマクロを見てみましょう。実際のファイルとフォルダの名前を抽象化するために、$(TargetFileName)のような便利なビットがいくつかあります。

ビルドするたびに、ファイルが自動的にサーバーにコピーされます。

プラグインをデータベースに登録しても、私はこの方法を常に使用します。リモートデバッグを行う場合は、サーバー上のアセンブリフォルダに.dllと.pdbが必要です。

関連する問題