深入 WIN2000 组册表 (3)

2024-03-22 18:38
文章标签 深入 win2000 组册表

本文主要是介绍深入 WIN2000 组册表 (3),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

                 测某个计算机管理Snap-In是否可用
尽管M i c r o s o f t提供了一组重要的M M C工具,但是为Windows 2000提供服务应用程序的供应商通常会提供一种能够集成到计算机管理控制台的管理工具,称为MMC Snap-In。在使用S n a p - I n时,常见的问题是由于不正确的安装导致无效的注册表条目,从而引起访问M M CS n a p - I n出错。下面的步骤介绍怎样处理这种情况:
1) 打开“开始”菜单并选择“运行”。单击“浏览”按钮开始浏览直到找到Wi n d o w s
2 0 0 0的根目录(通常是W I N N T )为止。进入S y s t e m目录并找到R e g e d t 3 2 . e x e,将其选入对话框并单击“确定”按钮。注册表编辑器启动,将所有的配置单元分别显示在不同的层叠子窗口中。
2) 选择“窗口”菜单项H K E Y _ L O C A L _ M A C H I N E,其子窗口显示。最大化该窗口以便于使用。
3) 使用窗口左边的树型控件定位到S O F T WA R E / M i c r o s o f t / M M C / S n a p I n s子项。单击该子项选取它。
4) 在S n a p I n s子项中有一组子项。这些子项是COM CLSID(即Class ID,是C O M唯一的文本名称)值。如果你知道丢失的或者工作不正常的S n a p I n的C L S I D,那么只要简单地检查一下就可以确定C L S I D是否在列出的子项中。如果不知道S n a p I n的C L S I D,则应检查每个C L S I D的N a m e S t r i n g值直到发现为止。如果没有找到该条目,那么你就需要重新安装软件(至少重新安装其管理工具)。如果找到了该条目,那么接着你需要切换到H K E Y _ C L A S S E S _ R O O T窗口,搜索其C L S I D值,并查看它的I n P r o c S e r v e r值条目,确保Snap-In COM的D L L在指定的位置上。如果不在指定的位置,则应把S n a p - I n移动到指定位置或者将该条目改为D L L所在的位置。

修复丢失的组件服务元数据DLL


组件服务(Component Service)是Windows 2000新C O M+系统的名称。它为C O M服务器提供了很多强大的新功能,但是它必须建立在已有C O M的配合下,而C O M又非常依赖注册表。如果一个或两个重要的C O M注册表条目被破坏或者不正确,那么C O M+就可能会发生故障。下面介绍在哪里能检查并修复这种致命的问题:
1) 打开“开始”菜单并选择“运行”。单击“浏览”按钮开始浏览直到找到Wi n d o w s
2 0 0 0的根目录(通常是W I N N T )为止。进入S y s t e m目录并找到R e g e d t 3 2 . e x e,将其选入对话框并单击“确定”按钮。注册表编辑器启动,将所有的配置单元分别显示在不同的层叠子窗口中。
2) 选择“窗口”菜单项H K E Y _ C L A S S E S _ R O O T,其子窗口显示。最大化该窗口以便于使用。
3) 使用窗口左边的树型控件定位到C o m P l u s M e t a D a t a S e r v i c e s子项。单击该子项选取它。

4) 记下C L S I D子项的值(该值没有名称)。在H K C R (即H K E Y _ C L A S S E S _ R O O T—译者注)中搜索记下的值。当发现该条目时,对其进行检查,确保该C O M服务器的D L L在指定的位置。如果不在指定的位置,则需要重新安装C O M+或者先确定D L L的位置,然后移动D L L或更改注册表条目。

确定事件为何没有被记录的原因


尽管没有在文档中大肆宣扬,但是Windows 2000功能强大的新事件系统实际上是基于
C O M+技术的。这也就意味着它依赖于一组关键的注册表条目,这样在Windows 2000启动时C O M服务器才能被找到并启动。如果Windows 2000事件系统无法正确获取事件,那么可以肯定某一个C O M服务器在注册表中的条目被破坏了。要查看C O M服务器条目,可按照下面的步骤进行:
1) 打开“开始”菜单并选择“运行”。单击“浏览”按钮开始浏览直到找到Wi n d o w s2 0 0 0的根目录(通常是W I N N T )为止。进入S y s t e m目录并找到R e g e d t 3 2 . e x e,将其选入对话框并单击“确定”按钮。注册表编辑器启动,将所有的配置单元分别显示在不同的层叠子窗口中。
2) 选择“窗口”菜单项H K E Y _ L O C A L _ M A C H I N E,其子窗口显示。最大化该窗口以便于使用。

3) 使用窗口左边的树型控件定位到S O F T WA R E / M i c r o s o f t / E v e n t S y s t e m / . . . / E v e n t C l a s s e s子项。单击该子项选取它。
4) 单击E v e n t C l a s s e s项中的每一个子项。查看其描述,直到找到你丢失的那个事件为止。接着,在H K C R (即H K E Y _ C L A S S E S _ R O O T—译者注)中搜索其C L S I D (该子项的值)。确保C O M服务器所使用的D L L在正确的位置。如果不在正确的位置,则修改注册表条目或移动D L L。

修改Windows 2000性能库的缺省事件日志功能设置


除了使用系统性能监视器之外,你还可以通过事件查看器跟踪系统问题。你可以通过修改注册表来控制性能库(系统性能监视器的主要代码)向事件查看器所使用的事件日志发送事件的方式:
1) 打开“开始”菜单并选择“运行”。单击“浏览”按钮开始浏览直到找到Wi n d o w s2 0 0 0的根目录(通常是W I N N T )为止。进入S y s t e m目录并找到R e g e d t 3 2 . e x e,将其选入对话框并单击“确定”按钮。注册表编辑器启动,将所有的配置单元分别显示在不同的层叠子窗口中。
2) 选择“窗口”菜单项H K E Y _ L O C A L _ M A C H I N E,其子窗口显示。最大化该窗口以便于使用。
3) 使用窗口左边的树型控件定位到S O F T WA R E / M i c r o s o f t / Wi n d o w s N T /C u r r e n t Ve r s i o n / P e r f l i b子项。单击该子项选取它。
4) 双击E v e n t L o g L e v e l的值打开“D Wo r d编辑器”D Word Editor,你可以将它的值设置为表3 - 1所示的四个值中的一个。
提示E v e n t L o g L e v e l条目可能不存在。如果不存在,你可以使用“编辑” |“添加值”
菜单项创建它。

警告: 这个事件记录注册表条目只影响性能库,而不影响系统性能监视器。本章前面
的直接解决方案“确定事件为何没有被记录的原因”影响系统性能监视器工具的显
示,它必须报告自己的错误。
表3-1 性能库工具的E v e n t L o g L e v e l值
值功能
0 不记录来自性能库的事件
1 只记录错误,这是缺省设置
2 记录错误和警告
3 错误、警告、信息,以及成功/失败都记录

在系统性能监视器中允许使用UNICODE进程标题名


Windows 2000支持U N I C O D E字符,但是会导致某些应用程序的性能受到影响。因此,通常禁止使用U N I C O D E,而只允许使用A N S I字符。缺省时,系统性能监视器的这一特性是关闭的。你可以按照下面的步骤更改注册表,启用系统性能监视器对U N I C O D E的支持:

1) 打开“开始”菜单并选择“运行”。单击“浏览”按钮开始浏览直到找到Wi n d o w s2 0 0 0的根目录(通常是W I N N T )为止。进入S y s t e m目录并找到R e g e d t 3 2 . e x e,将其选入对话框并单击“确定”按钮。注册表编辑器启动,将所有的配置单元分别显示在不同的层叠子窗口中。
2) 选择“窗口”菜单项H K E Y _ L O C A L _ M A C H I N E,其子窗口显示。最大化该窗口以便于使用。
3) 使用窗口左边的树型控件定位到S O F T WA R E / M i c r o s o f t / WindowsNT/ CurrentVe r s i o n /P e r f l i b子项。单击该子项选取它。
4) 双击值C o l l e c t U n i c o d e P r o c e s s N a m e s,在D Wo r d编辑器中打开它。缺省值为0,表示禁止该特性。将C o l l e c t U n i c o d e P r o c e s s N a m e s设置为1,可以允许在系统性能监视器的进程标题中使用U N I C O D E。

提示:C o l l e c t U n i c o d e P r o c e s s N a m e s可能不存在。如果不存在,则可以试用“编辑” |“添加值”菜单项来创建它。

 



Trackback: http://tb.blog.csdn.net/TrackBack.aspx?PostId=5733


这篇关于深入 WIN2000 组册表 (3)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/835954

相关文章

Java并发编程必备之Synchronized关键字深入解析

《Java并发编程必备之Synchronized关键字深入解析》本文我们深入探索了Java中的Synchronized关键字,包括其互斥性和可重入性的特性,文章详细介绍了Synchronized的三种... 目录一、前言二、Synchronized关键字2.1 Synchronized的特性1. 互斥2.

一文带你深入了解Python中的GeneratorExit异常处理

《一文带你深入了解Python中的GeneratorExit异常处理》GeneratorExit是Python内置的异常,当生成器或协程被强制关闭时,Python解释器会向其发送这个异常,下面我们来看... 目录GeneratorExit:协程世界的死亡通知书什么是GeneratorExit实际中的问题案例

深入解析Spring TransactionTemplate 高级用法(示例代码)

《深入解析SpringTransactionTemplate高级用法(示例代码)》TransactionTemplate是Spring框架中一个强大的工具,它允许开发者以编程方式控制事务,通过... 目录1. TransactionTemplate 的核心概念2. 核心接口和类3. TransactionT

深入理解Apache Airflow 调度器(最新推荐)

《深入理解ApacheAirflow调度器(最新推荐)》ApacheAirflow调度器是数据管道管理系统的关键组件,负责编排dag中任务的执行,通过理解调度器的角色和工作方式,正确配置调度器,并... 目录什么是Airflow 调度器?Airflow 调度器工作机制配置Airflow调度器调优及优化建议最

深入理解C语言的void*

《深入理解C语言的void*》本文主要介绍了C语言的void*,包括它的任意性、编译器对void*的类型检查以及需要显式类型转换的规则,具有一定的参考价值,感兴趣的可以了解一下... 目录一、void* 的类型任意性二、编译器对 void* 的类型检查三、需要显式类型转换占用的字节四、总结一、void* 的

深入理解Redis大key的危害及解决方案

《深入理解Redis大key的危害及解决方案》本文主要介绍了深入理解Redis大key的危害及解决方案,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着... 目录一、背景二、什么是大key三、大key评价标准四、大key 产生的原因与场景五、大key影响与危

深入理解C++ 空类大小

《深入理解C++空类大小》本文主要介绍了C++空类大小,规定空类大小为1字节,主要是为了保证对象的唯一性和可区分性,满足数组元素地址连续的要求,下面就来了解一下... 目录1. 保证对象的唯一性和可区分性2. 满足数组元素地址连续的要求3. 与C++的对象模型和内存管理机制相适配查看类对象内存在C++中,规

【前端学习】AntV G6-08 深入图形与图形分组、自定义节点、节点动画(下)

【课程链接】 AntV G6:深入图形与图形分组、自定义节点、节点动画(下)_哔哩哔哩_bilibili 本章十吾老师讲解了一个复杂的自定义节点中,应该怎样去计算和绘制图形,如何给一个图形制作不间断的动画,以及在鼠标事件之后产生动画。(有点难,需要好好理解) <!DOCTYPE html><html><head><meta charset="UTF-8"><title>06

深入探索协同过滤:从原理到推荐模块案例

文章目录 前言一、协同过滤1. 基于用户的协同过滤(UserCF)2. 基于物品的协同过滤(ItemCF)3. 相似度计算方法 二、相似度计算方法1. 欧氏距离2. 皮尔逊相关系数3. 杰卡德相似系数4. 余弦相似度 三、推荐模块案例1.基于文章的协同过滤推荐功能2.基于用户的协同过滤推荐功能 前言     在信息过载的时代,推荐系统成为连接用户与内容的桥梁。本文聚焦于

【C++高阶】C++类型转换全攻略:深入理解并高效应用

📝个人主页🌹:Eternity._ ⏩收录专栏⏪:C++ “ 登神长阶 ” 🤡往期回顾🤡:C++ 智能指针 🌹🌹期待您的关注 🌹🌹 ❀C++的类型转换 📒1. C语言中的类型转换📚2. C++强制类型转换⛰️static_cast🌞reinterpret_cast⭐const_cast🍁dynamic_cast 📜3. C++强制类型转换的原因📝