Getting Started

Aug 23, 2008 at 7:04 AM
I'm just getting started on a protocol handler, and this project so far is a great resource.  However, I'm having an issue gettting the initial install functioning.

First - I'm attempting to install MOSSPH into Microsoft Search Server 2008 Express.  Is this supported?

I've compiled the source, verified everything was registerd with COM Interop, added a string value to the registry under:

  HKLM\Software\Microsoft\Office Server\12.0\Search\Setup\ProtocolHandlers
      MOSSPH = MOSSPH.ProtocolHandler

and then ran this command line to install the content source (from the CSInstall source):
  CSInstall.exe /i /siteName:http://wssdev /url:MOSSPH://wssdev /displayName:"My Content Source"

After this, the "My Content Source" does appear in the Content Sources, but when I attempt a full crawl, it terminates immediately, with no crawl log output.

Am I missing a step to getting this installed?

As for the intended use, I plan to connect to a database and index specific tables.  Does anyone have examples they would like to share?

Sep 15, 2008 at 10:22 AM

I've got the exactly same problem.  The content source appears in the Content Sources, but crawl terminates immediately. I’m planning to crawl an external case/document system.

Does this PH support Microsoft Search Server 2008 (express)?



Sep 19, 2008 at 2:14 PM

Here are some checklist items you might want to look at. These are based on my own experience and might be wrong :)

  1. Have you added a crawl rule for your URI (e.g. include mossph://*)?
  2. Is your Office SharePoint Server Search service running with enough privileges? The protocol handler tries to create a performance counter in ProtocolHandler.cs. You may need to run your search service under a different account, at least to start with. Personally, I think the performance counter creation would be better done in the CSInstaller project.
  3. Try setting ExtExclusionsUsed to 0 in the registry if your content source won't be providing URIs that end with known file extensions, otherwise the gatherer will ignore your content. See

You might find it useful to add a Thread.Sleep(20000) to the start of ProtocolHandler::Init(...) and add a breakpoint just after. That gives you time to start a full crawl and attach Visual Studio to mssdmn.exe so you can step through the initialisation.

Best of luck, and let us know how you get on.

Sep 22, 2008 at 6:19 PM
I had the same problem, but solved it by rebooting. Apparently, the registration wasn't picjed up until I rebooted.
Sep 23, 2008 at 8:21 PM
Just to followup - I did get this work okay.  It took a bit of twidling, but I believe the restart of the search service did the trick.

And just to be clear, this PH will work with Search Server Express.

All - Thanks the help!
Nov 10, 2008 at 8:19 AM
Edited Nov 10, 2008 at 8:20 AM
Posted in error...