ICspInformation::get_IsSoftwareDevice method (certenroll.h)

The IsSoftwareDevice property retrieves a Boolean value that specifies whether the provider is implemented in software.

This property is read-only.

Syntax

HRESULT get_IsSoftwareDevice(
  VARIANT_BOOL *pValue
);

Parameters

pValue

Return value

None

Remarks

This property only specifies whether a provider is implemented in software. Because a provider can be implemented in both hardware and software, you cannot assume that a value of true for the IsSoftwareDevice property indicates that there is no hardware component. You must also examine the IsHardwareDevice property. The following Microsoft providers return true for the IsSoftwareDevice property:

  • Microsoft Software Key Storage Provider
  • Microsoft Smart Card Key Storage Provider
  • Microsoft Base Cryptographic Provider v1.0
  • Microsoft Base DSS and Diffie-Hellman Cryptographic Provider
  • Microsoft Base DSS Cryptographic Provider
  • Microsoft Base Smart Card Crypto Provider
  • Microsoft DH Schannel Cryptographic Provider
  • Microsoft Enhanced Cryptographic Provider v1.0
  • Microsoft Enhanced DSS and Diffie-Hellman Cryptographic Provider
  • Microsoft Enhanced RSA and AES Cryptographic Provider
  • Microsoft RSA Schannel Cryptographic Provider
  • Microsoft Strong Cryptographic Provider

The Microsoft Smart Card Key Storage Provider and the Microsoft Base Smart Card Crypto Provider also return true for the IsHardwareDevice property. The Certificate Enrollment service assumes a smart card provider if both the IsHardwareDevice and IsSoftwareDevice properties are set, or if the IsRemovable property is set.

Requirements

Requirement Value
Minimum supported client Windows Vista [desktop apps only]
Minimum supported server Windows Server 2008 [desktop apps only]
Target Platform Windows
Header certenroll.h
DLL CertEnroll.dll

See also

ICspInformation