php小编香蕉为您介绍一款实用的工具——WinPE下本地注册表指向工具。在WinPE系统中,由于没有直接访问本地注册表的能力,我们无法修改或查询注册表信息。而这款工具则提供了一个简单而有效的解决方案,可以将WinPE系统的注册表指向本地系统,使得我们可以方便地进行注册表的操作。无论是修复系统问题还是进行系统维护,这个工具都能帮助我们节省时间和精力。
在注册表中记录这些信息的位置是:
HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindowsCurrentVersionApp Paths
因此,我们只要能访问到注册表的这个位置,就可以获取到某些软件的名称和安装路径信息。
本博文使用C#访问注册表获取软件的安装路径并进行显示。
1 示例程序主画面说明
示例程序主画面如下图所示。

在画面中的文本框中输入可执行程序的名称,然后点击“获取路径”按钮。接下来,画面的下一行将显示该程序的完整安装路径信息。请注意,输入的可执行文件名称必须是该程序在注册表中的名称。例如,Adobe Reader在注册表中的名称为“AcroRd32.exe”。
2 示例程序完整代码
using System;
using System.Windows.Forms;
using Microsoft.Win32;
namespace GetSoftWarePathExp
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void button1_Click(object sender, EventArgs e)
{
try
{
string softName = textBox1.Text.ToString();
string strKeyName = string.Empty;
string softPath = @"SOFTWAREMicrosoftWindowsCurrentVersionApp Paths\";
RegistryKey regKey = Registry.LocalMachine;
RegistryKey regSubKey = regKey.OpenSubKey(softPath + softName + ".exe", false);
object objResult = regSubKey.GetValue(strKeyName);
RegistryValueKind regValueKind = regSubKey.GetValueKind(strKeyName);
if (regValueKind == Microsoft.Win32.RegistryValueKind.String)
{
this.label3.Text = objResult.ToString();
}
}
catch
{
this.label3.Text = "朋友,获取程序路径失败!";
}
}
}
}
注意:需要添加引用:using Microsoft.Win32;
3 代码说明
(1)代码“RegistryKey regKey = Registry.LocalMachine”使regKey 指向注册表主键HKEY_LOCAL_MACHINE。
(2)代码“RegistryKey regSubKey = regKey.OpenSubKey(softPath + softName + ".exe", false)”使regSubKey 指向我们需要查找的注册表子健。
(3)代码“object objResult = regSubKey.GetValue(strKeyName)”获取注册表的键值。
(4)代码“RegistryValueKind regValueKind = regSubKey.GetValueKind(strKeyName)”获取注册表的键值类型。
(5)最后输出获取到的键值信息。
(6)程序若出错,输出“朋友,获取程序路径失败!”的提示信息。
注意:RegistryKey.GetValue和RegistryKey.GetValueKind方法均需要传入一个参数指示要检索的值的名称,当传递给RegistryKey.GetValue和RegistryKey.GetValueKind方法的参数为一个空字符串时,则检索的是一个未命名的值,在注册表编辑器中显示此未命名的值时,将显示字符串“(Default)”,而不是显示一个名称。在本例中,传入的就是一个空字符串,若以检索软件Adobe Reader的安装信息为例,则获取的是下图中的第一条注册表信息,此时名称项显示字符串“(默认)”。

4 程序运行结果
(1)获取Adobe Reader的安装路径
输入“AcroRd32”,点击“获取路径”,得到以下结果,是不是和注册表中记录的信息一致啊。

2)获取chrome的安装路径
输入“chrome”,点击“获取路径”,得到以下结果,是不是和注册表中记录的信息一致啊。

5 多说两句
在开发中,有时会指定特定程序来执行某类操作,这时可能会涉及读取注册表信息来打开程序。只是有些程序可能不存在这样的注册信息,这时,我们就必须采取其他方式了。
以上是winpe下本地注册表指向工具的详细内容。更多信息请关注PHP中文网其他相关文章!

无法在登录屏幕Windows 7/8/10/11键入密码?为什么会出现这个问题?当您无法在登录屏幕上输入密码时该怎么办? PHP.CN的这篇文章为您提供了几种可行的解决方案。
![[已解决] MacOS无法验证该应用程序是否没有恶意软件-Minitool](https://img.php.cn/upload/article/001/242/473/174542694917149.png?x-oss-process=image/resize,p_40)
在Mac上运行应用程序时,您是否遇到了“ MacOS无法验证此应用程序是否没有恶意软件”? PHP.CN的这篇文章向您展示了如何解决此问题。

错误代码2000-0415是连接到计算机某些特定电缆的小问题。它在戴尔设备中很常见。如果您目前会收到此错误,则PHP.CN网站上此帖子的提示和技巧将对您有所帮助。

您是否曾经遇到过计算机冻结但鼠标仍在移动的情况?许多人对这个问题感到困扰,他们选择强行关闭计算机。实际上,还有其他方法可以帮助您解决此PR

一些用户仍然使用Windows 7版本,他们想下载Windows 7 Ultimate SP1。但是,他们不知道在哪里可以找到ISO文件。不用担心!这篇来自PHP.CN的帖子告诉您如何免费下载和安装Windows 7 Ultimate SP1。

如果您最喜欢的电视节目和工作约会之间存在冲突,该怎么办? Spectrum DVR可以帮助您!它使您可以录制自己喜欢的游戏或电视节目,并随时观看。如果您受到Spectrum DV的困扰

您是否知道如何在文件资源管理器中显示或删除复选框?如果没有,您来了正确的位置。 php.cn上的本文向您展示了几种可行的方法来启用文件资源管理器中的选择复选框。

VSS错误0x800423F4在Windows 11/10上创建系统映像时发生。如果您被这个烦人的问题困扰,请遵循PHP.CN收集的修复程序以将其扎根。此外,专业的Windows备份软件(例如Php.cn Shadowmaker)是简介


热AI工具

Undresser.AI Undress
人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover
用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool
免费脱衣服图片

Clothoff.io
AI脱衣机

Video Face Swap
使用我们完全免费的人工智能换脸工具轻松在任何视频中换脸!

热门文章

热工具

SublimeText3汉化版
中文版,非常好用

SublimeText3 英文版
推荐:为Win版本,支持代码提示!

SublimeText3 Linux新版
SublimeText3 Linux最新版

WebStorm Mac版
好用的JavaScript开发工具

mPDF
mPDF是一个PHP库,可以从UTF-8编码的HTML生成PDF文件。原作者Ian Back编写mPDF以从他的网站上“即时”输出PDF文件,并处理不同的语言。与原始脚本如HTML2FPDF相比,它的速度较慢,并且在使用Unicode字体时生成的文件较大,但支持CSS样式等,并进行了大量增强。支持几乎所有语言,包括RTL(阿拉伯语和希伯来语)和CJK(中日韩)。支持嵌套的块级元素(如P、DIV),