![]() |
|
Модераторы: Poseidon, Snowy, bems, MetalFan |
![]()
|
|
| <<Багира>> |
|
|||
|
Unregistered |
Привет, дорогие Дельфисты!!!
Фрагмент алгоритма моей программы: 1. Сбор данных с датчиков установок. 2. На диске находится файл… 2.1. …невидимый для пользователя 3. Обращаемся к файлу по имени, проверяем существование. 4. Если файл существует: 4.1. Каким-то образом сделать его видимым 4.2. Добавить нужную запись 5. Если файл не существует: 5.1. Создать новый файл 5.2. Добавить нужную запись 6. Когда все записи добавлены: 6.1. .. как-то снова сделать файл невидимым 6.2. Закрыть файл. Подскажите, пожалуйста, как организовать пункты 2.1, 4.1, 6.1 – свойство невидимости для пользователя (что это вообще такое?), снятие невидимости и доступ к файлу, а затем – снова невидимость? Все остальные пункты давно работают, но возникла необходимость оградить файлы от любопытных глазок и шаловливых ручек пользователей. Речь идет о контроле продукции, выпускаемой чужим предприятием для нашего – отсюда и требование защиты файла. Заранее благодарна, Багира (зашедшая с чужого компа) |
|||
|
||||
| Snowy |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 11363 Регистрация: 13.10.2004 Где: Питер Репутация: 192 Всего: 484 |
Сделать полностью невидимым невозможно.
Разве что на период работы виндов (до перезагрузки). Варианты: 1. Шифровать файл. 2. Во время работы постоянно держать его открытым с флагами DenyRead и DenyWrite. 3. Установить ограничение по правам. 4. Спрятать его в такое место, где глупый пользователь его не найдет. 5. Расположить данные в уже существующем файле, который не вызывает у пользователя подозрения. |
|||
|
||||
| bagira |
|
|||
|
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 2858 Регистрация: 25.10.2003 Где: в тайге Уральских гор Репутация: нет Всего: 123 |
Пожалуй, так пока попробую. Просто со временем проблема. А потом уже разберусь по-настоящему (это я задавала вопрос -------------------- Сегодня ты не бродил, не искал, не любил - можно сказать - и не жил... Ф.Х. Дагларджа (Турция) http://zveriolginovour.ru/ https://vmeste.yandex.ru/zveriolginovour |
|||
|
||||
| Snowy |
|
||||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 11363 Регистрация: 13.10.2004 Где: Питер Репутация: 192 Всего: 484 |
Можно комбинировать два или все варианты сразу.
Мы догадались |
||||
|
|||||
| mvdr |
|
|||
|
физик ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 1349 Регистрация: 31.12.2004 Где: Волгоград, Россия Репутация: 1 Всего: 42 |
или делать резервную копию при сохранении. При загрузке проверять дату, и при различных датах загружать более позднюю
-------------------- Появляюсь редко, но часто метко Изображать идиота сложнее, чем изображать умного: полезнее и не каждому дано |
|||
|
||||
| bagira |
|
|||
|
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 2858 Регистрация: 25.10.2003 Где: в тайге Уральских гор Репутация: нет Всего: 123 |
Ну а вообще, ведь есть в Windows такое свойство файла, как невидимость. Если оно в принципе есть, неужели нельзя как-то программмно получить к нему доступ и менять его? Снять, добавить запись, затем снова защитить невидимостью? Что-то ведь должно быть подобное? Жаль, не смогла найти...
-------------------- Сегодня ты не бродил, не искал, не любил - можно сказать - и не жил... Ф.Х. Дагларджа (Турция) http://zveriolginovour.ru/ https://vmeste.yandex.ru/zveriolginovour |
|||
|
||||
| markowww |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 66 Регистрация: 27.2.2003 Где: В Вологде-где Репутация: нет Всего: нет |
Если под невидимым понимается скрытый, то можно так:
Только я не уверен, что аттрибут "скрытый" как то будет влиять на права доступа к файлу. P.S. Взято из хелпа к D7. Это сообщение отредактировал(а) markowww - 22.6.2005, 22:11 |
|||
|
||||
| Snowy |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 11363 Регистрация: 13.10.2004 Где: Питер Репутация: 192 Всего: 484 |
Да. Просто устанавливаем файлу аттрибут hidden. Чтобы после этого к нему обращаться, не нужно атрибут снимать. Работаем как и обычно. Просто пользователь этого файла не увидит, если в его шелле не будет выставлен параметр "Показывать скрытые файлы". Но абсолютно скрыть не удастся. Любой пользователь при желании сможет их увидеть. По умолчанию конечно нет. Но это не абсолютная защита. |
|||
|
||||
| bagira |
|
||||||
|
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 2858 Регистрация: 25.10.2003 Где: в тайге Уральских гор Репутация: нет Всего: 123 |
markowww Да, именно скрытый, это я не так выразилась!
Snowy Спасибо! Надо попробовать так и сделать пока. Правда устанавливать атрибут буду программно - ведь каждый день файлы разные.
Пользователи совсем не продвинутые, можно сказать, не очень квалифицированные. Добавлено @ 21:10 Если уж чего-то нет, то специально искать не будут -------------------- Сегодня ты не бродил, не искал, не любил - можно сказать - и не жил... Ф.Х. Дагларджа (Турция) http://zveriolginovour.ru/ https://vmeste.yandex.ru/zveriolginovour |
||||||
|
|||||||
| Albinos_x |
|
|||
![]() Evil Skynet ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 3288 Регистрация: 28.5.2004 Где: X-6120400 Y-1 4624650 Репутация: 26 Всего: 108 |
hidden файлы легко становятся видимыми, лучше совместно с ним еще устанавливать аттрибут faSysFile.
Этот тоже можно увидить если настроить свойство папки, но если его разместить в системной папке, типа system или system32, то пользователь вряд-ли его удалит, или ещё чего-нибудь с ним сделает. не пренебрегай совета Snowy - шифровать файл, с проставлением контрольной суммы в нем, на тот случай если в нем чего-то изменят, то это будет легко обнаруживаться... -------------------- "Кто владеет информацией, тот владеет миром" Уинстон Черчилль |
|||
|
||||
| RA |
|
||||||
![]() Брутальный буратина ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 3497 Регистрация: 31.3.2002 Где: Лес Репутация: 14 Всего: 115 |
Файлы, ключи реестра, порты, и тд. скрываются с помощью перехвата апи функций возвращающих информацию об их налиичии. в данном случаи достаточно поставить ловушку на FindFirsFile и FindNextFile. Ну далее всё просто. |
||||||
|
|||||||
| Vit |
|
|||
![]() Vitaly Nevzorov ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 10964 Регистрация: 25.3.2002 Где: Chicago Репутация: 48 Всего: 207 |
Скрыть файл не удасться... Лучший выход обозвать его каким-нибудь именем типа system.dll и заткнуть в каталог windows\System (вы лично названия всех dll там помните?), либо обозвать его типа IR_keyboard.inf и засунуть в windows\inf или обозвать sockets.chm и засунуть в windwos\help и т.п. Принцип простой - в Windows - сотни и тысячи файлов на которые никто никогда не обращает внимания. Чайник там не найдёт, а от профи никакие способы не помогут...
-------------------- With the best wishes, Vit I have done so much with so little for so long that I am now qualified to do anything with nothing Самый большой Delphi FAQ на русском языке здесь: www.drkb.ru |
|||
|
||||
| mvdr |
|
|||
|
физик ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 1349 Регистрация: 31.12.2004 Где: Волгоград, Россия Репутация: 1 Всего: 42 |
Vit, а это гениальная идея
-------------------- Появляюсь редко, но часто метко Изображать идиота сложнее, чем изображать умного: полезнее и не каждому дано |
|||
|
||||
| Alex |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 4147 Регистрация: 25.3.2002 Где: Москва Репутация: 80 Всего: 162 |
А кто тебя заставляет именно в папку windows засовывать? Есть много других мест, та же папка Program Files. -------------------- Написать можно все - главное четко представлять, что ты хочешь получить в конце. |
|||
|
||||
| mvdr |
|
|||
|
физик ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 1349 Регистрация: 31.12.2004 Где: Волгоград, Россия Репутация: 1 Всего: 42 |
все равно при переустановке Windows и Program Files переставляются тоже.
Выход - всяко есть игра типа "Booble Shooter" вот туда и можно. В случае чего игру никто не сотрет ( если место понадобиться, то от тех 10 кБ толку мало) и никто не полезет -------------------- Появляюсь редко, но часто метко Изображать идиота сложнее, чем изображать умного: полезнее и не каждому дано |
|||
|
||||
![]()
|
| Правила форума "Delphi: Общие вопросы" | |
|
|
Запрещается! 1. Публиковать ссылки на вскрытые компоненты 2. Обсуждать взлом компонентов и делиться вскрытыми компонентами
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Snowy, MetalFan, bems, Poseidon, Rrader. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Delphi: Общие вопросы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |