2008-09-05 20 views
1

あいまいなパズルですが、私を絶対に動かすものです。SharePointの情報管理ポリシー

私はMOSSでカスタム情報管理ポリシーを作成しています。私はIPolicyFeatureを実装しました。私のポリシー機能は、新しいSPItemEventReceiverを設定することで楽しく登録されます。私の図書館にある新しいアイテムはすべてイベントを発射します。すべて正常に動作します。

IPolicyFeatureには、既にライブラリ内にあるアイテムにポリシーを遡及的に適用するProcessListItemメソッドがあります(少なくとも、返され続ける限りは、true)。それ以外はありません。このポリシーは、図書館の最初のの項目にのみ適用されます。理由はまったく分かりません。

例外を投げているようではなく、最初のアイテムを処理すると本当にtrueを返しますが、それ以外は何も見えません。誰でも?

編集:下記のコーリーの答えは、正しい軌道に乗ってください。何か他のものは実際には失敗していました。私はwindbg-fuが何でなければならないのか分からなかったのですが、それは "それが繰り返されている間にコレクションを変更する"のようなものでした。私のコードは、ProcessListItemに渡されたSPListItemを変更してから、SystemUpdateを呼び出していました。コードを変更して(まったく同じSPListItemを指している)独自の変数を作成して使用すると、問題はなくなりました...

答えて

1

私が試して考えることができるのは、ほんの2つのことだけです。まず、Visual Studioを使用してデバッグできるボックスを開発していますか?だからそれを踏んでいくだけです。

そうでないとすれば、私がやることは、WinDBGを起動し、ポリシーを登録する直前にプロセスにアタッチすることです。最初のチャンス例外が発生するたびに破損するように、最初のチャンス例外をオンにします。あなたはそれがで壊れされると、コマンド「SXEのCLR」を発行することによってそれを行うことができますここではWinDBGのについて、もう少し情報があります:。

http://blogs.msdn.com/tess/archive/2008/06/05/setting-net-breakpoints-in-windbg-for-applications-that-crash-on-startup.aspx

私は最初のチャンス例外があるために、次に見ているんだろうと何スローし、何が起こっているかを見るためにPrintExceptionを実行します。私の推測では、アプリが他のアイテムの処理を停止させているどこかに例外がスローされているということです。

ProcessListItemのロジックはどのように見えますか?あなたはそれが動作することを確認するために真実を返そうとしましたか?

0

ありがとうございました。 Visual Studioデバッガは例外を表示していませんでした(そして、私はtry/catchブロックですべてをラップしました)。しかし、私はWindbgを試すことを考えていませんでした...

関連する問題