Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
Форум программистов > Общие вопросы по .NET и C# > NetUserSetInfo в Windows Server 2008 R2 |
Автор: Dale 3.12.2009, 19:16 |
Я использую функцию NetUserSetInfo в веб-приложении (ASP. Net 3.5, C #). Она работает в Windows Server 2003, но не в Windows Server 2008 R2 (результат - ERROR_ACCESS_DENIED). Вот мой код: [StructLayout(LayoutKind.Sequential, CharSet = CharSet.Unicode)] struct USER_INFO_1003 { public string usri1003_password; } [DllImport("Netapi32.dll")] private extern static int NetUserSetInfo([MarshalAs(UnmanagedType.LPWStr)] string servername, [MarshalAs(UnmanagedType.LPWStr)] string username, int level, ref USER_INFO_1003 buf, out int error); public static bool ChangePassword(string userName, string newPassword) { int errorCode = 0; string serverName = null; USER_INFO_1003 amUser = new USER_INFO_1003(); amUser.usri1003_password = newPassword; int res = NetUserSetInfo(serverName, userName, 1003, ref amUser, out errorCode); return (res == 0); } Пользователь, запустившый этот код авторизирован (с NTLM) в качестве администратора Windows. Та же проблема с другими основными функциями ОС. В чем проблема? |