NetValidatePasswordPolicy проблема в XP
Мой проект требует, чтобы он проверял сложность пароля перед созданием новой учетной записи.
My code looks like:
NET_API_STATUS status;
NET_VALIDATE_PASSWORD_CHANGE_INPUT_ARG inputArg = {0};
NET_VALIDATE_OUTPUT_ARG* pOutputArg = NULL;
inputArg.ClearPassword = NewPass;
inputArg.PasswordMatch = TRUE;
status = NetValidatePasswordPolicy(DC, NULL, NetValidatePasswordChange,
&inputArg, (void**)&pOutputArg);
printf("status: %d, validationStatus: %d\n", status, pOutputArg->ValidationStatus);
NetValidatePasswordPolicyFree((void**)&pOutputArg);
Я работаю на Windows XP. Когда я пытаюсь запустить, он выдает следующее высказывание:
Не удалось найти точку входа в процедуру NetValidPasswordPolicyFree в библиотеке динамических ссылок NETAPI32.dll
В MSDN говорится, что API действителен только на сервере 2003 и сервере 2008. Значит ли это, что он не может работать на XP? Или я могу найти какие-либо другие API, чтобы сделать то же самое, что NetValidPasswordPolicy?
Я много гуглил по этой проблеме и обнаружил, что кто-то задал похожий вопрос, но он остался без ответа:(. Итак, я пытаюсь попытать счастья.
Даже я пытался анализировать 'NETAPI32.dll'
в Reflector.exe, но при открытии файла.dll выдает ошибку: ссылка на объект не установлена для экземпляра объекта.
Я застрял плохо и не мог найти пути. Любая помощь будет оценена:)
1 ответ
Вопрос решен:).
NetValidPasswordPolicy
API от 'NETAPI32.dll'
имеет требования, что он не поддерживается клиентом. Из-за этого требования я получаю предупреждение: Entry point not found.
Я попробовал свой проект на сервере Windows 2003, и он работал.
И мой второй вопрос о Reflector.exe также недействителен, потому что 'NETAPI32.dll'
это не.Net dll, поэтому Reflector не распознает его.