社区应用 最新帖子 精华区 社区服务 会员列表 统计排行 社区论坛任务 迷你宠物
  • 2819阅读
  • 1回复

VC编程改造IE浏览

级别: 终身会员
发帖
3743
铜板
8
人品值
493
贡献值
9
交易币
0
好评度
3746
信誉值
0
金币
0
所在楼道
自从微软捆绑了IE以后,网虫们便注定了要永远地面对那一成不变的微软模式:窗口、按钮和www.microsoft.com网站,从用户的角度,我们希望能够拥有自己特色的IE;从商业运作角度,商人希望无处不有他们公司的宣传信息,希望IE一经运行便可自动进入他们的网站。下面笔者介绍一种用VC6编程,通过修改注册表来改变IE面貌的方法。 Fb.wm   
MT}9T  
VC修改注册表的方法与函数  iCa#OQ  
注册表是由树干和键组成的,对注册表的修改便是对键的修改。 05$CIS>!  
首先,要对键修改需先得到要修改键的句柄,VC中为键打开一个句柄,可采用的函数为LONG RegOpenKey命令;然后才能对键进行修改,用SetRegValue命令;最后需要释放得到的键句柄,用RegCloseKey(hResult)命令。 7'CdDB6&.  
!-p5j3A4L  
通过修改注册表实现IE换貌 :[,-wZiT~6  
我们都知道,在注册表中,IE的主要设置内容在键HKEY_CURRENT_USER 下面的Software\\Microsoft\\Internet Explorer中,例如,我们想对IE的启动初始访问页进行定义修改,便可以把Software\\Microsoft \\Internet Explorer\\Main下的“Start Page”设置为需要的网址,如“www.ccidnet.com”。另外通过修改键HKEY_CURRENT_USER和键HKEY_LOCAL_MACHINE 下面的Software \\Microsoft\\Internet Explorer\\Toolbar里“BackBitmap”和“BackBitmapIE5”的值,即可加入用户特定的背景图案。我们通过以下代码可实现对IE的改造: void CJhfDlg::OnAddAddress() RQ!kVM@  
<U$x')W  
  { Qne@Vf kA  
t#=W'HyW8  
   if(AddressNum==0){ /Rf:Z.L  
4ba[*R2  
  AfxMessageBox("没有可应用的选项!"); ;y/&p d+  
xN'$ Yh  
   return; -QN1= G4  
3fM8W> *7  
   } yX0n yhq  
BF b<"!Y  
   CString address; `1{Y9JdQ  
QVJq%P  
   int sel=m_address1.GetCurSel(); #p*D.We  
TD!--l*gL  
   if(LB_ERR ==sel){ e];lDa#4-Y  
&N:Iirg  
  AfxMessageBox("请先选中要应用的选项!"); Py y!B  
;G.5.q[A  
   return; T\?$7$/V  
0Ta&o-e  
   } \| &KD  
vJ9I z  
   m_address1.GetText(sel,address); . |%n"{  
R-LMV  
  //取得所需加入的网址字符串 xsu9DzPf&{  
& %A&&XT9  
   CString strKey="Software\\Microsoft\\Internet Explorer\\Main"; ,cE yV74  
`Y O(C<r-  
   HKEY hResult; @QteC@k  
{ppzg`G\  
  RegOpenKey(HKEY_CURRENT_USER,(LPCTSTR)strKey,&&hResult); /9ctmW1!<  
;`Nh@*_  
  //得到欲修改键的句柄 iR?}^|]  
z_93j3 #  
   SetRegValue(HKEY_CURRENT_USER,strKey,"Start Page",address); e[ yN  
(Zg'])  
   RegCloseKey(hResult); UodBK7y  
aD]! eP/)  
  //修改注册表相应的值并释放键句柄 ZtyDip'x  
Jvc:)I1NE7  
  } Y<L35 ?  
m< H{@ZgN(  
  2.给工具条指定用户特定的背景图案 m8@&-,T   
KpA1Ac)T  
  void CJhfDlg::OnAddBackGround() <O5WY37"q  
e:%|.$4OG  
  { b9-IrR4h  
Mg #yl\v  
   if(PictureNum==0){ 8EI9&L>  
4 km^S9  
  AfxMessageBox("没有可应用的选项!"); Q$uv \h;  
JIhEkY  
   return; >H^#!eaqw  
|lt]9>|  
   } !_vxbfZO  
dvZH~mF  
   CString picture; rtS' 90`  
Y{D%v  
   int sel=m_PicList.GetCurSel(); 3pg=9*{  
0z'GN#mT5  
   if(LB_ERR ==sel){ H4s~=iB  
9.8%Iw  
   AfxMessageBox("请先选中要应用的选项!"); t;BUZE_!0c  
;-6-DEL  
   return; 4vEP\E3u<j  
B*N1)J\5  
   } sxsb)a  
_bGkJ=  
   m_PicList.GetText(sel,picture); SRwD`FF  
Nai5!_'  
  //取得所需加入背景图案文件路径 gs5(~YiT6  
qT48Y  
   CString strKey="Software\\Microsoft\\Internet Explorer\\Toolbar"; =}vT>b  
1>"-!ADm  
   HKEY hResult; 6|zhqb|s  
K#YQB3rX  
   RegOpenKey(HKEY_CURRENT_USER,(LPCTSTR)strKey,&&hResult); `PC9t)%.pV  
7 !$[XD  
   //得到欲修改键的句柄 CuWJai:nQ;  
&^r>Q`u  
   SetRegValue(HKEY_CURRENT_USER,strKey,"BackBitmapIE5",picture); gxN>q4z  
51SmoFbMz  
   SetRegValue(HKEY_CURRENT_USER,strKey,"BackBitmap",picture); Ut;`6t  
G18w3BFx  
   RegCloseKey(hResult); }5-w,m{8/  
GC{M"q|_  
  //修改注册表相应的值并释放键句柄 KNUK]i&L  
{drc}BL_  
   RegOpenKey(HKEY_LOCAL_MACHINE,(LPCTSTR)strKey,&&hResult); /' + >/  
L=l&,ENy  
  //得到欲修改键的句柄 Ks-$:~?5":  
"j@\a)a  
   SetRegValue(HKEY_LOCAL_MACHINE,strKey,"BackBitmapIE5",picture); ;f[lq^eV  
$"r9U|6kk  
   SetRegValue(HKEY_LOCAL_MACHINE,strKey,"BackBitmap",picture); <Dd>- K  
2;8m0+tl  
   RegCloseKey(hResult); f8Iddm#  
Mfj82rHg  
  //修改注册表相应的值并释放键句柄 A*EOn1hN  
FEaT}/h;  
  } x4oWZEd  
UFG_ZoD+  
j]Jgz<  
以上只是从几个简单的方面演示了VC下通过修改注册表的方法实现为IE换貌。读者可以根据以上的代码进行更个性化的修改,以实现真正意义上的个性化IE。
评价一下你浏览此帖子的感受

精彩

感动

搞笑

开心

愤怒

无聊

灌水
级别: 店掌柜
发帖
5692
铜板
103378
人品值
1520
贡献值
26
交易币
0
好评度
5373
信誉值
0
金币
0
所在楼道

只看该作者 1 发表于: 2006-06-09
用工具弄过...

简单生活
执著追求
别笑我浅溥,天真的以为用一腔真诚就能感动这个冷漠的世界。
也别说我幼稚,竟想用不长的人生去诠释繁杂的红尘。
然而除了真诚,我还能给你什么,的确我真的一无所有!

描述
快速回复

您目前还是游客,请 登录注册
如果您提交过一次失败了,可以用”恢复数据”来恢复帖子内容
认证码:
验证问题:
3+5=?,请输入中文答案:八 正确答案:八