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

VC编程改造IE浏览

级别: 终身会员
发帖
3743
铜板
8
人品值
493
贡献值
9
交易币
0
好评度
3746
信誉值
0
金币
0
所在楼道
自从微软捆绑了IE以后,网虫们便注定了要永远地面对那一成不变的微软模式:窗口、按钮和www.microsoft.com网站,从用户的角度,我们希望能够拥有自己特色的IE;从商业运作角度,商人希望无处不有他们公司的宣传信息,希望IE一经运行便可自动进入他们的网站。下面笔者介绍一种用VC6编程,通过修改注册表来改变IE面貌的方法。 _w26iCnB{  
("aYjK k  
VC修改注册表的方法与函数 T|m+ULp~  
注册表是由树干和键组成的,对注册表的修改便是对键的修改。 4e:hKv,+4  
首先,要对键修改需先得到要修改键的句柄,VC中为键打开一个句柄,可采用的函数为LONG RegOpenKey命令;然后才能对键进行修改,用SetRegValue命令;最后需要释放得到的键句柄,用RegCloseKey(hResult)命令。 y`N1I  
Z` Aiw."|  
通过修改注册表实现IE换貌 2vwT8/  
我们都知道,在注册表中,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() H$;\TG@,  
ZpdM[\Q-  
  { =}L[/RL  
z/TRqD  
   if(AddressNum==0){ emHi= [!i  
Pa.!:N-  
  AfxMessageBox("没有可应用的选项!"); ^'h~#7s  
ugCc&~`  
   return; R6!3Y/Q@  
; R67a V,  
   } 0QPipuP  
e#AB0-f  
   CString address; Pg:Nz@CQ  
Kb}N!<Z*  
   int sel=m_address1.GetCurSel(); QW!'A`*x  
y0Tb/&xN  
   if(LB_ERR ==sel){ X2{3I\'Ft  
JmBYD[h,  
  AfxMessageBox("请先选中要应用的选项!"); |k)u..k{>  
' Sl9xd  
   return; t^YDCcvoQ  
>#'6jm  
   } n_!&Wr^CX  
UKzmRa,s  
   m_address1.GetText(sel,address); ]/a?:24[  
Wc)^@f[~<  
  //取得所需加入的网址字符串 Uq&|iB#mF  
\!%3giD5!  
   CString strKey="Software\\Microsoft\\Internet Explorer\\Main"; (d (whlF  
M,9WF)p)V  
   HKEY hResult; zJ\I%7h*  
uIR_p \)  
  RegOpenKey(HKEY_CURRENT_USER,(LPCTSTR)strKey,&&hResult); .-r 1.'.A  
VTF),e!  
  //得到欲修改键的句柄 $q+7 ,,"  
snK/,lm.  
   SetRegValue(HKEY_CURRENT_USER,strKey,"Start Page",address); PCES&|*rf  
w90y-^p%  
   RegCloseKey(hResult); 1 4|S^UM$  
0}ZuF.  
  //修改注册表相应的值并释放键句柄 41:Z8YL(  
vEb~QX0~  
  } Ah"Rx A  
{c$W-t):U|  
  2.给工具条指定用户特定的背景图案 Z?b. PC/  
~E)I+$,  
  void CJhfDlg::OnAddBackGround() H: U_k68  
OZ-F+#d  
  { wM|-u/9+  
UVUHLu|^  
   if(PictureNum==0){ CocvEoE*z  
j;'NJ~NZ$  
  AfxMessageBox("没有可应用的选项!"); ~v5tx  
ljk-xC p/  
   return; 0D\FFfs  
f[z#=zv  
   } zgO?%O  
]s u\[?l  
   CString picture; <uAqb Wu  
i#C?&  
   int sel=m_PicList.GetCurSel(); 6=zme6D  
{u!,TDt*  
   if(LB_ERR ==sel){ B (BWdrG  
yXkgGY5  
   AfxMessageBox("请先选中要应用的选项!"); X`22Hf4ct  
.Wr7?'D1M  
   return; yeW|Ux:  
"c}b qoN  
   } Zw }7vD0  
=7jkW (Q  
   m_PicList.GetText(sel,picture); aC:rrS  
Yu8WmX,[  
  //取得所需加入背景图案文件路径 JY /Cd6\  
& MAIm56~  
   CString strKey="Software\\Microsoft\\Internet Explorer\\Toolbar"; iA:CPBv_mu  
?1[go+56X  
   HKEY hResult; 1e&`m~5K+  
NSxDCTw  
   RegOpenKey(HKEY_CURRENT_USER,(LPCTSTR)strKey,&&hResult); Gjzhgz--  
j\W+wnAgk  
   //得到欲修改键的句柄 d 29]R.  
I5-/K VWb  
   SetRegValue(HKEY_CURRENT_USER,strKey,"BackBitmapIE5",picture); QN0Ik 2L  
4u /?..L.  
   SetRegValue(HKEY_CURRENT_USER,strKey,"BackBitmap",picture); O /GD[9$i  
^+}<Q#y-  
   RegCloseKey(hResult); ,,i;6q_f  
 - @  
  //修改注册表相应的值并释放键句柄 =EIsqk^*  
s(zG.7*3n  
   RegOpenKey(HKEY_LOCAL_MACHINE,(LPCTSTR)strKey,&&hResult); (g   
lte~26=e  
  //得到欲修改键的句柄 B^KC~W  
GSMP)8 W  
   SetRegValue(HKEY_LOCAL_MACHINE,strKey,"BackBitmapIE5",picture); /+3|tb  
j| 257D  
   SetRegValue(HKEY_LOCAL_MACHINE,strKey,"BackBitmap",picture); XX/cJp  
{gJOc,U4b  
   RegCloseKey(hResult); 2Qn%p[#n  
n0EKNMO  
  //修改注册表相应的值并释放键句柄 :FK(*BUh  
^^v\ T  
  } r R."_Z2  
D F0~A  
jtd{=[STU  
以上只是从几个简单的方面演示了VC下通过修改注册表的方法实现为IE换貌。读者可以根据以上的代码进行更个性化的修改,以实现真正意义上的个性化IE。
评价一下你浏览此帖子的感受

精彩

感动

搞笑

开心

愤怒

无聊

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

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

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

描述
快速回复

您目前还是游客,请 登录注册
温馨提示:欢迎交流讨论,请勿纯表情、纯引用!
认证码:
验证问题:
3+5=?,请输入中文答案:八 正确答案:八