Форум программистов, компьютерный форум CyberForum.ru

Закрытый файл - C++

Восстановить пароль Регистрация
 
 
Рейтинг: Рейтинг темы: голосов - 13, средняя оценка - 4.77
Egor138
 Аватар для Egor138
30 / 11 / 2
Регистрация: 10.08.2012
Сообщений: 619
Записей в блоге: 2
12.08.2012, 18:40     Закрытый файл #1
У меня программа использует обычный текстовой файл для хранения различный параметров. Мне нужно сделать так, чтобы никакой пользователь не смог изменить их, иначе могут повредить программу. Как можно осуществить это? Может поменять разрешение... Подскажите???
Лучшие ответы (1)
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
12.08.2012, 18:40     Закрытый файл
Посмотрите здесь:

Дан файл целых чисел. Создать новый файл, содержащий те же элементы, что и исходный файл, но в обратном порядке C++
C++ Дан файл. Записать в другой файл строки, которые являются палиндромами.
C++ Возвращение ссылки или указателя на закрытый элемент класса.
C++ Дан символьный файл f. Записать в файл g элементы файла f в обратном порядке
Даны натуральное , символьный файл и текстовый файл . Файл содержит 30 слов , каждое из которых будем называть ключевым C++
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Пaтрик
 Аватар для Пaтрик
394 / 387 / 38
Регистрация: 21.01.2012
Сообщений: 972
Завершенные тесты: 1
12.08.2012, 18:44     Закрытый файл #2
Никак.
Egor138
 Аватар для Egor138
30 / 11 / 2
Регистрация: 10.08.2012
Сообщений: 619
Записей в блоге: 2
12.08.2012, 18:49  [ТС]     Закрытый файл #3
Цитата Сообщение от Пaтрик Посмотреть сообщение
Никак.
Я встречал программы в которых это реализовано довольно неплохо!
Intel~lect
 Аватар для Intel~lect
135 / 124 / 2
Регистрация: 03.07.2012
Сообщений: 355
12.08.2012, 18:49     Закрытый файл #4
Может быть этому файлу дать какое-нибудь нестандартное расширение? Тогда пользователь может и не догадается с помощью какой программы его открыть.
Egor138
 Аватар для Egor138
30 / 11 / 2
Регистрация: 10.08.2012
Сообщений: 619
Записей в блоге: 2
12.08.2012, 18:50  [ТС]     Закрытый файл #5
Мне просто нужно сделать файл недоступным дял открытия

Добавлено через 44 секунды
Цитата Сообщение от Intel~lect Посмотреть сообщение
Может быть этому файлу дать какое-нибудь нестандартное расширение? Тогда пользователь может и не догадается с помощью какой программы его открыть.
А запись и чтение информации из него будет происходить без ошибок?
Intel~lect
 Аватар для Intel~lect
135 / 124 / 2
Регистрация: 03.07.2012
Сообщений: 355
12.08.2012, 18:52     Закрытый файл #6
Цитата Сообщение от Egor138 Посмотреть сообщение
А запись и чтение информации из него будет происходить без ошибок?
Думаю что без ошибок. Еще ни разу не пробовал
Еще как вариант. В атрибутах самого файла поставить "Только чтение"
Игорь с++
 Аватар для Игорь с++
429 / 452 / 15
Регистрация: 26.01.2011
Сообщений: 2,029
12.08.2012, 18:55     Закрытый файл #7
Цитата Сообщение от Egor138 Посмотреть сообщение
А запись и чтение информации из него будет происходить без ошибок?
Будет , но это мягко говоря не правельно . Если уж как то припятствовать изменять , то можно следующие ( но при правельном подходе всё равно можно обойти ) -
наваять свою dll и поставить хук на открытие вашего документа , но помоему это решение сложней чем у тебя будет вся программа.
Egor138
 Аватар для Egor138
30 / 11 / 2
Регистрация: 10.08.2012
Сообщений: 619
Записей в блоге: 2
12.08.2012, 19:01  [ТС]     Закрытый файл #8
Ладно попробую просто изменить разрешение
The_Immortal
1548 / 484 / 8
Регистрация: 04.04.2009
Сообщений: 1,891
12.08.2012, 19:24     Закрытый файл #9
Egor138, у меня вот есть дурная (правда не знаю насколько дурная) привычка - я когда вижу файл с неизвестным мне расширением, то нажимаю F3 (через файловый менеджер - например Тотал Коммандер) - и после этого любезно открывается Lister (или любой другой ридер), который показывает содержимое файла Я не думаю, что я один такой...)

Если все настолько критично, то может имеет смысл поискать какой-нибудь свободный архиватор с поддержкой командной строки и запароливания архива? В таком случае можно будет данный файл держать в запароленном архиве и при обращении к нему, используя командную строку, временно разархивировать этот файл для передачи параметров в программу, а потом сразу этот файл уничтожать.
Правда это имеет смысл, если параметры передаются на самом начальном этапе.
Игорь с++
 Аватар для Игорь с++
429 / 452 / 15
Регистрация: 26.01.2011
Сообщений: 2,029
12.08.2012, 19:29     Закрытый файл #10
Цитата Сообщение от The_Immortal Посмотреть сообщение
то нажимаю F3
Я уже написал , что можно поставить хук и будет перехватываться сообщение на открытие этого файла
Intel~lect
12.08.2012, 19:30
  #11

Не по теме:

The_Immortal, Согласен. Лучше уж в самой программе взять и обработать все возможные ошибки, которые могут возникнуть из-за повреждения файла

The_Immortal
1548 / 484 / 8
Регистрация: 04.04.2009
Сообщений: 1,891
12.08.2012, 19:36     Закрытый файл #12
Игорь с++,
Цитата Сообщение от Игорь с++ Посмотреть сообщение
что можно поставить хук и будет перехватываться сообщение на открытие этого файла
а хук на что именно? Переопределить клавишу просмотра документа - делать нечего. Лично мне это в первую очередь захочется сделать, когда я столкнусь с подобным "запретом".
Игорь с++
 Аватар для Игорь с++
429 / 452 / 15
Регистрация: 26.01.2011
Сообщений: 2,029
12.08.2012, 19:40     Закрытый файл #13
Цитата Сообщение от Intel~lect Посмотреть сообщение
Согласен. Лучше уж в самой программе взять и обработать все возможные ошибки, которые могут возникнуть из-за повреждения файла
Вот уже помоему лучше и впринцепе тоже согласен , НО при таком методе допустим у нас в документе были цифры которые показывают где именно должно стоять окно , пользователь изменил эти данные и как проверять , что документ содержит не верную информацию ?

Добавлено через 2 минуты
Цитата Сообщение от The_Immortal Посмотреть сообщение
Переопределить клавишу просмотра документа - делать нечего
кто сказал ? на открытие данного файла сказал же !
The_Immortal
1548 / 484 / 8
Регистрация: 04.04.2009
Сообщений: 1,891
12.08.2012, 19:42     Закрытый файл #14
Игорь с++, а, значит на так Вас понял, сорри! Но честно говоря, с подобной реализацией ни разу не сталкивался... Было бы интересно взглянуть на подобное решение
Игорь с++
 Аватар для Игорь с++
429 / 452 / 15
Регистрация: 26.01.2011
Сообщений: 2,029
12.08.2012, 19:44     Закрытый файл #15
Цитата Сообщение от The_Immortal Посмотреть сообщение
Было бы интересно взглянуть на подобное решение
ну я же не буду просто так писать dll и ставить хук , если интерерсно , то почитайте про хуки и какие они бывают в инете инфы валом
The_Immortal
1548 / 484 / 8
Регистрация: 04.04.2009
Сообщений: 1,891
12.08.2012, 19:45     Закрытый файл #16
Egor138, короче, предлагаю Вам использовать нормальную БД, которую без труда можно будет запаролить и распаролить когда надо
Только в таком случае стоит обратить внимание на эти слова:
Цитата Сообщение от Игорь с++ Посмотреть сообщение
но помоему это решение сложней чем у тебя будет вся программа.
и задастся вопросом: а оправдывает ли цель средства?
Игорь с++
 Аватар для Игорь с++
429 / 452 / 15
Регистрация: 26.01.2011
Сообщений: 2,029
12.08.2012, 19:48     Закрытый файл #17
Сообщение было отмечено автором темы, экспертом или модератором как ответ
Цитата Сообщение от The_Immortal Посмотреть сообщение
и задастся вопросом: а оправдывает цель средства?
Вот именно , что я и пытался донести до ТС , и к тому же как ты не крути но запретный плод сладок и сделать в следствии хак не кому не запрещенно !!!
The_Immortal
1548 / 484 / 8
Регистрация: 04.04.2009
Сообщений: 1,891
12.08.2012, 19:50     Закрытый файл #18
Игорь с++,
Цитата Сообщение от Игорь с++ Посмотреть сообщение
к тому же как ты не крути но запретный плод сладок и сделать в следствии хак не кому не запрещенно !!!
Категорически согласен!
Avazart
 Аватар для Avazart
6900 / 5140 / 252
Регистрация: 10.12.2010
Сообщений: 22,584
Записей в блоге: 17
12.08.2012, 19:53     Закрытый файл #19
Блин если программа падает из-за изменения настроек в файле, то это минус программе...( ну и вообщето проблемы пользователя нефиг руки распускать)

Если так критично просто обрабатывать правильность настроек и в случае чего откатывать их до дефолтных.
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
12.08.2012, 19:57     Закрытый файл
Еще ссылки по теме:

C++ Небольшая дискуссия. Закрытый код популярных игр
закрытый копирующий конструктор C++
Дан целочисленный файл А. Записать в файл В все кратные трём числа из А C++

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
Egor138
 Аватар для Egor138
30 / 11 / 2
Регистрация: 10.08.2012
Сообщений: 619
Записей в блоге: 2
12.08.2012, 19:57  [ТС]     Закрытый файл #20
А можно поставить файлу атрибут "только чтение" программно в c++???
Yandex
Объявления
12.08.2012, 19:57     Закрытый файл
Ответ Создать тему
Опции темы

Текущее время: 04:14. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru