共用方式為


IEnumCERTVIEWCOLUMN::GetValue 方法 (certview.h)

GetValue 方法會擷取數據行列舉序列中目前數據行中包含的數據值。

語法

HRESULT GetValue(
  [in]  LONG    Flags,
  [out] VARIANT *pvarValue
);

參數

[in] Flags

標識元,表示所擷取數據的輸出格式。 此參數可以是下列其中一個值。

意義
CV_OUT_BASE64
不含 BEGIN/END 的 BASE64
CV_OUT_BASE64HEADER
使用 BEGIN CERTIFICATE 和 END CERTIFICATE 的 BASE64
CV_OUT_BASE64REQUESTHEADER
BASE64 搭配 BEGIN NEW CERTIFICATE REQUEST 和 END NEW CERTIFICATE REQUEST
CV_OUT_BASE64X509CRLHEADER
BASE64 搭配 BEGIN X509 CRL 和 END X509 CRL
CV_OUT_BINARY
二進位
CV_OUT_HEX
十六進位字串
CV_OUT_HEXADDR
具有位址/位移的十六進位字串
CV_OUT_HEXASCII
具有 ASCII 的十六進位字串
CV_OUT_HEXASCIIADDR
具有 ASCII 和位址/位移的十六進位字串

[out] pvarValue

VARIANT 型別值的指標,其中包含數據行。 如果 pvarValueNULL,這個方法就會失敗。 成功完成這個方法時, pvarValue 會包含數據行中的數據。 呼叫端負責在完成此數據時呼叫 VariantClear

傳回值

C++

如果方法成功,方法會傳回S_OK。

如果方法失敗,它會傳回 HRESULT 值,指出錯誤。 如需常見錯誤碼的清單,請參閱 一般 HRESULT 值

VB

傳回值是 Variant ,代表數據行中的數據。

備註

這個方法可用來擷取數據行列舉序列目前所參考之數據行中的數據。

如果數據行列舉序列未參考有效的數據行, GetValue 將會失敗。 使用下列其中一種方法來巡覽列舉:

範例

HRESULT     hr;
VARIANT     var;
SYSTEMTIME  systime;

VariantInit(&var);

// pEnumCol is previously instantiated IEnumCERTVIEWCOLUMN object
hr = pEnumCol->GetValue(CV_OUT_HEX, &var);
if ( FAILED (hr) )
{
    printf("Failed GetValue - %x\n", hr);
    goto error;
}
switch( var.vt )
{
    case VT_EMPTY:
        printf( "VT_EMPTY\n" );
        break;
    case VT_BSTR:
        printf("%ws\n", var.bstrVal );
        break;
    case VT_DATE:
        VariantTimeToSystemTime( var.date, &systime );
        printf("%d.%d.%d %02d:%02d:%02d\n",
               systime.wMonth,
               systime.wDay,
               systime.wYear,
               systime.wHour,
               systime.wMinute,
               systime.wSecond );
        break;
    case VT_I2:
        printf("%d\n", var.iVal );
        break;
    case VT_I4:
        printf("%d\n", var.lVal );
        break;
    default:
        printf("type is:%i\n", var.vt );
        break;
}
// done processing, clear resources
VariantClear( &var );

規格需求

需求
最低支援的用戶端 都不支援
最低支援的伺服器 Windows Server 2003 [僅限傳統型應用程式]
目標平台 Windows
標頭 certview.h (包含 Certsrv.h)
程式庫 Certidl.lib
Dll Certadm.dll

另請參閱

IEnumCERTVIEWCOLUMN

IEnumCERTVIEWCOLUMN::Next

IEnumCERTVIEWCOLUMN::Reset

IEnumCERTVIEWCOLUMN::Skip