New-ItemProperty -Path HKCU:\Software\Microsoft\Windows\CurrentVersion\Explorer\FileExts\.bmp\OpenWithProgids -Name Paint.Picture -Type None -Value ([byte[]]::new(0)) -Force
适用于Windows 10,但Windows 8.1中存在问题。
答案 0 :(得分:2)
用于调用构造函数的new
静态扩展方法是PowerShell 5.0中的新增功能,PowerShell 5.0是Windows 10附带的Windows PowerShell版本。
在Windows PowerShell 4.0(8.1附带的版本)中,您应该能够通过简单地将空数组转换为byte[]
来获得相同类型的空字节数组,如下所示:[byte[]]@()
。
以前版本的[Microsoft.Win32.RegistryValueKind]
没有None
值,但指定Unknown
并使用[byte[]]
对象作为值将导致相同类型的注册表值条目 - 因此适用于两个平台的版本将是:
New-ItemProperty -Path HKCU:\Software\Microsoft\Windows\CurrentVersion\Explorer\FileExts\.bmp\OpenWithProgids -Name Paint.Picture -Type Unknown -Value ([byte[]]@()) -Force