列表7.1.txt

来自「klinux书籍的配套光盘。可以学习学习。」· 文本 代码 · 共 54 行

TXT
54
字号
【列表7.1】摘录自GetPermissions.pas的程序代码。
Procedure TfrmPermissions.getPermissions;
var
      rv: integer;
      perms: Cardinal;
	      statBuf:TStatBuf;
      filename:String;
begin
      cbSetUID.Checked := false;
      cbSetGID.Checked := false;
      cbSticky. Checked := false;
      cbUserRead.Checked := false;
      cbUserWrite.Checked := false;
      cbUserExecute. Checked:= false;
      cbGroupRead. Checked := false;
      cbGroupWrite. Checked := false;
      cbGroupExecute. Checked := false;
      cbAllRead.Checked := false;
      cbAllWrite. Checked := false;
      cbAllExecute. Checked := false;
      filename := tbFileName. Text;
      rv := stat( PChar( filename ). statBuf ):
      if ( rv = -1 ) then
            ShowMessage( 'Unable to stat file.' )
      else
            begin
            perms := statBuf.st_mode;
            if ( perms And S_ISUID <> 0 ) then
             cbSetUID.Checked := true;
            if ( perms And S_ISGID <> 0 ) then
                  cbSetGID.Checked := true;
    	  if ( perms And S_ISVTX <> 0 ) then
                cbSticky.Checked := true;
          if ( perms And S_IRUSR <> 0 ) then
                cbUserRead.Checked := true;
          if ( perms And S_IWUSR <> 0 ) then
                cbUserWrite. Checked := true;
          if ( perms And S_IXUSR <> 0 ) then
                cbUserExecute. Checked := true;
           if ( perms And S_IRGRP <> 0 ) then
                 cbGroupRead.Checked := true;
           if ( perms And S_IWGRP <> 0 ) then
                 cbGroupWrite. Checked:= true;
           if ( perms And S_IXGRP <> 0 ) then
                 cbGroupExecute. Checked := true;
           if ( perms And S_IROTH <> 0 ) then
                 cbAllRead. Checked := true;
           if ( perms And S_IWOTH <> 0 ) then
                 cbAllWrite. Checked := true;
           if ( perms And S_IXOTH <> 0 ) then
                 cbAllExecute. Checked := true;
            end;
end;

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?