收藏本站 收藏本站
积木网首页 - 技术学院 - 软件测试 - 网站黄页 - 常用手册 - 站长工具 - 技术社区
首页 > Powershell > 正文

首页 - PHP - 数据库 - 操作系统 - 游戏开发 - JS - Android - MySql - Redis - MongoDB - Win8 - Shell编程 - DOS命令 - jQuery - CSS样式 - Python - Perl

Access - Oracle - DB2 - SQLServer - MsSql2008 - MsSql2005 - Sqlite - PostgreSQL - node.js - extjs - JavaScript vbs - Powershell - Ruby

使用PowerShell修改注册表

下面的例子里, PowerShell修改了注册表键值, 完成了Security loop disable, 和loopbackcheck disable.

#Security loop disable so that you can look at it on the same machine

if(($gchn = Get-ItemProperty "HKLM:SYSTEMCurrentControlSetControlLsaMSV1_0" -Name "BackConnectionHostNames" -ea SilentlyContinue) -eq $null){

New-ItemProperty "HKLM:SYSTEMCurrentControlSetControlLsaMSV1_0" -PropertyType MultiString -Value "$url" -Name "BackConnectionHostNames"

}else{

Set-ItemProperty "HKLM:SYSTEMCurrentControlSetControlLsaMSV1_0" -Name "BackConnectionHostNames" -Value ($gchn.BackConnectionHostNames+" $url")

}

 

#disable loobback check

if((Get-ItemProperty "HKLM:SYSTEMCurrentControlSetControlLsa" -Name "DisableLoopbackCheck" -ea SilentlyContinue) -eq $null){

New-ItemProperty "HKLM:SYSTEMCurrentControlSetControlLsa" -PropertyType DWORD -Value "1" -Name "DisableLoopbackCheck"

}

实例给大家了,下面分享一些powershell操作注册表的方法吧

访问注册表键值

在PowerShell中,用户可以通过类似于HKCU:(作为HKEY_CURRENT_USER)和HKLM:(代表HKEY_LOCAL_MATCHINE)的虚拟驱动器访问注册表键值。
如:Dir Registry::HKEY_LOCAL_MACHINESoftware
通过这种方式用户可以很容易的复制、粘贴注册表内的键值,用户可以通过下面的命令获取已经注册的文件后缀:
dir Registry::HKEY_CLASSES_ROOT.* -name | Sort-Object

读取注册表键值

在PowerShell中,用户能够以虚拟驱动器的形式来处理注册表的内容
下面的Get-RegidtryValues函数列举存储在一个注册表键值下的所有键值,完整代码如下所示:

 
function Get-RegistryValues($key) { 
         (Get-Item $key).GetValueNames() 
}

Get-RegistryValues HKLM:SoftwareMicrosoftWindowsCurrentversion

Get-RegistryValue读取任意注册表键值并返回其内容,完整代码如下所示:

function Get-RegistryValue($key, $value) { 
         (Get-ItemProperty $key $value).$value 
} 
Get-RegistryValue ' HKLM:SoftwareMicrosoftWindowsCurrentversion' ` 


SM_GamesName

写入注册表键值

添加或修改注册表键值在PowerShell中也是很方便的就可以完成的,下面创建名为Set-RegistryValue函数用来操作注册表键值,以下是完整的代码:

function Set-RegistryValue($key, $name, $value, $type="String") { 
 if ((Test-Path $key) -eq $false) { md $key | Out-Null } 
    Set-ItemProperty $key $name $value -type $type 
 } 
  Set-RegistryValue HKCU:SoftwareTestABC myValue Hello 
  Set-RegistryValue HKCU:SoftwareTestABC myValue 12 Dword 
  Set-RegistryValue HKCU:SoftwareTestABC myValue ` 
([Byte[]][Char[]]"Hello") Binary

移除注册表键值

通过Remove-Item删除目标注册表键,函数Remove-RegistryKey的完整代码如下所示:

function Remove-RegistryKey($key) { 
Remove-Item $key -Force 
}

通过Remove-ItemProperty函数删除注册表值,完整的代码如下所示:

function Remove-RegistryValue($key, $value) { 
Remove-ItemProperty $key $value 
}

浅谈CMD和win powershell的区别
cmd是和powershell都可以做命令行交互,批处理和powershell脚本功能也相当。我不知道你怎么理解cmd,但下面是powershell是基于.net的,只要你足够了解.net,你

Powershell实现编写和运行脚本
一个Powershell仅仅是一个包含Powershell代码的文本文件。如果这个文本文件执行,Powershell解释器会逐行解释并执行它的的语句。Powershell脚本非常像以前CMD

PowerShell打开或关闭光驱
机箱没有选好,光盘的出仓/收仓键被挡住了,用起来很别扭.记得有一款小软件可以控制光驱的出仓与收仓.搜索了一下使用的WindowsAPI.编写了下面的代码,希

本周排行

更新排行

强悍的草根IT技术社区,这里应该有您想要的! 友情链接:b2b电子商务
Copyright © 2010 Gimoo.Net. All Rights Rreserved  京ICP备05050695号