Registriert seit: 29. Nov 2004
79 Beiträge
RAD-Studio 2009 Pro
|
Re: Sprachversion des OS herausfinden
9. Nov 2008, 18:54
Und was machst du, wenn du ein englisches System mit deutschem Sprachpack hast, oder wenn die Administratoren-Gruppe umbenannt wurde?
Mein Vorschlag wäre, einfach den Namen der Gruppe von Windows zu erfragen:
Delphi-Quellcode:
function AdminGroupName: string;
const
SIDAuthNT: SID_IDENTIFIER_AUTHORITY = (value: (0, 0, 0, 0, 0, 5));
var
pAdminSID: PSID;
Name, Domain: PChar;
LenName, LenDomain: Cardinal;
Use: Cardinal;
Res: BOOL;
begin
if AllocateAndInitializeSid(SIDAuthNT, 2, $20, $220, 0, 0, 0, 0, 0, 0, &pAdminSID) then
try
Name := nil;
LenName := 0;
Domain := nil;
LenDomain := 0;
Res := LookupAccountSid(nil, pAdminSID, Name, LenName, Domain, LenDomain, Use);
if not Res and (GetLastError = 122) then
begin
Name := StrAlloc(LenName);
Domain := StrAlloc(LenDomain);
Res := LookupAccountSid(nil, pAdminSID, Name, LenName, Domain, LenDomain, Use);
end;
if Res then
Result := Copy(Name, 1, LenName);
StrDispose(Name);
StrDispose(Domain);
finally
FreeSid(pAdminSID);
end;
end;
Lasse
|
|
Zitat
|