Версия для печати темы

Нажмите сюда для просмотра этой темы в обычном формате

Форум «Всё о Паскале» _ Делфи _ Как выставляются права в винде через дельфю..?

Автор: BlackNightFear 26.12.2004 2:43

функции для этого есть GetFileAttr and SetFileAttr
Но что за получаемые значения при этом? какая там логика выставления прав? на первый взгляд никакой логики, каждое значение привязано к определенному набору прав...

Автор: volvo 26.12.2004 3:05

BlackNightFear
Может быть все-таки FileGetAttr и FileSetAttr? Или мы говорим о разных вещах?

Автор: BlackNightFear 26.12.2004 6:28

volvo
да об этих :D
интересно как там вообще выставляются права? почему-то
1 - только чтение
2 - скрытый
3 - только чтение + скрытый
....
как-то они нерационально выставляются.. какая у них связь? ну не верю я что это константы... слишком тупо было бы со стороны майкрософтовцев...

Автор: volvo 26.12.2004 19:54

BlackNightFear
DRKB говорит:

Цитата
FileGetAttr(const FileName: string): Integer;
FileSetAttr(const FileName: string; Attr: Integer): Integer; - функции для работы с атрибутами файлов. Вот список возможных атрибутов:
  faReadOnly
    $00000001 - Read-only files
  faHidden
    $00000002 - Hidden files
  faSysFile
    $00000004 - System files
  faVolumeID
    $00000008 - Volume ID files
  faDirectory
    $00000010 - Directory files
  faArchive
    $00000020 - Archive files
  faAnyFile
    $0000003F - Any file
(Естественно не все атрибуты применимы во всех случаях)

По-моему достаточно для выставления атрибутов... ;)

Автор: GoodWind 26.12.2004 20:08

Вопрос в смежную тему:
А как через Дельфю выставить права для _пользователей_ в Ntfs ?
и вообще возможно ли ?

Цитата
слишком тупо было бы со стороны майкрософтовцев

как и многое другое, что они набурогозили в Выни... :yes:

Автор: BlackNightFear 26.12.2004 20:28

GoodWind
как я сказал так и выставляются... а вот какие константы там, вот про это и вопрос!

Автор: volvo 26.12.2004 20:32

GoodWind

Цитата
А как через Дельфю выставить права для _пользователей_ в Ntfs

В Win32 API есть такая функция NetUserAdd. С ее помощью, насколько я помню... Вот тебе ссылка на ее описание в MSDN: http://msdn.microsoft.com/library/default.asp?url=/library/en-us/netmgmt/netmgmt/netuseradd.asp

BlackNightFear
Не путай. То, что ты сказал - это работа с атрибутами файла, но никак не с правами пользователя... :no:

Автор: GoodWind 26.12.2004 21:04

volvo, я имел в виду права на файлы... :p2:

Автор: volvo 26.12.2004 21:55

Тогда пользуйся http://msdn.microsoft.com/library/default.asp?url=/library/en-us/secauthz/security/getfilesecurity.asp и http://msdn.microsoft.com/library/default.asp?url=/library/en-us/secauthz/security/setfilesecurity.asp

Автор: BlackNightFear 27.12.2004 0:31

volvo
чет ваще не пойму, кто о чем! lol.gif
да действительно первый раз я не заметил про пользователя...
но разве FileGetAttr, FileSetAttr не работают с НТФС?? У меня нтфс и эти функи отлично работают....

Автор: volvo 27.12.2004 0:37

BlackNightFear
Но что ты с помощью этих функций можешь сделать? Только изменить атрибуты файла (Read-only, Archive, Hidden, ...), но никак не назначить, например, нового Owner-а... А GoodWind как раз и говорит об изменении прав на доступ, чтение, запись, изменении Owner-а файла(папки)... Для этого пользуемся SetFileSecurity :low:

Автор: GoodWind 27.12.2004 19:52

volvo, сенкс :thanks: