如何在Windows 7上为特定用户执行RunOnce?

时间:2012-06-06 05:16:55

标签: powershell windows-7 runonce

我知道我可以在Win7注册表中全局设置一个runonce密钥,无论下次使用此注册表项登录哪个用户都会执行该密钥:

HKLM:\ SOFTWARE \微软\的Windows \ CurrentVersion \的RunOnce

我只需要为特定用户进行初始化,所以我想知道是否有一种方法以编程方式(使用Powershell)设置一个只在一个特定用户登录时执行的runonce-entry,如果该用户是不是管理员。

你知道这样做的方法吗?感谢。

1 个答案:

答案 0 :(得分:3)

我认为这个问题和另一个问题(http://stackoverflow.com/questions/10908727/how-can-i-programatically-find-a-users-hkey-users-registry-key-using-powershell)是相关:

无论如何,这是你如何做到的:

$User = New-Object System.Security.Principal.NTAccount($env:UserName)
$sid = $User.Translate([System.Security.Principal.SecurityIdentifier]).value

New-PSDrive HKU Registry HKEY_USERS
Get-Item "HKU:\${sid}"

Set-ItemProperty -Path "HKU:\${sid}\Software\Microsoft\Windows\CurrentVersion\RunOnce" -Name Command -Value "notepad.exe"