#1
  1. Contributing User
    Devshed Newbie (0 - 499 posts)

    Join Date
    Jun 2003
    Location
    Italy
    Posts
    63
    Rep Power
    12

    Internet Explorer Toolbar


    Hi, any tutorials/examples about how the IE toolbars could be made? Or maybe the example of any app that searches in the webengines and reports the results in the app? Examples for Delphi 6 or greater if it's possible thanks in advance!
  2. #2
  3. Banned ;)
    Devshed Supreme Being (6500+ posts)

    Join Date
    Nov 2001
    Location
    Woodland Hills, Los Angeles County, California, USA
    Posts
    9,643
    Rep Power
    4248
    Up the Irons
    What Would Jimi Do? Smash amps. Burn guitar. Take the groupies home.
    "Death Before Dishonour, my Friends!!" - Bruce D ickinson, Iron Maiden Aug 20, 2005 @ OzzFest
    Down with Sharon Osbourne

    "I wouldn't hire a butcher to fix my car. I also wouldn't hire a marketing firm to build my website." - Nilpo
  4. #3
  5. Contributing User
    Devshed Newbie (0 - 499 posts)

    Join Date
    Jun 2003
    Location
    Italy
    Posts
    63
    Rep Power
    12
    i saw that one, but it creates the lateral toolbar, and i need the one like google :S plus it isn't compatible with my delphi 7 enterprise (IE5Tools for Delphi 4/5)
    Last edited by ChromeX; May 6th, 2004 at 07:55 AM.
  6. #4
  7. Banned ;)
    Devshed Supreme Being (6500+ posts)

    Join Date
    Nov 2001
    Location
    Woodland Hills, Los Angeles County, California, USA
    Posts
    9,643
    Rep Power
    4248
    There was a link on that site to this page:
    http://www.euromind.com/iedelphi/ie5...andobjects.htm

    which does create a bar like Google.

    Dunno if it is compatible with Delphi 7, cuz I wrote mine way back before Google (or just about anyone else) wrote a toolbar. Try it out and see if it works still.
    Up the Irons
    What Would Jimi Do? Smash amps. Burn guitar. Take the groupies home.
    "Death Before Dishonour, my Friends!!" - Bruce D ickinson, Iron Maiden Aug 20, 2005 @ OzzFest
    Down with Sharon Osbourne

    "I wouldn't hire a butcher to fix my car. I also wouldn't hire a marketing firm to build my website." - Nilpo
  8. #5
  9. Contributing User
    Devshed Newbie (0 - 499 posts)

    Join Date
    Jun 2003
    Location
    Italy
    Posts
    63
    Rep Power
    12
    Shdocvw_tlb not found while trying to build the project... do you know where to get it from?
  10. #6
  11. No Profile Picture
    Registered User
    Devshed Newbie (0 - 499 posts)

    Join Date
    Jul 2004
    Posts
    1
    Rep Power
    0

    Smile


    ChromeX : To make the toolbar work in Delphi 7 change "Shdocvw_tlb" to "Shdocvw"... I did this and it works in D7.
  12. #7
  13. Contributing User
    Devshed Newbie (0 - 499 posts)

    Join Date
    Jul 2003
    Location
    europe
    Posts
    274
    Rep Power
    0
    hi friends,

    i also tried this toolbar and got this Erorr while running.

    Cannot debug project unless a host application is defined. Use the Run/Paramaters... dialagbox.


    this is what i got, how to go with this? any help please...

    -stagy
    hmm...
  14. #8
  15. Banned ;)
    Devshed Supreme Being (6500+ posts)

    Join Date
    Nov 2001
    Location
    Woodland Hills, Los Angeles County, California, USA
    Posts
    9,643
    Rep Power
    4248
    Read the instructions in the comments in _DelphiBand.pas (scroll down a bit to see them).
    Up the Irons
    What Would Jimi Do? Smash amps. Burn guitar. Take the groupies home.
    "Death Before Dishonour, my Friends!!" - Bruce D ickinson, Iron Maiden Aug 20, 2005 @ OzzFest
    Down with Sharon Osbourne

    "I wouldn't hire a butcher to fix my car. I also wouldn't hire a marketing firm to build my website." - Nilpo
  16. #9
  17. Contributing User
    Devshed Newbie (0 - 499 posts)

    Join Date
    Jul 2003
    Location
    europe
    Posts
    274
    Rep Power
    0
    Hello thanks for your answer,
    how ever i cant fix the problem.
    im new to delphi so please tell me what to do exactly!
    i have this code at the bottom of DelphiBand.pas.

    Code:
    procedure TDelphiBandFactory.UpdateRegistry(Register: Boolean);
    begin
      inherited UpdateRegistry(Register);
      if Register then AddKeys else RemoveKeys;
    end;
    
    procedure TDelphiBandFactory.AddKeys;
    var S: string;
    begin
      S := GUIDToString(CLSID_DelphiBand);
      with TRegistry.Create do
      try
    
    // http://support.microsoft.com/support/kb/articles/Q247/7/05.ASP   ->
        if BandType <> DeskBand then
        begin
          DeleteKey('Software\Microsoft\Windows\CurrentVersion\Explorer\Discardable\PostSetup\Component Categories\' + VerticalBand + '\Enum');
          DeleteKey('Software\Microsoft\Windows\CurrentVersion\Explorer\Discardable\PostSetup\Component Categories\' + HorizontalBand + '\Enum');
        end;
    
        RootKey := HKEY_CLASSES_ROOT;
        if OpenKey('CLSID\' + S, True) then
        begin
          WriteString('', '&Delphi Band');
          CloseKey;
        end;
        if OpenKey('CLSID\' + S + '\InProcServer32', True) then
        begin
          WriteString('ThreadingModel', 'Apartment');
          CloseKey;
        end;
        if OpenKey('CLSID\' + S + '\Implemented Categories\' + BandType, True)
          then CloseKey;
        if Toolband then begin
          RootKey := HKEY_LOCAL_MACHINE;
          if OpenKey('SOFTWARE\Microsoft\Internet Explorer\Toolbar', True) then
          begin
            WriteString(S, '');
            CloseKey;
          end;
        end;
      finally
        Free;
      end;
    end;
    
    procedure TDelphiBandFactory.RemoveKeys;
    var S: string;
    begin
      S := GUIDToString(CLSID_DelphiBand);
      with TRegistry.Create do
      try
        RootKey := HKEY_CLASSES_ROOT;
    
        // http://support.microsoft.com/support/kb/articles/Q214/8/42.ASP ->
        if BandType = DeskBand then
          DeleteKey('Component Categories\' + DeskBand + '\Enum');
    
        DeleteKey('CLSID\' + S + '\Implemented Categories\' + BandType);
        DeleteKey('CLSID\' + S + '\InProcServer32');
        DeleteKey('CLSID\' + S);
        Closekey;
        if ToolBand then begin
          RootKey := HKEY_LOCAL_MACHINE;
          OpenKey('Software\Microsoft\Internet Explorer\Toolbar', FALSE);
          DeleteValue(s);
          CloseKey;
        end;
      finally
        Free;
      end;
    end;
    
    initialization
      TDelphiBandFactory.Create(ComServer, TDelphiBand, CLSID_DelphiBand, '', Caption, ciMultiInstance);
    end.
    i dont know what to change here,
    please help

    thanks
    -stagy
    hmm...
  18. #10
  19. No Profile Picture
    Registered User
    Devshed Newbie (0 - 499 posts)

    Join Date
    Oct 2004
    Posts
    1
    Rep Power
    0
    Originally Posted by stage_watchman
    Hello thanks for your answer,
    how ever i cant fix the problem.
    im new to delphi so please tell me what to do exactly!
    i have this code at the bottom of DelphiBand.pas.

    Code:
    procedure TDelphiBandFactory.UpdateRegistry(Register: Boolean);
    begin
      inherited UpdateRegistry(Register);
      if Register then AddKeys else RemoveKeys;
    end;
    
    procedure TDelphiBandFactory.AddKeys;
    var S: string;
    begin
      S := GUIDToString(CLSID_DelphiBand);
      with TRegistry.Create do
      try
    
    // http://support.microsoft.com/support/kb/articles/Q247/7/05.ASP   ->
        if BandType <> DeskBand then
        begin
          DeleteKey('Software\Microsoft\Windows\CurrentVersion\Explorer\Discardable\PostSetup\Component Categories\' + VerticalBand + '\Enum');
          DeleteKey('Software\Microsoft\Windows\CurrentVersion\Explorer\Discardable\PostSetup\Component Categories\' + HorizontalBand + '\Enum');
        end;
    
        RootKey := HKEY_CLASSES_ROOT;
        if OpenKey('CLSID\' + S, True) then
        begin
          WriteString('', '&Delphi Band');
          CloseKey;
        end;
        if OpenKey('CLSID\' + S + '\InProcServer32', True) then
        begin
          WriteString('ThreadingModel', 'Apartment');
          CloseKey;
        end;
        if OpenKey('CLSID\' + S + '\Implemented Categories\' + BandType, True)
          then CloseKey;
        if Toolband then begin
          RootKey := HKEY_LOCAL_MACHINE;
          if OpenKey('SOFTWARE\Microsoft\Internet Explorer\Toolbar', True) then
          begin
            WriteString(S, '');
            CloseKey;
          end;
        end;
      finally
        Free;
      end;
    end;
    
    procedure TDelphiBandFactory.RemoveKeys;
    var S: string;
    begin
      S := GUIDToString(CLSID_DelphiBand);
      with TRegistry.Create do
      try
        RootKey := HKEY_CLASSES_ROOT;
    
        // http://support.microsoft.com/support/kb/articles/Q214/8/42.ASP ->
        if BandType = DeskBand then
          DeleteKey('Component Categories\' + DeskBand + '\Enum');
    
        DeleteKey('CLSID\' + S + '\Implemented Categories\' + BandType);
        DeleteKey('CLSID\' + S + '\InProcServer32');
        DeleteKey('CLSID\' + S);
        Closekey;
        if ToolBand then begin
          RootKey := HKEY_LOCAL_MACHINE;
          OpenKey('Software\Microsoft\Internet Explorer\Toolbar', FALSE);
          DeleteValue(s);
          CloseKey;
        end;
      finally
        Free;
      end;
    end;
    
    initialization
      TDelphiBandFactory.Create(ComServer, TDelphiBand, CLSID_DelphiBand, '', Caption, ciMultiInstance);
    end.
    i dont know what to change here,
    please help

    thanks
    -stagy
    Register your DLL. (Run -> Register ActiveX Server, or from commandline: 'regsvr32 delphiband.dll'):

    enter regsvr32 /u delphiband.dll to unregister

IMN logo majestic logo threadwatch logo seochat tools logo