Not so long ago, I wrote an article showing how to implement custom hyperlinks using asynchronous pluggable protocols. Even if you’re not familiar with APPs, you use them everyday on your PC. Every protocol, whether the more familiar http, ftp or less familiar JavaScript, res, news etc. is implemented on Windows PCs as an asynchronous pluggable protocol which plug directly into Windows’ existing protocol framework. One of the more obscure protocols is res: to view resources in a DLL in Internet Explorer.

MSDN fully describes how to implement custom protocols schemes using pluggable handlers. This allows developers to implement new schemes for IE and applications that use URL monikers. To fully implement a protocol requires a fair bit of work and is really focused on use in IE.

My particular requirement at the time was managing users expectations that custom hyperlinks could be used to integrate an application into the desktop using IE and the Office suite. IE would be pretty easy, but Office? However, as the article explains, it’s possible to hijack the regular hyperlink behavior and piggyback your own. Consequently you can use regular html anchor syntax to implement your own link behavior – in this case my very important protocol vip.

<a href="vip:some custom parameters here">My custom hyperlink</a>

Put this in a Word or Excel document, it’s displayed as a regular link and when the user clicks on it, your protocol handler catches it.

More recently, I was contacted by Eric Lawrence, the program manger of IE, informing me I’d made a mistake in calling this asynchronous pluggable protocols. I’d only really used a side effect of it. However, he did point out that what I had discovered was something called Application Protocols; something they use internally in the IE group.

Despite my smugness in discovering this, it was good to be corrected.