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

VC编程改造IE浏览

级别: 终身会员
发帖
3743
铜板
8
人品值
493
贡献值
9
交易币
0
好评度
3746
信誉值
0
金币
0
所在楼道
自从微软捆绑了IE以后,网虫们便注定了要永远地面对那一成不变的微软模式:窗口、按钮和www.microsoft.com网站,从用户的角度,我们希望能够拥有自己特色的IE;从商业运作角度,商人希望无处不有他们公司的宣传信息,希望IE一经运行便可自动进入他们的网站。下面笔者介绍一种用VC6编程,通过修改注册表来改变IE面貌的方法。 ^/R@bp#<  
BmUEo$w  
VC修改注册表的方法与函数 KK]AX;  
注册表是由树干和键组成的,对注册表的修改便是对键的修改。 7* ^\mycv  
首先,要对键修改需先得到要修改键的句柄,VC中为键打开一个句柄,可采用的函数为LONG RegOpenKey命令;然后才能对键进行修改,用SetRegValue命令;最后需要释放得到的键句柄,用RegCloseKey(hResult)命令。 sx8mba(  
n_v c}ame  
通过修改注册表实现IE换貌 '. atbl  
我们都知道,在注册表中,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() WKBPqfC  
gU>Y  
  { a%ec: %  
7H[#  
   if(AddressNum==0){ n5UcivyX  
(W3R3>;  
  AfxMessageBox("没有可应用的选项!"); abD55YJY  
0Qw?.#[9  
   return; =DE5 Wq19  
Ym& _IOx  
   } @Qruc\_  
;#/b=j\pi  
   CString address; l/LRr.x  
ezwcOYMXK  
   int sel=m_address1.GetCurSel(); h'UWf"d  
E(8!VY ^  
   if(LB_ERR ==sel){ FO3!tJ\L  
z^~uq:  
  AfxMessageBox("请先选中要应用的选项!"); S_c#{4n  
peGXU/5.I  
   return; +?MjY[8j  
BEPDyy  
   } j/9FiuK  
Podm 3b  
   m_address1.GetText(sel,address); +qpD>5#  
~ ;)@a  
  //取得所需加入的网址字符串 $g#X9/+<  
.eZ4?|at.F  
   CString strKey="Software\\Microsoft\\Internet Explorer\\Main"; ,2H5CFX/  
OD>-^W t;%  
   HKEY hResult; ; {I{X}b  
rVQ:7\=Z  
  RegOpenKey(HKEY_CURRENT_USER,(LPCTSTR)strKey,&&hResult); JEY%(UR8  
sF_.9G)S0  
  //得到欲修改键的句柄 "TtK!>!.  
Gpe h#Q4x  
   SetRegValue(HKEY_CURRENT_USER,strKey,"Start Page",address); QHMXQyr(  
mg'-]>$$]  
   RegCloseKey(hResult); 3zWY%(8t4?  
j(nPWEyJM  
  //修改注册表相应的值并释放键句柄 DKIDLf  
 +tfmBZl^  
  } b)@D*plS&  
$C#~c1w  
  2.给工具条指定用户特定的背景图案 ^_5$+  
-Rjn<bTIy  
  void CJhfDlg::OnAddBackGround() ~ D3'-,n[  
]3 0 7 .  
  { sS5#Q  
nkN]z ^j  
   if(PictureNum==0){ =5dv38  
XFK$p^qu  
  AfxMessageBox("没有可应用的选项!"); \iowAo$  
woR((K] #G  
   return; Q:_pW<^  
RG*Nw6A  
   } s%4)}w;z  
.fo.mC@a  
   CString picture; YqNhD6  
CoJaVLl  
   int sel=m_PicList.GetCurSel(); \,p)  
+qsdA#2  
   if(LB_ERR ==sel){ webT  
1+#Vj#  
   AfxMessageBox("请先选中要应用的选项!");  PJk Mn  
|C>Yd*E,C  
   return; H7qda' %>  
VJ_E]}H  
   } rK=[&k  
rX;(48Y  
   m_PicList.GetText(sel,picture); X$JKEW;0BP  
2vj)3%:7#E  
  //取得所需加入背景图案文件路径 d9Rj-e1x  
vNE91  
   CString strKey="Software\\Microsoft\\Internet Explorer\\Toolbar"; %K ]u"  
8(Z*Vz uu  
   HKEY hResult; zac>tXU;  
9SAyU%mS:  
   RegOpenKey(HKEY_CURRENT_USER,(LPCTSTR)strKey,&&hResult); Pq7YJ"Z?:  
LgUaX  
   //得到欲修改键的句柄 !\|&E>Gy  
XHpoaHyx  
   SetRegValue(HKEY_CURRENT_USER,strKey,"BackBitmapIE5",picture); -pqShDar|  
'Iu$4xo`[  
   SetRegValue(HKEY_CURRENT_USER,strKey,"BackBitmap",picture); xO?~@5  
*vBcT.|,  
   RegCloseKey(hResult); zI7-xqZ  
{_(;&\5  
  //修改注册表相应的值并释放键句柄 MIt\[EB  
,dh*GJ{5  
   RegOpenKey(HKEY_LOCAL_MACHINE,(LPCTSTR)strKey,&&hResult); 00b )Bg  
:O//A6 v  
  //得到欲修改键的句柄 s/,St!A 4!  
/}M@ @W  
   SetRegValue(HKEY_LOCAL_MACHINE,strKey,"BackBitmapIE5",picture);  ZfvFs  
uE5kL{Fv  
   SetRegValue(HKEY_LOCAL_MACHINE,strKey,"BackBitmap",picture); rxa8X wo8  
_HGDqj L  
   RegCloseKey(hResult); hrcR"OZ~X  
i$og v2J  
  //修改注册表相应的值并释放键句柄 .4KXe"~E  
~=0zZTG  
  } 4|++0=#D$  
/5yW vra  
;! CQFJ=  
以上只是从几个简单的方面演示了VC下通过修改注册表的方法实现为IE换貌。读者可以根据以上的代码进行更个性化的修改,以实现真正意义上的个性化IE。
评价一下你浏览此帖子的感受

精彩

感动

搞笑

开心

愤怒

无聊

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

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

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

描述
快速回复

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