kickerxy123
Erfahrenes Mitglied
Hallo Community!
Ich habe mal wieder ein Problem.
Rahmenbedingungen:
--Dev-Cpp 5.0
--Windows 7 Enterprise [soll auch auf WinXP WinServer2003 und WinServer2008 lauffähig sein]
Zum Problem:
Ich möchte von einem Server gewisse Informationen per WinAPI abrufen und verändern.
dies klappt soweit auch ohne Probleme. Da der Account meiner Workstation mit der ich programmiere in der Domäne zu wenig Rechte hat, brauch ich in meinem Programm eine "RunAsOtherUser"-Funktionalität.
Hier mein Quelltext- Ausschnitt:
Jetzt weiß ich nicht, woran genau der Aufruf scheitert.
Eine weitere Abfrage mit
liefert mir SUCCESS. Daraus folgere ich eigentlich, dass der Domaincontroller den User kennt. Dass das Passwort richtig ist, weiß ich natürlich.....
Hat jemand eine idee? Zu erwähnen wäre vielleicht noch, dass das ganze mit UNICODE kompiliert wird; die Funktion LogonUser aber nicht (LogonUserA(....)).
Weiß da jemand Rat?
Vielen Dank,
kickerxy
Ich habe mal wieder ein Problem.
Rahmenbedingungen:
--Dev-Cpp 5.0
--Windows 7 Enterprise [soll auch auf WinXP WinServer2003 und WinServer2008 lauffähig sein]
Zum Problem:
Ich möchte von einem Server gewisse Informationen per WinAPI abrufen und verändern.
dies klappt soweit auch ohne Probleme. Da der Account meiner Workstation mit der ich programmiere in der Domäne zu wenig Rechte hat, brauch ich in meinem Programm eine "RunAsOtherUser"-Funktionalität.
Hier mein Quelltext- Ausschnitt:
C++:
string loginName = "Peter";
string loginDomain = "domaincontroller.subdomäne.domäne.com.";//FQDN
string loginPw = "Passwort";
HANDLE networkToken = NULL;
CHAR* cLoginName = (CHAR*)&loginName[0];
CHAR* cLoginDomain = (CHAR*)&loginDomain[0];
CHAR* cLoginPw = (CHAR*)&loginPw[0];
if(0 == LogonUserA(cLoginName, cLoginDomain, cLoginPw, LOGON32_LOGON_INTERACTIVE,
LOGON32_PROVIDER_DEFAULT, &networkToken))
{
//ErrorHandling ergibt "ERROR_LOGON_FAILURE" -->bad credentials
}
Jetzt weiß ich nicht, woran genau der Aufruf scheitert.
Eine weitere Abfrage mit
C++:
//Pseudocode
NetUserGetInfo(loginDomain, loginName,0,0)
Hat jemand eine idee? Zu erwähnen wäre vielleicht noch, dass das ganze mit UNICODE kompiliert wird; die Funktion LogonUser aber nicht (LogonUserA(....)).
Weiß da jemand Rat?
Vielen Dank,
kickerxy
Zuletzt bearbeitet: