1

IE ユーザーが SharePoint にあるファイルのリンクをクリックすると (そしてユーザーが「読み取り専用」アクセスを選択すると)、ファイルは一時インターネット ファイルにコピーされ、アプリケーションが開かれ、そのファイル名がパラメーターとして渡されます。ユーザーが読み取り専用モードからチェックアウトおよび編集モードに切り替えることができるように、アプリに「チェックアウト」ボタンを実装しようとしています。ファイルの SharePoint URL を知る方法が見つかりませんでした。チェックアウトして編集するときは問題ありません。システム上のファイルを SharePoint の URL にマップするレジストリ エントリがあります。読み取り専用ファイルのようなものは見つかりませんでした。

編集: Windows エクスプローラーで使用できる URL 列がありますが、その列を (エクスプローラーで) 表示すると、すべての値が空白になります。また、この値を返すファイル情報 API 呼び出しが見つかりません。

更新: wininet.lib でいくつかの有望な呼び出しを見つけました: FindFirstUrlCacheEntryEx (および "next") と FindFirstUrlCacheGroup (および next)。それらはデータを返さなかったようで、私が読んだことから、これらは私のアプリケーションの wininet api 呼び出しキャッシュの使用のみを返します - IE のものではありません。

また、ファイルを開いたときに IE がアプリに対して行った COM 呼び出しのリストを実行して、サポートされている場合にどのインターフェイスが表示されているかを確認してみました。有望に見えたのは IMonikerProp インターフェイスで、実装すると呼び出されました...ただし、MIME タイプのプロパティ、アプリのクラス ID、TrustedDownload フラグしか提供されませんでした。

4

2 に答える 2

2

このサイトに答えがあるかもしれません: SharePoint が ActiveX 経由で Word と通信する方法

もう 1 つのオプションは、SharePoint の ItemCheckingOut イベントにフックすることです。例 1 例 2 . URL 情報を取得し、情報を含む一時ファイルを作成するか、情報をプログラムに渡すことができます。

ActiveX コントロール情報へのリンク- おそらく、このコントロールはすべてで起動されますか? あなたはそれを利用できるかもしれません。

于 2009-04-14T16:20:47.433 に答える
0

作成された一時ファイルの名前は適切ですか (ファイルの実際の名前と一致しているか、意味不明ではないか)。いい名前なら検索できるかも。そうしないと、サイト、フォルダー、ファイル名がわからないと、ファイルに関する追加データがどこかにない限り、できない可能性があります。

于 2009-04-13T17:40:22.990 に答える