我正在使用cpp为Windows 7创建凭证提供程序。我想在系统在后台运行时禁用文本框并提交按钮。为此,我尝试使用以下代码:
_pCredProvCredentialEvents->SetFieldInteractiveState(this,SFI_EDIT_TEXT,CPFIS_DISABLED);
此处SFI_EDIT_TEXT
表示我想要更改其属性的对象,CPFIS_DISABLED
表示应该禁用它(至少我认为是这样)。但我没有得到任何有用的结果。任何人都可以提供帮助吗?
答案 0 :(得分:1)
有几种情况,使用SetFieldInteractiveState
无效。例如,如果用户按下了“提交”按钮,将调用您的提供者GetSerialization
函数,在您从GetSerialization
返回之前,LogonUI不会进行任何GUI更改。我认为GUI的更改只能在提供者函数的调用之间进行。
P.S。我知道,很久以前就提出过这个问题,但将来也许,我的回答可以帮助别人。