草庐IT

Registry

全部标签

windows - 在 Windows XP 中创建 shell 替换的正确方法是什么?

我正在尝试创建我自己的shell,它是Windows的shell替代品。我意识到只需将REGEDIT中的值设置为:HKEY_CURRENT_USER\Software\Microsoft\WindowsNT\CurrentVersion\Winlogon将在Windows7中工作。但是,在WindowsXP中,情况并非如此。如果我尝试运行Windows资源管理器,它将显示任务栏并将其自身设置为Windows的外壳。但在Windows7中,它只会运行Windows资源管理器,而不会显示其任务栏WindowsXP中的外壳替换是否需要任何特定的注册表设置? 最佳答

c# - 检查是否安装了VLC

我正在从C#应用程序调用vlc以播放视频。我需要一种方法来持续检查是否安装了VLC。我试过检查注册表项,但它们似乎不一致或不可靠,具体取决于您的Windows版本或体系结构。有人有任何建议/意见吗? 最佳答案 我会说你在试图检测这一点时做了不必要的工作。如果没有安装VLC,您打算怎么办?显示错误信息?然后尝试启动它,如果启动失败则显示错误消息。这样,您还可以捕捉到它已安装,但由于某种原因仍无法启动的情况。两者都是您程序的错误条件。除此之外,请确保您的应用程序包含一个自动安装VLC的安装程序,因为您的应用程序需要它才能正常工作。然后,

windows - GetProcAddress 为 RegDeleteKeyEx 返回 NULL

我正在尝试为32位和64位操作系统实现注册表项的递归删除。由于RegDeleteKeyEx未针对低于XPx64Professional的操作系统定义,因此我尝试间接使用该函数。问题::即使在x64上,GetProcAddress()也会返回NULL。//GlobalDeclarationstypedefLONG(WINAPI*PFN_RegDeleteKeyEx)(HKEYhKey,LPCTSTRlpSubKey,REGSAMsamDesired,DWORDReserved);PFN_RegDeleteKeyEx_RegDeleteKeyEx;//Thecodeinsidefuncti

windows - 注册表版本错误

我想从注册表中读取DirectX版本。我在值Version下的HKLM\Software\Microsoft\DirectX找到了值。我的问题:引用HeyScriptingGuy!我的版本“4.09.00.0904”是9.0c,但dxdiag显示DirectX11。如何找到合适的版本?或者有没有办法在没有注册表的情况下解决这个问题?编辑:我正在使用Windows7Professionalx86 最佳答案 您无法从注册表中检测到任何高于DirectX9的版本。它根本没有存储在那里。对于版本10及更高版本,您应该使用COM接口(inte

windows - 如何在 lua 中递归地遍历 Windows 注册表?

我来自Linux领域,请多多包涵。我想递归地遍历Windows注册表。到目前为止,我所做的一切都是为了获取各个键的值>require'luacom'>sh=luacom.CreateObject"WScript.Shell">=sh:RegRead"HKCU\\Console\\ColorTable01"8388608还没有办法迭代注册表节点... 最佳答案 如果您需要使用Lua执行任何特定于Windows的操作,您的第一个调用端口应该是winapi图书馆;在这种情况下,您可以使用open_reg_key()枚举注册表项和Regke

windows - SET 之后的 REG 命令在 DOS/Windows 批处理文件 (.BAT) 中为 "unknown"

在我的批处理文件中,我开始使用变量,突然以下命令不再起作用。这是我的代码中有问题的部分SET"path=MyPath"REGADD"HKCU\Software\ETC\ETC"/f/v"MyRegNameA"/tREG_SZ/d"%path%\ETC\"REGADD"HKCU\Software\ETC\ETC"/f/v"MyRegNameB"/tREG_SZ/d"%path%"PAUSESTART"""%path%\MyProgram.exe"此代码在没有SET...的情况下工作,当然还有MyPath而不是%path%。错误信息是:Thecommand"REG"iseitherspel

windows - 如何获取已注册COM接口(interface)的IID?

我知道我可以从Classes\\CLSID\@的注册表中的COM类对象中读取CLSID.我怀疑在注册的COM接口(interface)上我可以从Classes\\IID\@读取IID或Classes\CLSID\\IID.我已阅读文章COMIDs&Registrykeysinanutshell这个问题对我来说仍然是开放的。不幸的是,我现在没有测试用例。 最佳答案 注册表并不是一种编程资源,注册表项仅在COM基础结构需要时才存在。例如,CLSID键是帮助COM找到实现服务器的可执行文件所必需的,程序员必须提供CLSIDguid。他还需

node.js - 安装基于 Node.js 的服务时文件夹路径太长的问题

下载在线NPM资源工作正常,安装和服务安装成功。但是当我们用安装程序打包Node_modules文件夹时...在复制和解压缩离线下载的node_modules文件时会抛出文件夹路径太长错误。现在,当客户端机器没有互联网并且我们希望使用安装程序将其打包时,问题就来了。我们将如何做。文件路径太长/文件夹路径太长 最佳答案 您可以在Windows10中禁用260个字符的MAX_PATH限制。Aregistrykeyallowsyoutoenableordisablethenewlongpathbehavior.Toenablelongpa

windows - 注册一个COM组件需要什么?

我是.NET开发人员,不熟悉COM。我想知道注册一个COM组件需要什么?注册期间会发生什么。 最佳答案 InorderfortheOStofindacomponentwhenaprogramneedsit,itmustberegisteredwiththesystem.ThesystemthenrecordsitintheRegistry.UsuallyacomponentisregisteredbyrunningtheprogramREGSVR32.EXE,whichassumesthatthecomponenthasbeenpr

windows - 如何更改 cmd.exe 的默认启动目录?

我最后一天的流程如下单击“开始”、“运行”并键入Regedit.exe导航到以下分支:HKEY_CURRENT_USER\Software\Microsoft\CommandProcessor在右Pane中,双击“自动运行”并将启动文件夹路径设置为其数据,前面加上“CD/d”。如果缺少Autorun值,您需要在上述位置创建一个类型为REG_EXPAND_SZ或REG_SZ的值。示例:设置启动目录为D:\learning\perl,设置Autorun值数据为CD/dD:\learning\perl然后我单击“开始”、“运行”并键入cmd。它成功了。我现在可以更方便地练习perl。但是今天