如题,不要其他的信息,只要URL,请各位高手指教

解决方案 »

  1.   

    以下代码保存所有当前打开的网址:
    unit Unit1;interfaceuses
      Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
      StdCtrls, shellapi, ddeman, shdocvw,registry;type
      TForm1 = class(TForm)
        ListBox1: TListBox;
        Button1: TButton;
        Button2: TButton;
        procedure ListBox1DblClick(Sender: TObject);
        procedure Button1Click(Sender: TObject);
        procedure Button2Click(Sender: TObject);
        procedure FormShow(Sender: TObject);
      private
        { Private declarations }
        IEXPLORE:string;
      public
        { Public declarations }
      end;var
      Form1: TForm1;implementation{$R *.DFM}
    procedure TForm1.ListBox1DblClick(Sender: TObject);
    begin
      WinExec(PChar(IEXPLORE+' "'+listbox1.items[listbox1.itemindex]+'"'),SW_NORMAL);
    end;procedure TForm1.Button1Click(Sender: TObject);
    const
      maxx = 30;
    var
      ShellWindow: IShellWindows;
      nCount: integer;
      spDisp: IDispatch;
      i: integer;
      vi: OleVariant;
      IE1: IWebBrowser2;
    begin
      listbox1.clear;
      ShellWindow := CoShellWindows.Create;
      nCount := ShellWindow.Count;
      for i := 0 to nCount - 1 do
      begin
        vi := i;
        try
          spDisp := ShellWindow.Item(vi);
        except
          exit
        end;
        if (spDisp <> nil) then
        begin
          try
            spDisp.QueryInterface(iWebBrowser2, IE1);
          except
            on EAccessViolation do
            begin
              exit
            end;
          end;
          if (IE1 <> nil) then
          begin
            listbox1.items.add(IE1.Get_LocationURL());
          end;
        end;
      end;
      deletefile(extractfilepath(paramstr(0)) + 'Address.d' + inttostr(maxx));
      for i := maxx - 1 downto 0 do
        renamefile(extractfilepath(paramstr(0)) + 'Address.d' + format('%.2d', [i]), 'Address.d' + format('%.2d', [i + 1]));
      listbox1.items.savetofile(extractfilepath(paramstr(0)) + 'Address.d00');
    end;procedure TForm1.Button2Click(Sender: TObject);
    var
      i: integer;
    begin
      for i := 0 to listbox1.items.count - 1 do
      begin
        WinExec(PChar(IEXPLORE+' "'+listbox1.items[i]+'"'),SW_NORMAL);
      end;
    end;procedure TForm1.FormShow(Sender: TObject);
    var
      s: string;
      reg:TRegistry;
    begin
      s := extractfilepath(paramstr(0)) + 'Address.d00';
      if fileexists(s) then
        listbox1.items.loadfromfile(s);
      reg:=TRegistry.create;
      reg.rootkey:=HKEY_LOCAL_MACHINE;
      reg.openkey('Software\Microsoft\Windows\CurrentVersion\App Paths\IEXPLORE.EXE',true);
      IEXPLORE:=reg.ReadString('');
      reg.closekey;
      reg.free;
    end;end.可以参考一下