Отправляет email-рассылки с помощью сервиса Sendsay
  Все выпуски  

RusFAQ.ru: Программирование на Delphi


Информационный Канал Subscribe.Ru

RusFAQ.ru: Программирование на C++ Builder / Delphi

Выпуск № 356
от 12.07.2004, 10:40

Администратор:
Имя: Калашников О.А.
URL: Информационный ресурс
ICQ: 68951340
Россия, Москва
О рассылке:
Задано вопросов: 1664
Отправлено ответов: 3848
Активность: 231.2 %
[Задать вопрос >>][Регистрация эксперта >>]
[Поиск в базе][Обсудить на форуме]


 Список экспертов, ответы которых опубликованы в данном выпуске

sir henry
Статус: Профессиональный
Общий рейтинг: 164.86
[Подробней >>]
КиберТварь
Статус: Доверительный
Общий рейтинг: 176.19
[Подробней >>]
THE_PRO
Статус: Профессиональный
Общий рейтинг: 133.33
URL: THE_PRO
Телефон: (994 +12) 989647
[Подробней >>]


 Краткий перечень вопросов

Вопрос № 1655. Уважаемые эксперты, скажите как можно защитить дирикторию (папку) от доступа (чтение, изменение). Ут... (ответов: 2)
Вопрос № 1656. Как же перехватывать обращение других приложений к папке? Может быть с помощью function SetWindows... (ответов: 1)
Вопрос № 1657. Как в delphi6 строке(например time:string) присвоить текущее время в формате 08:23:43 (все с ведущим... (ответов: 2)
Вопрос № 1658. Здравствуйте, уважаемые Эксперты! К вопросу 1654 об обновлении таблицы номенклатора. На попытку испо... (ответов: 2)
Вопрос № 1660. Здравствуйте. Sir henry, я понимаю что права можно составить, но задача в том чтоб под одной учеткой... (ответов: 2)

Вопросов: 5, ответов: 9


 Вопрос № 1655

Уважаемые эксперты, скажите как можно защитить дирикторию (папку) от доступа (чтение, изменение). Уточню что менять атрибуты на доступ необходимо програмно и под провами одной и тойже учетной записи в Винде.



Вопрос отправлен: 07.07.2004, 13:01
Отправитель: Иван (vancool@bk.ru)

[Следующий вопрос >>] [Список вопросов]

Отвечает sir henry

Здравствуйте, Иван!
Искренне надеюсь, что учетные записи выдает администратор и только он, иначе ждите непрятностей :). Поэтому оставим за кадром раздачу прав, а перейдем сразу к аттрибутам файлов.
Чтобы получить значение аттрибутов файла или каталога, используется функция:
DWORD GetFileAttributes(LPCTSTR lpFileName);
где параметром имя файла или каталога.
Чтобы установить аттрибуты, используется функция:
BOOL SetFileAttributes(LPCTSTR lpFileName,
DWORD FileAttributes);
где первый параметр - имя файла или каталога, а второй и есть набор аттрибутов.
Аттрибуты:
FILE_ATTRIBUTE_ARCHIVE - архивный,
FILE_ATTRIBUTE_HIDDEN - скрытый,
FILE_ATTRIBUTE_READONLY - только для чтения,
FILE_ATTRIBUTE_SYSTEM - системный.
Там есть еще, поэтому загляните в хелп :).
В СС++ набор аттрибутов задается через ||, а в Дельфи обычным плюсованием.


Ответ отправлен: 08.07.2004, 10:53
Отправитель: sir henry


Отвечает КиберТварь

Здравствуйте, Иван!
Все равно в виндах можно будет изменять

Ответ отправлен: 07.07.2004, 13:19
Отправитель: КиберТварь


 Вопрос № 1656

Как же перехватывать обращение других приложений к папке? Может быть с помощью
function SetWindowsHookEx(idHook: Integer; lpfn: TFNHookProc; hmod: HINST; dwThreadId: DWORD): HHOOK;
а в качестве idHook что брать(какой тип ловушки).
И как потом отказать процессу, который попался?????



Вопрос отправлен: 07.07.2004, 19:45
Отправитель: Иван (vancool@bk.ru)

[Следующий вопрос >>] [Список вопросов]

Отвечает sir henry

Добрый день, Иван!
Не надо их перехватывать, надо грамотно права на доступ поставить (обязательно NTFS!!!!!).

Ответ отправлен: 08.07.2004, 11:10
Отправитель: sir henry


 Вопрос № 1657

Как в delphi6 строке(например time:string) присвоить текущее время в формате 08:23:43 (все с ведущим нулём) при этом использовать winapi есть функция GetTimeFormat но нет примера а описание не понятно



Вопрос отправлен: 07.07.2004, 20:46
Отправитель: menand (menand@narod.ru)

[Следующий вопрос >>] [Список вопросов]

Отвечает КиберТварь

Доброе время суток, menand!
time := TimeToStr(Now);

Ответ отправлен: 08.07.2004, 08:53
Отправитель: КиберТварь


Отвечает sir henry

Здравствуйте, menand!
MyStrTime:=TimeToStr(Time);

Ответ отправлен: 08.07.2004, 14:29
Отправитель: sir henry


 Вопрос № 1658

Здравствуйте, уважаемые Эксперты!
К вопросу 1654 об обновлении таблицы номенклатора.
На попытку использовать функцию Refresh()
ругается следующим образом:
---------------------------
Debugger Exception Notification
---------------------------
Project mdiapp.exe raised exception class EDBEngineError with message \'Table does not support this operation because it is not uniquely indexed.\'. Process stopped. Use Step or Run to continue.
---------------------------
OK Help
---------------------------
Возник вопрос связанный с тем, что в Query упоминается несколько таблиц, попробовал обновлять по отдельности... но все равно получал такое сообщение... В чем дело ума не приложу.
Заранее спасибо за ответ.



Вопрос отправлен: 08.07.2004, 11:41
Отправитель: Vadim

[Следующий вопрос >>] [Список вопросов]

Отвечает THE_PRO

Добрый день, Vadim!
V mesto refresh mojno
Query.Close;
Query.Open;


Ответ отправлен: 08.07.2004, 15:12
Отправитель: THE_PRO


Отвечает sir henry

Приветствую Вас, Vadim!
Подсказка:
"...because it is not uniquely indexed" - "... пока не будет уникального индекса".
После добавление данных в таблицу, ей необходимо сделать Refresh() либо передвинуться по ней вперед или назад, а потом только для TQuery.

Ответ отправлен: 08.07.2004, 12:37
Отправитель: sir henry


 Вопрос № 1660

Здравствуйте. Sir henry, я понимаю что права можно составить, но задача в том чтоб под одной учеткой системой пользовались 20-30 юзеров, и имели бы каждый защищенную папку. Есть прога "Folder Guard" (http://www.winability.com)-защищает папки, мне нужно знать механизм защиты.



Вопрос отправлен: 08.07.2004, 20:46
Отправитель: Ivan (vancool@bk.ru)

[Следующий вопрос >>] [Список вопросов]

Отвечает THE_PRO

Доброе время суток, Ivan!
У меня в какойто книге было про это. Я отпралю копию на ваш
e-mail.
(vancool@bk.ru)

Ответ отправлен: 09.07.2004, 09:58
Отправитель: THE_PRO


Отвечает sir henry

Здравствуйте, Ivan!
Никто не расскажет Вам про механизм защиты в этой программе лучше, чем ее разработчики :)). От меня в этом плане ответа ждать бессмысленно :).
Я подобными вещами раньше не занимался, поэтому мой кругозор только в рамках стандартных решений, типа шифровка файлов и папок по индивидуальному паролю. Однако, судя по описанию на этом сайте, речь по всей видимости идет о перехвате файловых операций у ОС. Примерная схема:
1. Составляется собственная таблица файлов вместо FAT/NTFS;
2. При попытке доступа ОС к файлу или папке, на месте того места в таблице файлов ОС где ссылка на файл(папку), идет ссылка на эту таблицу, а там уже Ваша воля организует доступ :).
Извините, но большего я Вам сообщить не смогу. Сам я, в плане доступа, пользуюсь штатными возможностями системы (NTFS естественно :) и еще не было случая разочароваться :).

Ответ отправлен: 09.07.2004, 05:58
Отправитель: sir henry



Форма отправки вопроса

Внимание!
Мы рекомендуем открывать рассылку в программе Internet Explorer 5.0+ или отправлять вопросы с сайта по адресу: http://rusfaq.ru/cgi-bin/Message.cgi.

(C) 2002-2003 Команда RusFAQ.ru.

 Персональные данные

Ваше имя:

Ваш e-mail:

Опубликовать мой e-mail в рассылке


 Вопрос и дополнение

Ваш вопрос:


Приложение (если необходимо):


Получить ответов:


 Выбор рассылки

Программисту
Assembler (26)
C / C++ (13)
Perl (3)
Builder / Delphi (16)
Pascal (26)
Basic / VBA (5)
Java / JavaScript (4)
PHP (12)
Криптография (7)
WinAPI (11)
Радиоэлектроника (10)
Пользователю
Windows 95/98/Me (38)
Windows NT/2000/XP (56)
"Железо" (36)
Поиск информации (15)
Администратору
Windows NT/2000/XP (30)
Linux / Unix (12)
Юристу
Гражданское право (8)
Семейное право (6)
Трудовое право (7)
КоАП (5)

Отправить вопрос всем экспертам выбранной рассылки.




Задать вопрос | Регистрация эксперта | Поиск в базе | Чат | Форумы | Новости
Проект экспертов RusFAQ.ru | Фотоальбом | Virus.RusFAQ.ru | Администрирование
Профессиональная WEB-Студия B.I.T.


Яндекс цитирования
© 2001-2004 Россия, Москва. Авторское право: Калашников О.А.

http://subscribe.ru/
E-mail: ask@subscribe.ru
Адрес подписки
Отписаться

В избранное