Extending the Connect To Control
Last modified: May 01, 2010
Applies to: SharePoint Foundation 2010
The "Connect To…" menu item is extensible so that any client can make use of it.
How do you connect the Connect To menu item? Create your ActiveX control and then let the menu know its there.
Client applications must perform two steps in order for the menu item to be displayed:
Register the Stssync Protocol protocol handler. The stssync protocol enables you to add an Events list or a Contacts list that exists on a SharePoint Foundation site to Office Outlook 2003, Office Outlook 2007, or to a third-party application that supports the protocol.
Install an ActiveX control that returns the application name and an icon file name.
The ActiveX control must have a ProgID of SharePoint.Stssynchandler.3 and it must implement the following methods:
HRESULT GetStssyncAppNameForType([in] BSTR pbstrType, [out, retval] BSTR *pbstrAppName); HRESULT GetStssyncIconName([out, retval] BSTR *pbstrIconName);
Before displaying the menu item, SharePoint Foundation calls the GetStssyncAppNameForType() method in the ActiveX control and passes the synchronization type of the current list. Each list has a default synchronization type (accessed in the object model at SPList.SyncType) based on its base type, base template, and whether it allows content types. This type can be overridden as an attribute of the list template definition in a feature.
Typically, the ActiveX control checks the synchronization type against a list of supported types and returns the name of the application where the menu item is displayed, or returns NULL if the type is not supported – in which case the menu item is not displayed.
If a non-null application name is returned, SharePoint Foundation then calls the GetStssyncIconName() method of the control to get the file name of an icon to display in the menu item. The file name returned is used in the context menu for document library folders, while the "menu" prefix is added to the file name to get the image that is used in the toolbar menu item. Thus, clients should install two images in the images path of each SharePoint Foundation Web front-end server. For example, if the filename were'sample' the names would be sample.gif and menusample.gif.
If the browser does not support Active X, the "Connect To…" menu is displayed with a default icon and you can assume that the stssync protocol is supported.
Synchronization type for this list
List identifier, expressed as a GUID.
Title of the list; maximum length is 20 characters.
A web-relative encoded URL (starting and ending with /) to the list.
Title of the Web site where the list is found; maximum length is 20 characters.
A web-relative encoded URL (starting with /) to the default view page of the list.
An absolute encoded URL to the Web site where the list is found.
Document libraries may add two parameters to the end of the stssync:// URL when syncing a folder:
FolderUrlA web-relative, unencoded URL (starting with /) to the context folder
FolderIdThe item ID (an integer) of the context folder