WINCE设置系统密码和密码验证

WINCE系统下的ntlmssp.dll提供了系统安全性的相关操作,

ntlmssp.h文件定义了下列接口函数:

1.添加用户

BOOL NTLMSetUserInfo(IN LPTSTR pszUser,IN LPTSTR pszPassword);

2.枚举系统所有用户

BOOL NTLMEnumUser(IN DWORD index,OUT LPTSTR pszUser,IN OUT LPDWORD pcchUser );

3.删除指定用户

BOOL NTLMDeleteUser(IN LPTSTR pszUser);

4.添加组

BOOL NTLMAddGroup(IN WCHAR *groupName);

5.删除指定的组

BOOL NTLMRemoveGroup(IN WCHAR *groupName);

6.枚举系统所有的组

BOOL NTLMEnumGroups( IN DWORD index, IN OUT WCHAR *groupName, IN OUT DWORD *dwSizeInChars);

7.添加指定用户到组

BOOL NTLMAddUserToGroup(IN WCHAR *groupName, IN WCHAR *userName);

8.删除指定组中的用户

BOOL NTLMRemoveUserFromGroup(IN WCHAR *groupName, IN WCHAR *userName);

9.枚举指定组中的所有用户

BOOL NTLMGetUserList(IN WCHAR *groupName, IN OUT WCHAR *userList, IN OUT DWORD *pdwccLen);

10.枚举包含指定用户的所有组

BOOL NTLMGetGroupList(IN WCHAR *userName, IN OUT WCHAR *groupList, IN OUT DWORD *pdwccLen);

 

通过NTLMSetUserInfo()可以方便的为系统的web或FTP服务器设置密码。

在EVC工程中引入ntlmssp.h并将ntlmssp.h文件拷入到项目文件夹下。

在程序中调用NTLMSetUserInfo设置用户名密码即可。

 

为系统设置了用户名密码后,但如果想在自己的应用程序中就加个登陆框

或者需要对密码做修改的话,还必须用到密码验证功能,从而来验证指定的用户是否合法。

仔细看了下ntlmssp.h,发现没有提供密码验证相关的接口函数,后来再Google上找到了解决方法:

系统提供了AuthHelp API(authhlp.lib)来对密码进行验证(定义在authhlp.h文件中).

通过AuthHelpValidateUser()函数即可实现密码验证。

函数原型:

BOOL AuthHelpValidateUserA(PSTR pszRemoteUser, PSTR pszPassword, TCHAR *pszACL, DWORD dwFlags);
BOOL AuthHelpValidateUserW(PWSTR wszRemoteUser, PWSTR wszPassword, TCHAR *pszACL, DWORD dwFlags);

其中AuthHelpValidateUserA的参数用户名密码为ASCII码;

AuthHelpValidateUserW的参数用户名密码为Unicode字符串;

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值