Thema: Delphi Benutzerrechte

Einzelnen Beitrag anzeigen

fredi

Registriert seit: 6. Aug 2003
43 Beiträge
 
Delphi 5 Professional
 
#1

Benutzerrechte

  Alt 28. Okt 2003, 10:12
Hallo alle,
ich möchte von einer Datei die Benútzerrechte erfahren und habe dazu auch ein kleines Beispiel aus dem
Entwickler Ausgabe 6/2003 seite 77 probiert.
Leider bringe ich das nicht zum laufen, folgende fehlermeldungen bekomme ich:
[Fehler] Unit1.pas(30): Undefinierter Bezeichner: 'ISWbemServices'
[Fehler] Unit1.pas(39): Undefinierter Bezeichner: 'SWbemLocator1'

wer kann mir einen tipp geben damit mein Programm diese variablen kennt ?
Ich verwende D5, WIN2000.

danke für eure Hilfe
fredi.

Beispielcode:
Delphi-Quellcode:
uses
  Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
  Buttons, StdCtrls, ShlObj, ActiveX, shellapi;


procedure TForm1.SpeedButton1Click(Sender: TObject);
var
 aSrv :ISWbemServices;
 vObj :OleVariant;
 iRet :Integer;
 vObjDesc :OleVariant;
 vDACL :Variant;
 vDACLEnum :OleVariant;
 vNVS :OleVariant;
 iHigh, iLow, I:Integer;
begin
  aSrv:=SWbemLocator1.ConnetServer('','','','','','',0,vNVS);
  vObj:=aSrv.Get('Win32_LogicalFileSecuritySetting="C:\trace.txt"',0,vNVS);
  iRet:=vObj.GetSecurityDescription(vObjDesc);
  If iRet <> 0 then
    begin
    showMessage(IntToStr(iRet));
    EXIT;
    end;
  vDACL:=vObjDesc.DACL;
  iHigh:=VarArrayHighBound(vDACL, 1);
  iLow :=VarArrayLowBound(vDACL,1);
  for i:=iLow to iHigh do
    begin
    ListBox1.Items.Add(vDACL[i].Trustee.Name);
    ListBox1.Items.Add(vDACL[i].AccessMask);
    end;
end;
[edit=Luckie]Delphi-Tags eingefügt. Beim nächsten mal bitte selber machen. Danke Mfg, Luckie[/edit]
  Mit Zitat antworten Zitat