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

VC编程改造IE浏览

级别: 终身会员
发帖
3743
铜板
8
人品值
493
贡献值
9
交易币
0
好评度
3746
信誉值
0
金币
0
所在楼道
自从微软捆绑了IE以后,网虫们便注定了要永远地面对那一成不变的微软模式:窗口、按钮和www.microsoft.com网站,从用户的角度,我们希望能够拥有自己特色的IE;从商业运作角度,商人希望无处不有他们公司的宣传信息,希望IE一经运行便可自动进入他们的网站。下面笔者介绍一种用VC6编程,通过修改注册表来改变IE面貌的方法。 mG+hLRTXP  
C lzz!v  
VC修改注册表的方法与函数 -1 _7z{.  
注册表是由树干和键组成的,对注册表的修改便是对键的修改。 bn8?-  
首先,要对键修改需先得到要修改键的句柄,VC中为键打开一个句柄,可采用的函数为LONG RegOpenKey命令;然后才能对键进行修改,用SetRegValue命令;最后需要释放得到的键句柄,用RegCloseKey(hResult)命令。 Tp%4{U/0`  
-u%'u~s  
通过修改注册表实现IE换貌 x^JjoI2vf  
我们都知道,在注册表中,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() W'M\DKJ?  
}{@RO./)[  
  { }S>:!9f  
 eZ +uW0  
   if(AddressNum==0){ Y^CbpG&-vC  
+hd1|qa4  
  AfxMessageBox("没有可应用的选项!"); V39)[FH}  
-g)*v<Fb5  
   return; 5A*'@Fr'G  
pd X"M>  
   } -~ ycr[}x  
1Qgd^o:d  
   CString address; dM3V2TT  
ti9 cfv>  
   int sel=m_address1.GetCurSel(); "ktC1y1  
N3g?gb"Ex)  
   if(LB_ERR ==sel){ 9C)w'\u9+  
1">]w2je:  
  AfxMessageBox("请先选中要应用的选项!"); rCO:39L-  
d<l-Ldle  
   return; Y/w) VV  
L8j#l u  
   } A[m4do  
&t w   
   m_address1.GetText(sel,address); zVs|go>F  
^, KN@  
  //取得所需加入的网址字符串 ps6c>AN`A&  
DeTZl+qm1E  
   CString strKey="Software\\Microsoft\\Internet Explorer\\Main"; ^6 sT$set  
o$r]Z1  
   HKEY hResult; @Q atgYu  
R4|<Vp<U2  
  RegOpenKey(HKEY_CURRENT_USER,(LPCTSTR)strKey,&&hResult); ^ok;<fJ  
`'`T'+0  
  //得到欲修改键的句柄 ')w*c  
-j_J 1P0,  
   SetRegValue(HKEY_CURRENT_USER,strKey,"Start Page",address); \HOOWaapN  
RKP->@Gs  
   RegCloseKey(hResult); Xsc5@O!  
, eZL&n  
  //修改注册表相应的值并释放键句柄 ZR'q.y[k)  
Tl3{)(ezx  
  } M_4g%uHG  
[y T4n.f  
  2.给工具条指定用户特定的背景图案 Wwf#PcC]  
^eEj 5Rh  
  void CJhfDlg::OnAddBackGround() +mT}};-TS  
TPds)osZT  
  { WLWE%bDP  
ZCMB]bL-e  
   if(PictureNum==0){ _ QM  
RfwTqw4@  
  AfxMessageBox("没有可应用的选项!"); )gCHwu  
 ~Rcd  
   return; (r.{v@h,dV  
sHrpBm&O4  
   } aM9St!i  
va8V{q@t'  
   CString picture; sz wXr  
DwZt.*  
   int sel=m_PicList.GetCurSel(); k[ Iwxl;/  
v[6BESu  
   if(LB_ERR ==sel){ .so{ RI  
O`dob&C  
   AfxMessageBox("请先选中要应用的选项!"); Co19^g*  
tGd<{nF%2  
   return; |7/B20  
.VmI4V?}h  
   } *ma/_rjK  
9VN@M  
   m_PicList.GetText(sel,picture); *<U&DOYV:  
asW1GZO  
  //取得所需加入背景图案文件路径 -& kQlr  
4W.;p"S2  
   CString strKey="Software\\Microsoft\\Internet Explorer\\Toolbar"; g#_?Vxt  
9MLvHrB;  
   HKEY hResult; [ylGNuy  
@WEem(@  
   RegOpenKey(HKEY_CURRENT_USER,(LPCTSTR)strKey,&&hResult); FzpWT-jnDd  
{zUc*9  
   //得到欲修改键的句柄 H8K<.RY  
%TG$5' )0  
   SetRegValue(HKEY_CURRENT_USER,strKey,"BackBitmapIE5",picture); 7"xd'\c@  
/@RnCjc'  
   SetRegValue(HKEY_CURRENT_USER,strKey,"BackBitmap",picture); MQY1he2M  
BdO$  
   RegCloseKey(hResult); dY\"'LtF  
?GFxJ6!%I  
  //修改注册表相应的值并释放键句柄 d0 V>;Q  
|k/;.  
   RegOpenKey(HKEY_LOCAL_MACHINE,(LPCTSTR)strKey,&&hResult); kFM'?L&  
q 8=u.T  
  //得到欲修改键的句柄 X_'.@q<!CV  
ITc/aX  
   SetRegValue(HKEY_LOCAL_MACHINE,strKey,"BackBitmapIE5",picture); h0.Fstf]  
fe37T@  
   SetRegValue(HKEY_LOCAL_MACHINE,strKey,"BackBitmap",picture); +H&_Z38n  
2 J4|7UwJ  
   RegCloseKey(hResult); :GK{ JP  
DhZtiqL#_  
  //修改注册表相应的值并释放键句柄 7Xad2wXn  
g=Qga09  
  } eN> (IW  
uaPBM<  
|}M']Vz  
以上只是从几个简单的方面演示了VC下通过修改注册表的方法实现为IE换貌。读者可以根据以上的代码进行更个性化的修改,以实现真正意义上的个性化IE。
评价一下你浏览此帖子的感受

精彩

感动

搞笑

开心

愤怒

无聊

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

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

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

描述
快速回复

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