我想在注册表中存储一个System.SecureString。那可能吗?我将如何着手去做?下次运行时我的程序是否能够再次解密字符串? 最佳答案 如果没有辅助层,就不可能以加密形式进行操作。它本身不支持任何形式的序列化,实际上甚至无法以其原生形式进行检查。要从中获取任何信息,您需要通过PInvoke或SecureStringToBSTRAPI。这两者都可以让您以未加密的形式访问string。我可以看到这个工作的一种方式是通过SecureStringToBSTR将SecureString转换为BSTR加密BSTR将结果存储在注册表中当然
我正在使用reg->SaveKey("Software","D:\1.reg")。但是得到空文件,没有数据。void__fastcallTForm1::Button2Click(TObject*Sender){TRegistry*reg=newTRegistry(KEY_READ);reg->RootKey=HKEY_LOCAL_MACHINE;reg->OpenKey("Software",0);;reg->SaveKey("Software","D:\\1.reg");deletereg;} 最佳答案 SaveKey是对RegS
我正在尝试编写一个应用程序,我可以在其中提供一个注册表路径,例如HKLM\hardware\description\system并且我的应用程序应该在系统下读取每个键名,如果有子键它们的名字,如果还有更多的子项然后他们的名字等等...我的应用程序正在运行(或多或少),但我的问题是如何计算子键?比如system下有2个key,a和b,a下多了3个key,b下多了5个,那我应该怎么算自己在哪个sublevel呢?这很重要,因为我必须知道如何连接注册表路径?到目前为止,这是我的代码(大部分来自msdn,但我找不到类似的示例):#include#include#include#include#
我编写了一个Windows软件,并为该程序关联了一个文件扩展名。当我双击一个数据文件时,我的程序就会启动并打开该文件。到目前为止它有效。但是当我选择多个文件然后在上下文菜单中单击“打开”时,我的程序的多个实例将启动,一个文件一个实例。我希望Windows使用我的程序的单个实例打开所有文件。如果不在我的程序中实现单实例处理程序,这是否可能?当前注册表中的MyFileType/shell/open/command如下所示:"C:\ProgramFiles\MyApp\MyApp.exe""%1"也许我必须使用一些特殊的token/变量来代替“%1”才能使其正常工作?在Linux上,我必须对
读取是涉及磁盘还是只涉及RAM?它是否始终可供阅读,或者是否有任何限制,例如某些用户将降低安全性而无法阅读? 最佳答案 注册表存储在磁盘上,但会被缓存(在某种程度上),因此您基本上是从磁盘读取,尽管有时您会获得缓存版本。虽然一般来说,所有用户都对注册表具有只读访问权限,但有些部分(例如其他用户配置文件)将无法访问。您应该始终对HKEY_LOCAL_MACHINE具有只读访问权限(HKEY_LOCAL_MACHINE\SAM和HKEY_LOCAL_MACHINE\SECURITY除外,它们受到限制并且只能以本地系统权限读取)和HK
我正在用VBA编写一个脚本,它将监视注册表值,如果它发生更改,脚本将覆盖它。到目前为止,我编写了一个脚本来检查注册表中的值并将其更新为给定值。但我的问题是如何每2分钟或值更改时更新一次注册表?请帮忙!!!OnErrorResumeNextHKEY_CURRENT_USER=&H80000001strComputer="."SetobjReg=GetObject("winmgmts:\\"&strComputer&"\root\default:StdRegProv")strKeyPath="ControlPanel\Desktop"ValueName="ScreenSaveActive"
我有NSI脚本和编译安装程序,其中包含以下代码:WriteRegStrHKLM"Software\Microsoft\Windows\CurrentVersion\Uninstall\${NAME}""DisplayName""${NAME}"WriteRegStrHKLM"Software\Microsoft\Windows\CurrentVersion\Uninstall\${NAME}""InstallLocation""$\"$INSTDIR$\""WriteRegStrHKLM"Software\Microsoft\Windows\CurrentVersion\Uninsta
我正在尝试读取Windows注册表以找出安装了哪些脚本环境以及独立解释器可执行文件的位置。比如我做python的时候搜索HKEY_LOCAL_MACHINE/SOFTWARE/Python/PythonCore/InstallPath这为我提供了环境的python可执行文件的安装路径,这让我可以找到我是否有python2.7、3等以及这些exe所在的位置。我正在为Luaforwindows寻找类似的东西。我必须使用注册表进行此搜索。 最佳答案 尼科尔说的。通过对照已知可执行文件列表扫描PATH会更好地为您服务(但即使这样也不能保证,
我有一个wpf应用程序,我已通过执行以下操作将其注册为URI方案。HKEY_CLASSES_ROOT-->myappname-->shell-->open-->command(Default)="c:\pathtomyapp\app.exe"太棒了!但是,我的应用程序强制一次只能运行一个实例。如何检测我的应用程序是否已在运行,例如将其置于前台? 最佳答案 您可以使用命名的互斥锁来检测应用程序是否已经在运行。或者,如果您有一个GUI应用程序,您可以从VisualBasic'sSingleInstanceapplication继承您的表
我懂一点编程。我想知道是否有办法在每次有人插入USB驱动器时弹出一个消息框,说“这是经过批准的设备吗?”.我想知道是否有办法将其插入注册表项或其他内容?或者,也许您对如何执行此操作有想法。 最佳答案 您可以使用Win32_DeviceChangeEvent检测USB设备插入WMI事件。还有其他方式,比如WM_DEVICECHANGE,但PowerShell已经知道如何处理WMI事件。$query="SELECT*FROMWin32_DeviceChangeEventWHEREEventType=2"Register-WMIEvent