2009-03-02 4 views
2

WebDAVリダイレクタを使用してSharePointリポジトリ上のファイルを編集しています。この方法でファイルを保存するたびに、元のファイルを置き換える新しいオブジェクトが作成されます。これにより、すべてのバージョン履歴が失われています。WebDAVリダイレクタ経由でSharePointに保存する。新しいオブジェクトIDを取得してバージョン履歴を失う

ファイルを開くにはしてCreateFileを介して行われている:

ファイル名 - 同じ読み取り専用

DesiredAccess(作品)のCreateFileに呼び出すために使用されますGENERIC_READ | GENERIC_WRITE

dwShareMode:FILE_SHARE_READ SecurityHandle:長さが設定されますが、他の2つのフィールドが0

dwCreationDispositionですされています。私は、返されたハンドルにファイルを書き込みした後にNULL

:OPEN_EXISTINGのは、dwFlagsAndAttributes:FILE_ATTRIBUTE_NORMAL

hTemplateFileこの呼び出しによって、このファイルのリストアイテムが取得されると、オブジェクト番号(ID =)がインクリメントされます。また、このID番号はリスト項目の各フィールドに付加されているようです(シーケンス "#;"によって実際のデータから区切られています)

このID番号の増分チェックアウトしたり、編集したり、ウェブインターフェースを使ってチェックインすると起こりません。それは同じIDを保持し、バージョン履歴はそのまま残されます。

どうすればこの問題を回避できますか?私はバージョン履歴を保持する必要があります。

答えて

1

HTTPトレースを取得することをお勧めします。

リダイレクタが一時ファイルを使用し、元のファイルに移動することが示されます。

修正:よりスマートなWebDAVクライアントを使用してください(Xythosドライブが良いかもしれません)。

0

WebDavを使用すると、SharePointランタイムをバイパスすることになります。その理由はあなたです。バージョン履歴を確実に取得するには、SharePoint apis(WebサービスまたはOM)を使用する必要があります。

関連する問題