Powershell日期类型无法找到

时间:2018-02-14 23:04:41

标签: powershell types

我正在尝试使用PowerShell连接virustotal API,代码来自virustotal网站,我得到了#34;无法找到类型[System.Security.Cryptography.ProtectedData]。"错误信息。

代码如下

function Get-VTApiKey {
    [CmdletBinding()]
    Param([String] $vtFileLocation = $(Join-Path $env:APPDATA 'virustotal.bin'))
    if (Test-Path $vtfileLocation) {
        $protected = [System.IO.File]::ReadAllBytes($vtfileLocation)
        $rawKey = [System.Security.Cryptography.ProtectedData]::Unprotect($protected, $null, [System.Security.Cryptography.DataProtectionScope]::CurrentUser)

        return [System.Text.Encoding]::Unicode.GetString($rawKey)
    } else {
        throw "Call Set-VTApiKey first!"
    }
}

经过研究后我发现我需要使用add-type来添加一些东西来解决这个问题。有什么建议我需要添加吗? 提前谢谢。

1 个答案:

答案 0 :(得分:2)

The MSDN documentation page将程序集列为System.Security。所以你需要:

Add-Type -AssemblyName System.Security

您可能还需要考虑System.Core其他一些加密功能(google search lists them

Add-Type -AssemblyName System.Core