如电脑中装有好多浏览器,怎么才能只样IE运行,其它的都不允许运行!(100分)

  • 主题发起人 linjifan
  • 开始时间
L

linjifan

Unregistered / Unconfirmed
GUEST, unregistred user!
如电脑中装有好多浏览器,怎么才能只样IE运行,其它的都不允许运行!
 
x:=getSystemDriver;
IeDir:=x+'/program files/IntenetExplorer/InternetEplorer.exe';
shellExecute('open',pchar(ieDIr),pchar(URL),nil,nil);
我以前用过的,比较笨的方法
 
不允许运行的最简便的办法就是把多余的浏览器的 EXE 文件删除。
如果只是默认使用 IE ,只要在选项里定义掉就行。
还有就是监视。发现运行了不希望的浏览器就及时杀死。(不过还是先要把 IE 设为默认)
还有个办法就是把注册表中的相关注册键删除。
 
小雨哥说的有点离谱了,呵呵
 
不不不,一点都不离谱。
你的办法是利用自己的代码启动 IE 。如果执行了别的浏览器的 EXE 文件,IE 不会阻止
它,如果设定默认为别的浏览器,只要一点链接就不是启动 IE 。对不对。但试着执行下
面的代码就可以杀死腾讯浏览器,这个腾讯浏览器就不能打开(其余类似):
------------------------------------------------------------------------------
procedure TForm1.Timer1Timer(Sender: TObject);
function EnumWindowsProc(Wnd: HWnd;lP:lParam): boolean; stdcall;
var
ClsName,WndCapt,Temp:string;
WndCaption: array[0..254] of char;
WndClassName: array[0..254] of char;
begin
GetWindowText(Wnd, @WndCaption, 254);
GetClassName(Wnd, @WndClassName, 254);

ClsName:= StrPas(WndClassName);
WndCapt:=StrPas(WndCaption);
Temp:=Copy(WndCapt,Length(WndCapt)-15,16);
if (ClsName='Afx:400000:0') and (Temp='Tencent Explorer') then
begin
case lp of
0:SendMessage(Wnd, WM_CLOSE, 0, 0); // 客气一点
1:postMessage(Wnd,wm_destroy,0,0); // 没商量
end;
// 这里可以增加启动 IE 的代码。
end;
Result := True;
end;
begin
EnumWindows(@EnumWindowsProc, 0{1});
end;
-----------------------------------------------------------------------------
不过,首先把 IE 设为默认的浏览器的第一要紧的事。
 
我以前装QQ老是跑出来腾讯浏览器
后来装珊瑚虫版什么也就没有类似的问题了
所以小雨哥说得一点没错
对其它玩意一点也不要客气
 
珊瑚虫版是谁做的?
 

Similar threads

S
回复
0
查看
3K
SUNSTONE的Delphi笔记
S
S
回复
0
查看
2K
SUNSTONE的Delphi笔记
S
D
回复
0
查看
920
DelphiTeacher的专栏
D
D
回复
0
查看
2K
DelphiTeacher的专栏
D
D
回复
0
查看
2K
DelphiTeacher的专栏
D
顶部