●那位大哥能救救我呀,如何让我写的IEHELPER只在启动IE的时候加载,启动文件浏览器什么的不加载

解决方案 »

  1.   

    ●那位大哥能救救我呀,如何让我写的IEHELPER只在启动IE的时候加载,启动文件浏览器什么的不加载
      

  2.   

    ●那位大哥能救救我呀,如何让我写的IEHELPER只在启动IE的时候加载,启动文件浏览器什么的不加载
      

  3.   

    判断url,是about;blank或http;\\就是启动IE,else 为文件浏览器
      

  4.   

    我也是判断Url,文件浏览器本来跟IE就是一体的`~procedure DoBeforeNavigate2(const pDisp: IDispatch; var URL: OleVariant; var Flags: OleVariant; var TargetFrameName: OleVariant; var PostData: OleVariant; var Headers: OleVariant; var Cancel:  WordBool);
    var
      UrlEnable :boolean;
      TempURL :string;
    begin
      TempURL :=URL;  if not CheckUrl(TempURL) then exit;
      
      UrlEnable :=false;
      if Pos(LowerCase('szwnx.com'), LowerCase(TempURL))>0 then UrlEnable :=true ;
      if Pos(LowerCase('szgky.com'), LowerCase(TempURL))>0 then UrlEnable :=true ;  if not UrlEnable then
      begin
        MsShow('受限制的站点,请与管理员联系!');
        Cancel:=True;
        URL:='http://www.163.com';
        (pDisp as IWebbrowser2).Navigate2(URL,Flags,TargetFrameName,PostData,Headers);
      end;
    end; 
    function CheckUrl(Url: String): boolean;
    var
      hSession, hfile, hRequest: hInternet;
      dwindex, dwcodelen: dword;
      dwcode: array[1..20] of Char;
      res: PChar;
    Begin
      Result :=false;
      if Pos('http://', LowerCase(Url)) = 0 then  Url := 'http://' + Url;
      hSession := InternetOpen('InetURL:/1.0', INTERNET_OPEN_TYPE_PRECONFIG,
        nil, nil, 0);
      if Assigned(hsession) then
      begin
        hfile := InternetOpenUrl(hsession, PChar(Url), nil, 0, INTERNET_FLAG_RELOAD, 0);
        dwIndex := 0;
        dwCodeLen := 10;
        HttpQueryInfo(hfile, HTTP_QUERY_STATUS_CODE, @dwcode, dwcodeLen, dwIndex);
        res := PChar(@dwcode);
        Result := (res = '200') or (res = '302'); //200,302未重定位标志
        if Assigned(hfile) then
          InternetCloseHandle(hfile);
        InternetCloseHandle(hsession);
      end;
    end;
      

  5.   

    楼上那位大哥,您的程序在XP能运行吗,我写了一段和你类似的程序,在2000下能运行,可在xp下不能运行,请指教