Ver Mensaje Individual
  #2  
Antiguo 04-04-2007
Avatar de ArdiIIa
[ArdiIIa] ArdiIIa is offline
Miembro Premium
 
Registrado: nov 2003
Ubicación: Valencia city
Posts: 1.481
Reputación: 24
ArdiIIa Va por buen camino
Cita:
Empezado por yarielrs
Hola ArdiIIa:
lo que yo busco es que cuando yo ejecute mi aplicación esta sepa si se esta ejecutando en un usuario con privilegios de administrador o no, en otra palabras, que me diga si el usuario activo pertenece o no al grupo de usuario administradores esto corriedo mi programa en WinXP...

Te recomendé primero buscar, pensando que alguno de los genios que tenemos en el foro ya habían puesto su pedazo de código, pero lo cierto es que he buscado sobre el asunto y no he visto nada, así que lo pongo yo....
Código Delphi [-]
var
  Form1: TForm1;
  hShell32: HMODULE;
 _IsUserAnAdmin: function(): BOOL; stdcall;

implementation

{$R *.dfm}


function IsUserAnAdmin: Boolean;
const
ModName = 'shell32.dll';
begin
  if Assigned(_IsUserAnAdmin) then
    Result := _IsUserAnAdmin()
  else
  begin
    Result := True;
    if hShell32 = 0 then
      hShell32 := LoadLibrary(ModName);
    if hShell32 <> 0 then
    begin
      _IsUserAnAdmin := GetProcAddress(hShell32, 'IsUserAnAdmin'); 
      if Assigned(_IsUserAnAdmin) then
        Result := _IsUserAnAdmin();
    end;
  end;
end;

procedure TForm1.Button1Click(Sender: TObject);
begin
if isUserAnAdmin then
  ShowMessage('Administrador')
  Else
  ShowMessage('Usuario normal');


end;

Espero que te sea de utilidad.
Fuente CodeGear
__________________
Un poco de tu generosidad puede salvar la vida a un niño. ASÍ DE SENCILLO
Responder Con Cita