1

Windows の証明書マネージャーで証明書のプロパティ ウィンドウを開くと、わかりやすい名前と説明の両方のフィールドが表示されます。powershell を介してプログラムで説明フィールドにアクセスしようとしています。

PowerShell の証明書プロバイダー cert を介して証明書にアクセスすると、FriendlyName のみを Name として公開するオブジェクトが取得されます。

私が知る限り、これはすべて CAPICOM API のラッパーです。説明も get_extendedproperties メソッドも公開されていません。

powershell 経由で問題のある説明フィールドにアクセスするにはどうすればよいですか? 私は単にやろうとしたことに注意してください

$store = new-object -com "CAPICOM.Store" 

This LinkでCAPICOM api を直接使用するには、64 ビット Win2K8 ボックスで 80040154 エラーが発生します。

4

1 に答える 1

1

x64の代わりにx86Powershellを開きます。これで始められるはずです:

$store = new-object -com "CAPICOM.Store"
$store.Open(2, "CA", 1)
$store | fl *
$store.Certificates
$store.Certificates | %{ $_.display() }
$store.Certificates | %{ $_.extendedproperties() }
于 2009-02-25T16:38:40.193 に答える