1、我用AdjustTikenPrivileges提升程序的权限,后两个参数设为nil,翻译时Delphi提示错误,为什么?MSDN上明明说可以设为NULL的。2、在使用LookupPrivilegevalue(nil,SE_DEBUG_NAME,luid)时,Delphi提示SE_DEBUG_NAME未定义,请问它在哪个单元中?3、帮我看看这段代码哪里有问题,执行时除了我的程序以外,无法显示其他正在运行的程序。(我在Win2000下测试的)
--------------------------------------------------
uses
  windows,psapi,……;type
  TFrm = class(Tform)
    Lst: TListBox;
    Btn1: TButton;
    procedure Btn1Click(Sender: TObject);
  private
    procedure ShowProcFileName(var PId: Cardinal);
  public
  end;var
  Frm: TFrm;implementation{$R *.dfm}procedure TFrm.Btn1Click(Sender: TObject);
var
  lProc: array[0..255] of DWORD;
  Need: Cardinal;
  cProc: integer;
  i: integer;
begin
  Lst.Items.Clear;
  EnumProcesses(@lProc,sizeof(lProc),Need);
  cProc:=Need div sizeof(DWORD);
  for i:=0 to cProc do
  begin
    ShowProcFileName(lProc[i]);
  end;
end;procedure TFrm.ShowProcFileName(var PId: Cardinal);
var
  hProc: Cardinal;
  lMdl: array[0..255] of DWORD;
  Need: Cardinal;
  cMdl: Integer;
  i: Integer;
  szFN: PChar;
begin
  hProc:=OpenProcess(PROCESS_ALL_ACCESS,false,PId);
  EnumProcessModules(hProc,@lMdl,sizeof(lMdl),Need);
  cMdl:=Need div sizeof(DWORD);
  for i:=0 to cMdl do
  begin
    GetMem(szFN,255);
    GetModuleFileName(lMdl[i],szFN,255);
    Lst.Items.Add(szFN);
    FreeMem(szFN);
  end;
  CloseHandle(hProc);
end;end.
-----------------------------------------------