#c #windows #credentials #credential-providers
#c #Windows #учетные данные #поставщики учетных данных
Вопрос:
Я работаю над поставщиком учетных данных для Windows 7 с cpp. Я хочу отключить текстовые поля и кнопку отправки, пока система работает в фоновом режиме. Для этого я попытался использовать приведенный ниже код:
_pCredProvCredentialEvents->SetFieldInteractiveState(this,SFI_EDIT_TEXT,CPFIS_DISABLED);
Здесь SFI_EDIT_TEXT
представляет объект, свойства которого я хочу изменить, и CPFIS_DISABLED
показывает, что он должен быть отключен (по крайней мере, я предполагаю, что это так). Но я не получил никакого полезного результата. Кто-нибудь может помочь?
Ответ №1:
Существует несколько ситуаций, когда использование SetFieldInteractiveState
не будет работать. Например, если пользователь нажал кнопку «Отправить», GetSerialization
будет вызвана ваша функция поставщика, и LogonUI не внесет никаких изменений в графический интерфейс, пока вы не вернетесь из GetSerialization
. Я думаю, что изменения графического интерфейса выполняются только между вызовами функций вашего провайдера.
PS Я знаю, что этот вопрос был задан давно, но в будущем, возможно, мой ответ может помочь другим.