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

VC编程改造IE浏览

级别: 终身会员
发帖
3743
铜板
8
人品值
493
贡献值
9
交易币
0
好评度
3746
信誉值
0
金币
0
所在楼道
自从微软捆绑了IE以后,网虫们便注定了要永远地面对那一成不变的微软模式:窗口、按钮和www.microsoft.com网站,从用户的角度,我们希望能够拥有自己特色的IE;从商业运作角度,商人希望无处不有他们公司的宣传信息,希望IE一经运行便可自动进入他们的网站。下面笔者介绍一种用VC6编程,通过修改注册表来改变IE面貌的方法。 2sq<"TlQXI  
 yFv3>\  
VC修改注册表的方法与函数 Tl-B[CT  
注册表是由树干和键组成的,对注册表的修改便是对键的修改。 cVi CWc2  
首先,要对键修改需先得到要修改键的句柄,VC中为键打开一个句柄,可采用的函数为LONG RegOpenKey命令;然后才能对键进行修改,用SetRegValue命令;最后需要释放得到的键句柄,用RegCloseKey(hResult)命令。 ;pYk+r6Cr  
3"RZiOyv  
通过修改注册表实现IE换貌 G(e?]{(  
我们都知道,在注册表中,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() g_=ZcGC  
<Z_`^~!  
  { xJlq2cK  
'!GI:U+g  
   if(AddressNum==0){ [Y+ bW#'  
W;yZ$k#q}(  
  AfxMessageBox("没有可应用的选项!"); ;B@l0)7(x  
@[lr F7`o  
   return; YzVLa,[  
n`1i k'x?  
   } *8+YR  
ru Lcu]  
   CString address; 21Opx~T3  
/GNYv*  
   int sel=m_address1.GetCurSel(); efm<bJB2  
0cVXUTJ|W  
   if(LB_ERR ==sel){ J(GLPCO$K  
l1-FL-1  
  AfxMessageBox("请先选中要应用的选项!"); s"Wdbw(O'  
jiDYPYx;I  
   return; F[Up  
/vKDlCH*  
   } sIe(;%[`  
 \ Ld7fP  
   m_address1.GetText(sel,address); chbs9y0  
9wzYDKN}  
  //取得所需加入的网址字符串 j/\XeG>  
=<icHt6s  
   CString strKey="Software\\Microsoft\\Internet Explorer\\Main"; Mf"B!WU>]B  
stScz#!  
   HKEY hResult; 9IMcp~zX  
d)HK9T|B  
  RegOpenKey(HKEY_CURRENT_USER,(LPCTSTR)strKey,&&hResult); ^TGHWCK!t  
8V= o%[t  
  //得到欲修改键的句柄 D\JYa@*?.h  
TUt)]"h<  
   SetRegValue(HKEY_CURRENT_USER,strKey,"Start Page",address); fAi113q!  
a6OT2B  
   RegCloseKey(hResult); A |B](MW%O  
1d6pQ9 N  
  //修改注册表相应的值并释放键句柄 |ouk;r24V  
,\ i q'}i  
  } TgLlmU*qMU  
E'}$'n?:  
  2.给工具条指定用户特定的背景图案 .[! ^ L  
6=k^gH[g  
  void CJhfDlg::OnAddBackGround() OWzIea@  
%K4-V5f  
  { iD~s,  
IYFA>*Es  
   if(PictureNum==0){ FdD'Hp+  
L $~Id  
  AfxMessageBox("没有可应用的选项!"); lHU$A;  
YDwns  
   return; kW9STN  
Fu$otMw%l  
   } A [JV*Dt  
RPu-E9g@  
   CString picture; `:&{/|uP7  
-p }]r  
   int sel=m_PicList.GetCurSel(); '1+ Bgf  
,&$Y2+  
   if(LB_ERR ==sel){ /(w5S',EL  
e0P1FD<@  
   AfxMessageBox("请先选中要应用的选项!"); 0NGokaD)H  
5sH ee,  
   return; *MNY1+RJ  
2=  _.K(  
   } #"|Ey6&  
cVMTT]cj1  
   m_PicList.GetText(sel,picture); ~H.;pJ{ 8  
\a#2Wm  
  //取得所需加入背景图案文件路径 8I'?9rt2M  
e)M1$  
   CString strKey="Software\\Microsoft\\Internet Explorer\\Toolbar"; MD,-<X)Qy  
`^/Q"zH  
   HKEY hResult; U"Y$7~  
=J,:j[D(  
   RegOpenKey(HKEY_CURRENT_USER,(LPCTSTR)strKey,&&hResult); z'm;H{xf  
5BZ5Gl3  
   //得到欲修改键的句柄 2WoB;=  
'"&?u8u)  
   SetRegValue(HKEY_CURRENT_USER,strKey,"BackBitmapIE5",picture); A8?>V%b[Y  
Z-:`{dns/  
   SetRegValue(HKEY_CURRENT_USER,strKey,"BackBitmap",picture); F {[Q  
@AwH?7(b  
   RegCloseKey(hResult); -(jcsqDk  
;O CYx[|  
  //修改注册表相应的值并释放键句柄 G8SJ<\?  
p=zjJ~DVd  
   RegOpenKey(HKEY_LOCAL_MACHINE,(LPCTSTR)strKey,&&hResult); PrCq JY  
pd|s7  
  //得到欲修改键的句柄 9Ah4N2nL-b  
q#Bdq8  
   SetRegValue(HKEY_LOCAL_MACHINE,strKey,"BackBitmapIE5",picture); nm)F tX|A  
CAXU #  
   SetRegValue(HKEY_LOCAL_MACHINE,strKey,"BackBitmap",picture); ("{'],>  
/1Eg6hf9B  
   RegCloseKey(hResult); 8WvT0q>]  
@!S5FOXipZ  
  //修改注册表相应的值并释放键句柄 ~Oq(JM $M  
'&`Zy pq  
  } K \O,AE  
NH{0KZ R  
uJ[dO}  
以上只是从几个简单的方面演示了VC下通过修改注册表的方法实现为IE换貌。读者可以根据以上的代码进行更个性化的修改,以实现真正意义上的个性化IE。
评价一下你浏览此帖子的感受

精彩

感动

搞笑

开心

愤怒

无聊

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

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

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

描述
快速回复

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