禁用凭据提供程序上的区域

Disabling areas on Credential Provider

本文关键字:程序上 区域      更新时间:2023-10-16

我正在用cpp为windows 7开发一个凭据提供程序。我想禁用文本框和提交按钮,而系统是在后台工作。为此,我尝试使用下面的代码:

_pCredProvCredentialEvents->SetFieldInteractiveState(this,SFI_EDIT_TEXT,CPFIS_DISABLED);

在这里SFI_EDIT_TEXT代表对象,我想改变它的属性和CPFIS_DISABLED显示它应该被禁用(至少我认为是)。但是我没有得到任何有用的结果。有人能帮忙吗?

有几种情况,使用SetFieldInteractiveState将不起作用。例如,如果用户按下"提交"按钮,将调用您的提供程序GetSerialization函数,并且LogonUI在您从GetSerialization返回之前不会进行GUI更改。我认为GUI的更改只在调用提供商的函数之间进行。

注:我知道这个问题已经提了很久了,但是在将来,也许我的答案可以帮助到别人。