使用vc ++使用凭据提供程序

时间:2016-10-19 05:38:16

标签: visual-c++ credential-providers

我正在开发自定义凭据提供程序Windows登录。我正在使用网络摄像头进行人脸识别,我想在窗口登录屏幕的TILEIMAGE中显示网络摄像头的预览。

我使用回调功能从网络摄像头获取了一个帧,但我无法在TILEIMAGE中显示每个帧。只有在用户点击任何组件时才会更改图像。

{   
void CSampleCredential::OnFrameRecieve(BYTE * pBuffer, long BufferSize)
{
    HWND hwndOwner = NULL;

    HDC hMem = CreateCompatibleDC ( GetDC ( NULL ) ) ;
    HBITMAP bbmp=CreateBitmapFromPixels(hMem,320,240,24,pBuffer);

    BufferSize=BufferSize;

    if (_pCredProvCredentialEvents)
    {
        _pCredProvCredentialEvents->OnCreatingWindow(&hwndOwner);

        HRESULT res =_pCredProvCredentialEvents->SetFieldBitmap(this,SFI_TILEIMAGE,bbmp);

        BufferSize=BufferSize;
        res=res;

        ::MessageBox(hwndOwner, L"OnFrameRecieve", L"True", 0);
    }
}
    }

我如何实时更新TILEIMAGE?

1 个答案:

答案 0 :(得分:1)

为了在GUI中持续显示任何更新,您可以强制提供商使用

再次枚举您的凭据

一个很好的起点是V1 samplehardwareeventcredentialprovider