コントロールへの接続を拡張する
他のクライアントも使用できるように、[Connect To…] メニューの項目を拡張することができます。
[ Connect To] メニューの項目にアクセスするには、ActiveX コントロールを作成し、メニューにコントロールの場所を通知します。
[接続先] メニュー項目の拡張
クライアント アプリケーションにメニュー項目を表示するには、以下の 2 つの手順を実行する必要があります。
Stssync プロトコル プロトコル ハンドラを登録します。stssync プロトコルを使用して、Windows SharePoint Services サイト上にあるイベント リストまたは連絡先リストを Office Outlook 2003、Office Outlook 2007、またはこのプロトコルをサポートしているサードパーティ製のアプリケーションに追加することができます。
アプリケーション名およびアイコン ファイル名を返す ActiveX コントロールをインストールします。
ActiveX コントロールには、SharePoint.Stssynchandler.3 の ProgID を含める必要があります。また、この ActiveX には次のメソッドを実装する必要があります。
HRESULT GetStssyncAppNameForType([in] BSTR pbstrType, [out, retval] BSTR *pbstrAppName);
HRESULT GetStssyncIconName([out, retval] BSTR *pbstrIconName);
メニュー項目が表示される前に、Windows SharePoint Services によって ActiveX コントロール内の GetStssyncAppNameForType() メソッドが呼び出され、現在のリストの同期型が渡されます。各リストには、その基本型、べース テンプレート、および、コンテンツ タイプを指定できるかどうかに基づく既定の同期型があります (オブジェクト モデルの SPList.SyncType でアクセスされます)。この型は、リスト テンプレート定義の属性として上書きされる可能性があります。
通常、ActiveX コントロールによって、サポートされている型のリストに照らして同期型が確認され、メニュー項目が表示されるアプリケーションの名前が返されます。型がサポートされていない場合、つまり、メニュー項目が表示されない場合には、NULL が返されます。
NULL 以外のアプリケーション名が返された場合は、Windows SharePoint Services によって、コントロールの GetStssyncIconName() メソッドが呼び出され、メニュー項目に表示されるアイコンのファイル名が取得されます。返されるファイル名は、ドキュメント ライブラリ フォルダのコンテキスト メニューで使用されます。また、ファイル名には「menu」というプレフィックスが追加され、ツールバーのメニュー項目で使用されるイメージが取得されます。このため、クライアントは、各 Windows SharePoint Services Web フロントエンド サーバーのイメージ パスに 2 つのイメージをインストールする必要があります。たとえば、ファイル名が「sample」の場合、ファイル名は sample.gif および menusample.gif となります。
ブラウザで Active X がサポートされていない場合は、[接続先] メニューは既定のアイコンと共に表示されます。また、stssync プロトコルがサポートされていると考えられます。
ボタンをクリックすると、JavaScript によって、ブラウザが stssync:// URL (正しいコンテキスト パラメータ) にリダイレクトされます。URL の形式は次のようになります。
stssync://sts/?ver=1.1&type=Type&cmd=add-folder&base-url=WebUrl&list-url=ListUrl&guid=ListId&site-name=SiteName&list-name=ListName
種類 |
このリストの同期型 |
---|---|
ListId |
リストの識別子。GUID として表されます。 |
ListName |
リストのタイトル。最大長は 20 文字です。 |
ListUrl |
エンコードされた、リストへの Web 相対 URL (「/」で開始、終了)。 |
SiteName |
リストが見つかった Web サイトのタイトル。最大長は 20 文字です。 |
ViewUrl |
エンコードされた、リストの既定ビュー ページへの Web 相対 URL (「/」で開始)。 |
WebUrl |
リストが見つかった Web サイトへの、エンコードされた絶対 URL。 |
ドキュメント ライブラリでは、フォルダの同期時に、stssync:// URL の最後に次の 2 つのパラメータを追加することができます。
&folder-url=FolderUrl&folder-id=FolderId
FolderUrl - エンコードされていない、コンテキスト フォルダへの Web 相対 URL (「/」で開始)
FolderId - コンテキスト フォルダのアイテム ID (整数)
See Also
参照
ブラウザ サポートを計画する (Windows SharePoint Services)