共用方式為


IMFExtendedCameraControl::SetFlags 方法 (mfidl.h)

設定擷取裝置上屬性的旗標。

語法

HRESULT SetFlags(
  ULONGLONG ulFlags
);

參數

ulFlags

ULONGLONG 對應至屬性旗標。 支援的屬性和旗標定義在 ksmedia.h 中定義的標頭檔,以命名慣例 KSCAMERA_EXTENDEDPROP_常數。 如需詳細資訊,請參閱 KSPROPERTYSETID_ExtendedCameraControl

傳回值

傳回成功時S_OK。

備註

設定屬性旗標之前,您可以呼叫 IMFExtendedCameraControl::GetCapabilities來檢查支援的功能。 下列範例示範查詢 對KSCAMERA_EXTENDEDPROP_VIDEOTORCH_ON 功能的支援。

if (FAILED(m_cameraController->GetExtendedCameraControl(MF_CAPTURE_ENGINE_MEDIASOURCE,
    KSPROPERTY_CAMERACONTROL_EXTENDED_TORCHMODE,
    cameraControl.put())))
{
    // Return false to indicate that the Torch Mode control is not available.
    return false;
}

ULONGLONG capabilities = cameraControl->GetCapabilities();

// Check if the torch can be turned on.
if (capabilities & KSCAMERA_EXTENDEDPROP_VIDEOTORCH_ON)
{
    // Check if the torch is off.
    if ((cameraControl->GetFlags() & KSCAMERA_EXTENDEDPROP_VIDEOTORCH_ON) == 0)
    {
        // Torch is off. Tell the camera to turn it on.
        check_hresult(cameraControl->SetFlags(KSCAMERA_EXTENDEDPROP_VIDEOTORCH_ON));
        // Write the changed settings to the driver.
        check_hresult(cameraControl->CommitSettings());
    }
}

需求

   
最低支援的用戶端 Windows 10組建 20348
最低支援的伺服器 Windows 10組建 20348
標頭 mfidl.h