ADSI / Timeout / MkParseDisplayName

Hi,

I've got a problem with ADSI and most likely timeouts.

When I run the following code (which on purpose contains a typo in the
Object-Name) it takes MkParseDisplayName about 2.5 minutes to return with
the error code. Is this a normal behaviour? Is there a way to make
MkParseDisplayName return in less time (system/com/registry/iis settings?).
If MkParseDisplayName is successful it returns straight away.

Thanks for any help in advance!

Philip

Example (I'm using Delphi 5.0 Prof, WindowsNT Server 4.0 (SP5), ADSI 2.5,
IIS 4.0 (NT Option Pack):

...
var
  WebService: IADsContainer;
begin
  // Takes about 150 seconds to return (due to typo (localhoost))
  if GetObject('IIS://localhoost/w3svc', IID_IADsContainer, WebService) <>
S_OK then
    ShowMessage('Oh well...');

// Credit goes to Rob Lans for this code, thanks!
function TFormMain.GetObject(ObjectName: string; IID: TGUID; out Obj):
HResult;
var
  BindCtx: IBindCtx;
  Moniker: IMoniker;
  chEaten: integer;
  s: POleStr;
begin
  // clear out parameters
  Pointer(Obj) := nil;

  // create default binding context
  Result := CreateBindCtx(0, BindCtx);
  if Failed(Result) then Exit;

  s := StringToOleStr(ObjectName);
  try
    // let COM parse the string and create a moniker
    Result := MkParseDisplayName(BindCtx, s, chEaten, Moniker);
    if Failed(Result) then Exit;
  finally
    SysFreeString(s);
  end;
  // we have a moniker: bind it to the resulting object
  Result := Moniker.BindToObject(BindCTx, nil, IID, Obj);
end;