我正在尝试将命令的输出分配给变量 - 例如,我正在尝试将当前的flash版本设置为变量.我知道这是错的,但这是我试过的:
set var = reg query hklm\SOFTWARE\Macromedia\FlashPlayer\CurrentVersion>
要么
reg query hklm\SOFTWARE\Macromedia\FlashPlayer\CurrentVersion >> set var
是的,你可以看到我有点失落.任何和所有的帮助表示赞赏!
在我的powershell脚本中,我为我运行脚本的每个元素创建了一个注册表项,我想在注册表中存储一些关于每个元素的附加信息(如果你指定了一个可选参数,那么默认情况下将来使用这些参数).
我遇到的问题是我需要执行Test-RegistryValue(就像这里)但它似乎没有做到这一点(即使条目存在,它也会返回false).我试图"建立在它之上",我唯一想到的就是:
Function Test-RegistryValue($regkey, $name)
{
try
{
$exists = Get-ItemProperty $regkey $name -ErrorAction SilentlyContinue
Write-Host "Test-RegistryValue: $exists"
if (($exists -eq $null) -or ($exists.Length -eq 0))
{
return $false
}
else
{
return $true
}
}
catch
{
return $false
}
}
Run Code Online (Sandbox Code Playgroud)
不幸的是,它也没有做我需要的,因为它似乎总是从注册表项中选择一些(第一个?)值.
任何人都知道如何做到这一点?为此编写托管代码似乎太多了......
我正在编写一个winforms应用程序,需要设置Internet Explorer的代理设置,然后打开一个新的浏览器窗口.目前,我正在通过进入注册表来应用代理设置:
RegistryKey registry = Registry.CurrentUser.OpenSubKey("Software\\Microsoft\\Windows\\CurrentVersion\\Internet Settings", true);
registry.SetValue("ProxyEnable", 1);
registry.SetValue("ProxyServer", "127.0.0.1:8080");
Run Code Online (Sandbox Code Playgroud)
进入注册表是最好的方法,还是有更推荐的方法?如果有替代解决方案,我想避免注册表更改.
我有一个Windows服务尝试写入LOCAL_MACHINE中的注册表项
密钥是作为Windows安装程序包的一部分创建的,它控制着Windows服务和独立的控制窗口.
控制窗口可以正常读取和写入注册表项,但即使我授予LOCAL SERVICE完全权限,也无法写入注册表项.
这是抛出异常的代码:
private void updateLocalRegistryVersion(Double newVersion)
{
RegistryKey rk = Registry.LocalMachine;
RegistryKey sk = rk.OpenSubKey(@"Software\CompanyName\Monitoring\Values");
sk.SetValue("scriptversion", newVersion.ToString());
}
Run Code Online (Sandbox Code Playgroud)
有什么建议?
我可以阅读注册表HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\VisualStudio\10.0
.但是,它没有给我任何关于它的版本的信息 - 专业/终极或其他.
如何以编程方式(最好是python)获取信息?
我有一个以下的注册表路径
HKEY_LOCAL_MACHINE\SOFTWARE\COMPANY\COMPFOLDER
Run Code Online (Sandbox Code Playgroud)
在内部COMPFOLDER
,我有一个名为"Deno"的字符串值,其值为0.我希望每当执行代码时,通过代码将其值更改为1.谁能帮我?
我编写了一个与Windows XP完美配合的WiX安装程序,但是当安装到Windows 7机箱时,我遇到了注册表项的困难.我需要添加一个HKLM条目以及要在开始菜单中显示的程序的注册表项.这是我用于两种类型的条目的代码:
<!-- Create the registry entries for the program -->
<DirectoryRef Id="TARGETDIR">
<Component Id="RegistryEntriesInst" Guid="...">
<RegistryKey Root="HKLM"
Key="Software\$(var.Manufacturer)\$(var.ProductName)"
Action="createAndRemoveOnUninstall">
<RegistryValue
Type="string"
Name="installed"
Value="true"
KeyPath="yes"/>
</RegistryKey>
</Component>
<Component Id="RegistryEntriesVer" Guid="...">
<RegistryKey Root="HKLM"
Key="Software\$(var.Manufacturer)\$(var.ProductName)"
Action="createAndRemoveOnUninstall">
<RegistryValue
Type="string"
Name="version"
Value="$(var.ProductVersion)"
KeyPath="yes"/>
</RegistryKey>
</Component>
</DirectoryRef>
<!-- To add shortcuts to the start menu to run and uninstall the program -->
<DirectoryRef Id="ApplicationProgramsFolder">
<Component Id="ApplicationShortcut" Guid="...">
<Shortcut Id="ApplicationStartMenuShortcut"
Name="$(var.ProductName)"
Description="..."
Target="[SERVERLOCATION]$(var.Project.TargetFileName)"
WorkingDirectory="SERVERLOCATION"/>
<Shortcut Id="UninstallProduct"
Name="Uninstall $(var.ProductName)"
Description="..."
Target="[System64Folder]msiexec.exe"
Arguments="/x [ProductCode]"/>
<RemoveFolder Id="SERVERLOCATION" On="uninstall"/> …
Run Code Online (Sandbox Code Playgroud) 我从https://www.enthought.com/products/epd/free/下载了Enthought Canopy EPD Free(现在的Canopy Express)并想安装SciKit Learn(http://sourceforge.net/projects/scikit-learn/files /)这不是基本EPD免费安装的一部分.
尝试安装时,在Windows注册表中找不到Python.如何调整注册表以便它识别Python的Enthought版本?
将单个文件名传递给上下文菜单shell命令很简单:
[HKEY_CLASSES_ROOT\*\shell\MyProgram\Command]
@="program.exe %1"
Run Code Online (Sandbox Code Playgroud)
但是,如果我选择多个文件,program.exe
则会为每个这样选择的文件调用.
我想要做的只是调用program.exe
一次,将当前选中的所有文件名传递给它.
这该怎么做?