热门文章
阿标在线 动力3.62HTML生成3.62网站文件说明
动力3.62整合动网7.0 SP2插
MDAC2.8 下载!
动力3.62版 防止垃圾留言
动力3.6全方位改动方法
让3.62不同频道实现不同风
把3.62首页登陆为横向代码
动易3.6首页随机FLASH修改
362首页和文章频道页图文幻
个性化修改3.6宝典
3.62轻易实现网摘功能
如何正确统计中文字数?
弹出JAVASCRIPT语法错误对
后台使“网站顶部LOGO地址
最新图片文章横向移动的修
html 生成艺术字
3.6 Sp2 Logo和Banner及广
日期值的计算
汉字转拼音
首页“图片更新”图片滚动
简体中文转换为繁体中文的
如何在css中定义链接的下划
用Visual C#打造个性化的IE浏览器
[ 录入:阿标 | 点击数: | 更新时间:2005-3-18 12:42:00]
IE是现在Windows平台下用的最多的浏览器,但微软提供的IE是那么朴实,以至于毫无特色,那么如何用程序来修改IE,打造有自己的特色的IE呢?我经过思索,通过注册表找到了修改IE的方法,下面我向大家介绍一下这种方法。
首先我们来熟悉一下C#中修改注册表的方法与函数。在VC#中提供了Registry类、RegistryKey类来实现对注册表的操作。其中Registry类封装了注册表的七个基本主健:
Registry.ClassesRoot 对应于HKEY_CLASSES_ROOT主键
Registry.CurrentUser 对应于HKEY_CURRENT_USER主键
Registry.LocalMachine 对应于 HKEY_LOCAL_MACHINE主键
Registry.User 对应于 HKEY_USER主键
Registry.CurrentConfig 对应于HEKY_CURRENT_CONFIG主键
Registry.DynDa 对应于HKEY_DYN_DATA主键
Registry.PerformanceData 对应于HKEY_PERFORMANCE_DATA主键
RegistryKey类封装了对注册表的基本操作,包括读取,写入,删除。其中读取的主要函数有:
OpenSubKey ( string name )方法主要是打开指定的子键。
GetSubKeyNames ( )方法是获得主键下面的所有子键的名称,它的返回值是一个字符串数组。
GetValueNames ( )方法是获得当前子键中的所有的键名称,它的返回值也是一个字符串数组。
GetValue ( string name )方法是指定键的键值。
写入的函数有:
CreateSubKey(string name)方法是增加一个子键
SetValue(string name,string value)方法是设置一个键的键值
删除的函数:
DeleteSubKey ( )方法:删除一个指定的子键。
DeleteSubKeyTree ( )方法:
此方法是彻底删除指定的子键目录,即:删除该子键以及该子键以下的全部子键。
通过注册表可以修改IE,在这里我简单的介绍几个常用的来实现对IE的修改。
如果我们希望在打开或者关闭IE窗口时,被打开的窗口有动感效果,那么可以打开HKEY_ CURRENT_USER \ Control Panel\ desktop\ WindowMetrics键,并在右边的窗口中新建串值"Minanimat"与"Maxanimat"并设值为"0",为"1",这样在IE窗口最大最小化切换时有递变的效果。
如果我们更改为IE的工具栏添加背景那么展开HKEY_Current_User\ Software\Microsoft\Internet Explorer\Toolbar键值,Explorer主键下新建一个名为"BackBitmap"的字符串值,并将其值修改为事先准备的BMP图片的完整路径及文件名;这样我们就完成了为IE的工具栏添加背景图片的目的。
用C#编程来实现的方法如下:
1.IE窗口的动感效果
//-------------------------------------
// ChangeIE.cs ? 2004 by yudehui
//-------------------------------------
using System;
using Microsoft.Win32; //对注册表操作一定要引用这个命名空间
namespace ChangeIE
{
class ChangeIE
{
[STAThread]
static void Main(string[] args)
{
RegistryKey pregkey ;
pregkey = Registry.CurrentUser.OpenSubKey("Control Panel\\Desktop\\WindowMetrics",true);
if (pregkey==null)
{
Console.WriteLine("键值不存在");
}
else
{
pregkey.SetValue("MinAnimate","1");
pregkey.SetValue("MaxAnimate","1");
Console.WriteLine("修改成功");
}
pregkey. Close;
}
}
}
2.改变IE工具栏的背景
//-------------------------------------
// ChangeIE.cs ? 2004 by yudehui
//-------------------------------------
using System;
using Microsoft.Win32; //对注册表操作一定要引用这个命名空间
namespace ChangeIEbackColor
{
class ChangeIEbackColor
{
[STAThread]
static void Main(string[] args)
{
RegistryKey pregkey ;
pregkey = Registry.CurrentUser.OpenSubKey("Software\\Microsoft\\Internet" +
"Explorer\\Toolbar\\Explorer ",true);
if (pregkey==null)
{
Console.WriteLine("键值不存在");
}
else
{
pregkey.SetValue("BackBitmap","C:\\windows\\Greenstone.bmp");
Console.WriteLine("修改成功");
}
pregkey.Close;
}
}
}
以上两个简单的例子只是对IE进行了简单的设定,相信大家对C#下对注册表的操作已经有了一定的了解。有兴趣的读者可以自己对IE进行更个性化的修改,以上代码在Windows2003+VS.NET2003下调试通过。
注:在对注册表进行操作有一定的危险性,操作时要先进行备份,以防止误操作,而导致系统崩溃。