Hi
if I good understand
IGatherNotify interface is to adding URLs do WDS, is it true
When i'm trying create
IGatherNotify COM obiect I have error "class not registered, ....".
How to register that class or it shouldn't be registered by WDS during instalation
Is it other way to add urls to WDS. (I have my own protocol handler registered... etc.)
Tomasz Rutkowski

IGatherNotify
jpmk12
Stupid me.
but when I have used it as you said: CLSID_CGatherNotify:c731055c-ac80-11d1-8df3-00c04fb6ef4f I have error: not registered. I have opend file srchadm.dll in Microsoft OLE/COM Object Viewer and I found coclass CGatherNotify:
[
uuid(A373F3AB-7B87-11D3-B1C1-00C04F68155C),
helpstring("Gatherer Notification Class")
]
coclass CGatherNotify {
[default] interface IGatherNotify;
};
When I have used that uuid and CoCreateInstance I have IGatherNotify object.
But I have new question(maybe v. simple but I couldn't find answer at msdn):
When I have registered my ProtocolHandler using SearchManager class AddProtocol function with parameters: "SDL","SDL.MessB.1" and have set default url as "SDL://localhost/"
what name of scopes should I use in AddScope function:
"SDL://localhost/scopeX.databaseTableXXX" <-- e.g. for my db tables
"SDL://localhost/scopeX.myfile" <-- e.g. for my own file type stored in db
or "SDL://scopeX.databaseTableXXX" and
"SDL://scopeX.myfile"
What is the correct expression for WDS locations
Tomasz Rutkowski
Helen999888
I have 2.6.6 and I have tried at 3.0(VMWare session) at Windows Server 2003. I have read that IGatherNotify is used to: add/delete/notify-changes in WDS Gather.
Describing my problem:
Index content of special tables from db and my files etc.
I have done:
1. I have implemented Protocol Handler (called "SDL")(ISearchProtocol and ISearchProtocolOptions in one COM object).
2. I have Add it by SearchManager.AddProtocol('SDL','SDL.MessB.1')
I have it registered: WDS see my Protocol and my default URL ("SDL://localhost/") is on the custom location list. WDS is loading my library and calling GetDefaultCrawlScope only! not Init.
And I realy don't know what to do next, how to add my locations to be indexed That's why I try to implement IGatherNotify.
Could you tell me next steps to do next interfaces to implement
Is it correct GIUD of IGatherNotify: "C73105B4-AC80-11D1-8DF3-00C04FB6EF4F" that I've found in SDK.
But in Win registry under the key HKEY_CLASSES_ROOT\RSSearch.GatherNotify\CLSID is that: {A373F3AB-7B87-11D3-B1C1-00C04F68155C}
When I tryed create com object "C73..." has error: not registered
then ' A373...' Interface not supported.
Tomasz Rutkowski
londey
KillerKryptos
But it still doesn't work correctly.
WDS completely do nothing after I run Init("RSApp" "MyIndex") and then AddScope procedure. It doesn't call my protocol handler, and I can't find problem (no errors, no entries in EventLog)
I try (to test) to notify deleting file from File ProtocolHandler as running RemoveScope(TheScope) where TheScope is: "file:///D://Test.xml" I tested: "file://D:/Test.xml" & "file:D:/Test.xml", too.
What is correct value to that "file" scope(file is: d:\Test.xml)
There are Options in try menu:
"Index now" "Indexing status" & value of snooze time. How to set/call it programically
Where can I read more about that becouse at msdn (Topic WDS) there is almost nothing about developing.
Is the Microsoft sample of creating Protocol Handler to WDS 2.6 or 3.0 (not for SharedPoint) with changes notification etc.
Tomasz Rutkowski
AsAnonAsICan
Yes, that CLSID looks correct, but that is the interface off of the CLSID_CGatherNotify:c731055c-ac80-11d1-8df3-00c04fb6ef4f object. You need to CoCreate the CGatherNotify object and ask for the IGatherNotify interface. Example:
CComPtr<IGatherNotify> cpGatherNotify;
hr = CoCreateInstance( CLSID_CGatherNotify,
NULL,
CLSCTX_SERVER,
__uuidof(IGatherNotify), // IID_IGatherNotify
(void **)&cpGatherNotify);