Как разблокировать экран входа в Windows

во-первых, я должен сказать, что я знаю, что эта тема не нова, и на StackOverflow есть несколько существующих тем, но я не нашел решения своей проблемы.

Я знаю, что для разблокировки экрана Windows (Win 7 или 8) я должен использовать Credential Provider, поэтому я загружаю

http://www.microsoft.com/en-us/download/details.aspx?id=4057

И пишите мой код на чистом C++. В моем случае MS предоставила «SampleHardwareEventCredentialProvider» идеальное совпадение. Также я прочитал другой поток SO и знаю, что «есть WinLogon и LogonUI. LogonUI отвечает за отображение окна входа в систему и уведомление WinLogon о действиях пользователей. Winlogon реагирует на события от LogonUI и выполняет необходимые действия для входа пользователей, выключить пользователей, заблокировать сеансы и разблокировать сеансы».

Я пытаюсь создать внешнее аппаратное событие, которое разблокирует мой компьютер. В моем случае у меня было событие Bluetooth, которое разблокировало мою Windows.

И моя проблема в том, что данный класс:

class CSampleCredential : public ICredentialProviderCredential

и его реализованный метод:

HRESULT CSampleCredential::Initialize(
    CREDENTIAL_PROVIDER_USAGE_SCENARIO cpus,
    const CREDENTIAL_PROVIDER_FIELD_DESCRIPTOR* rgcpfd,
    const FIELD_STATE_PAIR* rgfsp
)

Я не знаю, как код C++ точно может разблокировать экран Windows.

Что меня зацепило? Пробую с методом Initialize, потому что видел похожий пример (но без возможности повторного использования из-за неполноты):

http://blogs.msdn.com/b/securitytools/archive/2009/07/30/how-to-build-custom-logon-ui-s-in-windows-vista.aspx

Итак, я попробовал две вещи: -CSampleCredential::Initialize() -BOOL LogonUser() -with "localhost" "userName" "userPassword"

но оба они не работали для меня. Итак, что такое ключевая точка (codeLine), которая разблокирует синий экран Windows пользователя?


person Community    schedule 19.12.2014    source источник
comment
Для какой версии Windows это предназначено?   -  person ZivS    schedule 19.12.2014
comment
в настоящее время я работаю на Windows 7   -  person    schedule 19.12.2014