Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Сохранение настроек приложения в файле. [D6, 2000]


Страницы:   1 2

pathfinder ©   (2006-09-04 19:31:00) 

Добрый вечер. Уважаемые участники форума, подскажите пожалуйста, как наиболее грамотно решить следущую задачу: необходимо сохранять настройки приложения в файле который имел бы формат недоступный для пользователя.
Ини файл в данном случае отпадает, да и реестр пожалуй тоже.


pathfinder   (2006-09-05 00:20:00) [1]

Спасибо Всем за помощь!


pathfinder   (2006-09-05 00:02:00) [2]

Методом проб и ошибок пришел примерно к такому:

function TForm1.CoDec(Value : string): string;
var S_In,
   S_Out,
   S_Itm :string;
   i:integer;
begin
S_In:=Value;
 for i:=1 to Length(S_In) do
  begin
   S_Itm:=Chr(Ord(S_In[i]) xor Ord('A'));
   S_Out:=S_Out+S_Itm;
  end;
 Result:=S_Out;
end;

Вроде даже работает:)


Palladin   (2006-09-04 23:42:00) [3]


> [20] pathfinder  

ну поразмысли над [9]


Loginov Dmitry   (2006-09-04 23:01:00) [4]

> pathfinder   (04.09.06 22:59) [20]


Все в кучу ;))


pathfinder   (2006-09-04 22:59:00) [5]

Полдела вроде сделал:
  for i := 1 to Length(S1) do
   begin
    S:=inttostr(ord(S1[i]) xor $FF);
    S2:=S2+S;
   end;

Только как теперь это расшифровать?


Anatoly Podgoretsky   (2006-09-04 21:47:00) [6]

pathfinder   (04.09.06 21:16) [14]
Поправка №2 - "недоступный для понимания среднестатистического пользователя".

Ломать не строить


pathfinder   (2006-09-04 21:26:00) [7]

>Virgo_Style ©   (04.09.06 21:20) [15]
>сферического, в вакууме.
> Среднестатистический пользователь ini-файл не откроет, у него такой >программы нет.

Наверное Вы правы. Но тем не менее хочется разобраться как это сделать. Думаю, что с помощью этого форума это получится:)


Loginov Dmitry   (2006-09-04 21:25:00) [8]

В [16] есть ошибки. Найдешь - ты хакер

;))


Loginov Dmitry   (2006-09-04 21:24:00) [9]

[13]

Допустим, перед записью строки в инишку, шифруй ее xor-ом. Алгоритм очень простой:

for I := 1 to Length(S) do
 S[I] := Ord(S[I]) xor $FF

При чтении из ини используй точно такой же код.

Можно так еще:

for I := 1 to Length(S1) do
 S2[I] := IntToHex(Ord(S1[I]), 2);

Вариантов - масса.


Virgo_Style   (2006-09-04 21:20:00) [10]

сферического, в вакууме.

Среднестатистический пользователь ini-файл не откроет, у него такой программы нет.


pathfinder   (2006-09-04 21:16:00) [11]

>Anatoly Podgoretsky ©   (04.09.06 21:12) [12]
>Таких пользователей не существует.
>Что построил один человек, другой за всегда сломает.

Поправка №2 - "недоступный для понимания среднестатистического пользователя".


pathfinder   (2006-09-04 21:15:00) [12]

>Palladin ©   (04.09.06 20:39) [9]
>> [7] pathfinder  
>это такие магические буквы, что
>((7 xor 5) xor 5)=7

что-то мне подсказывает, что эти магические буквы можно использовать для шифрования инишника..а Вы не могли бы привести более подробный примерчик? Допустим у нас есть инишник
[USER]
Parameter1=X
..


Anatoly Podgoretsky   (2006-09-04 21:12:00) [13]

Таких пользователей не существует.
Что построил один человек, другой за всегда сломает.


pathfinder   (2006-09-04 21:08:00) [14]

>Anatoly Podgoretsky ©   (04.09.06 21:05) [10]
>который имел бы формат недоступный для пользователя.
>
>Таких не существует.

Маленькая поправочка - "недоступный для понимания пользователя".


Anatoly Podgoretsky   (2006-09-04 21:05:00) [15]

который имел бы формат недоступный для пользователя.

Таких не существует.


Palladin   (2006-09-04 20:39:00) [16]


> [7] pathfinder  

это такие магические буквы, что

((7 xor 5) xor 5)=7


C@N   (2006-09-04 20:34:00) [17]

Шифровать инишки;) или придумать свой класс и его писать в файл )))


pathfinder   (2006-09-04 20:22:00) [18]


> DprYg ©   (04.09.06 19:54) [4]
> Самое простое - xor


Это как?


palva   (2006-09-04 20:20:00) [19]

А разве бинарный формат нечитаем? Его можно открыть в блокноте, например.


Джо   (2006-09-04 19:55:00) [20]

> [3] pathfinder   (04.09.06 19:45)
> Эта необходимость вызвана тем, что доступом к настройкам
> должны обладать не все пользователи. "Формат недоступный
> для пользователя" - "нечитабельный" файл, по карйней мере
> обычными средствами просмотра файлов. Вот:)

TFileStream, будет писать в бинарном формате. Или же BlockWrite, по желанию.


Страницы:   1 2

Наверх

Титульная страница Поиск, карта сайта Написать письмо