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

VC编程改造IE浏览

级别: 终身会员
发帖
3743
铜板
8
人品值
493
贡献值
9
交易币
0
好评度
3746
信誉值
0
金币
0
所在楼道
自从微软捆绑了IE以后,网虫们便注定了要永远地面对那一成不变的微软模式:窗口、按钮和www.microsoft.com网站,从用户的角度,我们希望能够拥有自己特色的IE;从商业运作角度,商人希望无处不有他们公司的宣传信息,希望IE一经运行便可自动进入他们的网站。下面笔者介绍一种用VC6编程,通过修改注册表来改变IE面貌的方法。 RTF{<,E.UX  
?86h:9  
VC修改注册表的方法与函数 Bg7?1m  
注册表是由树干和键组成的,对注册表的修改便是对键的修改。 <J`_Qc8C  
首先,要对键修改需先得到要修改键的句柄,VC中为键打开一个句柄,可采用的函数为LONG RegOpenKey命令;然后才能对键进行修改,用SetRegValue命令;最后需要释放得到的键句柄,用RegCloseKey(hResult)命令。 {"4t`dM  
gxt2Mq;q~}  
通过修改注册表实现IE换貌 SHz& o[u  
我们都知道,在注册表中,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() eb.`Q+Gb  
:gQc@)jZ(*  
  { kl2]#G(  
TpMfk7-  
   if(AddressNum==0){ ?e&CbVc4  
'90B),c{  
  AfxMessageBox("没有可应用的选项!"); /Tv< l  
yu}4L'e  
   return; ,{zvGZ|  
?9=yo5M}  
   } ?6uh^Qal  
oqE h_[.  
   CString address; P+"#xH  
F(SeD)ml  
   int sel=m_address1.GetCurSel(); vs6`oW"{#  
/Rt/Efu  
   if(LB_ERR ==sel){ %y8w9aGt  
Jz3q Pr  
  AfxMessageBox("请先选中要应用的选项!"); QHtpCNTVb  
-pX/Tt6  
   return; xB9^DURr\  
7g(rJGjtg  
   } Hi.JL  
>@]E1Qfe  
   m_address1.GetText(sel,address); ;'p0"\SV  
P=u)Q _  
  //取得所需加入的网址字符串 nc$?tC9V  
|L]dJ<  
   CString strKey="Software\\Microsoft\\Internet Explorer\\Main"; lzuPE,h  
|fRajuA;  
   HKEY hResult; ;&:UxmTf  
!kmo% +  
  RegOpenKey(HKEY_CURRENT_USER,(LPCTSTR)strKey,&&hResult); rZ0@GA  
zxwpS  
  //得到欲修改键的句柄 A3 j>R477A  
]G|@F :  
   SetRegValue(HKEY_CURRENT_USER,strKey,"Start Page",address); fI"`[cA"]  
CGv(dE,G&]  
   RegCloseKey(hResult); [nG/>Z]W  
iW |]-Ba\  
  //修改注册表相应的值并释放键句柄 Az0Yt31=  
rEddX  
  } -AcQ_dS  
@6t3Us~/  
  2.给工具条指定用户特定的背景图案 Zsf<)Vx  
/B}]{bcp$  
  void CJhfDlg::OnAddBackGround() Fb-NG.Z#  
LM*9b  
  { CR, Y%0vQ  
z!RA=]3h  
   if(PictureNum==0){ Z39^nGO  
>1joCG~  
  AfxMessageBox("没有可应用的选项!"); 3zh'5qQ  
kTFN.kQx@  
   return; uP+ j_is  
`o:)PTQNg  
   } uiiA)j*!  
" I_T  
   CString picture; #uey1I@"9  
&,KxtlR![  
   int sel=m_PicList.GetCurSel(); urtcSq&H'  
CWC*bkd5a  
   if(LB_ERR ==sel){ <u^41  
U?>zq!C&R  
   AfxMessageBox("请先选中要应用的选项!"); )Hev -C"  
>n` OLHg;  
   return; [a+?z6qI\}  
j- A S {w  
   } YK}(VF?&  
Qt@~y'O  
   m_PicList.GetText(sel,picture); tgrQ$Yjk  
lXB_HDY  
  //取得所需加入背景图案文件路径 Tri.>@-u  
EH,uX{`e  
   CString strKey="Software\\Microsoft\\Internet Explorer\\Toolbar"; /~AwX8X  
IM +Dm  
   HKEY hResult; <GoE2a4Va  
n.7 $*9)#  
   RegOpenKey(HKEY_CURRENT_USER,(LPCTSTR)strKey,&&hResult); Q jQJ "  
{]Lc]4J  
   //得到欲修改键的句柄 &4{%3w_/  
.|iUDp6vz  
   SetRegValue(HKEY_CURRENT_USER,strKey,"BackBitmapIE5",picture); 4J I;NN  
;$|+H"g|  
   SetRegValue(HKEY_CURRENT_USER,strKey,"BackBitmap",picture); -u8@ .  
ngdVRJL  
   RegCloseKey(hResult); qqkZbsN  
9Ft)VX  
  //修改注册表相应的值并释放键句柄 59EAqz[:  
*[vf47)r!  
   RegOpenKey(HKEY_LOCAL_MACHINE,(LPCTSTR)strKey,&&hResult); oh:t ex<  
z<AQ;b  
  //得到欲修改键的句柄 xRaYm  
v`v+M4upC  
   SetRegValue(HKEY_LOCAL_MACHINE,strKey,"BackBitmapIE5",picture); ?]P&3UU>0z  
{/ty{  
   SetRegValue(HKEY_LOCAL_MACHINE,strKey,"BackBitmap",picture); Zr$PSp}  
_$fxoD9  
   RegCloseKey(hResult); E6@+w.VVO  
_IgG8)k;  
  //修改注册表相应的值并释放键句柄 "%}PVO!  
I7[+:?2  
  } ly^F?.e-  
yGN<.IP75  
"CZ`hx1|^  
以上只是从几个简单的方面演示了VC下通过修改注册表的方法实现为IE换貌。读者可以根据以上的代码进行更个性化的修改,以实现真正意义上的个性化IE。
评价一下你浏览此帖子的感受

精彩

感动

搞笑

开心

愤怒

无聊

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

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

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

描述
快速回复

您目前还是游客,请 登录注册
批量上传需要先选择文件,再选择上传
认证码:
验证问题:
3+5=?,请输入中文答案:八 正确答案:八