Работа с файлами или с людьми -- может проще дать по рукам?

Программирование на Visual Basic, главный форум. Обсуждение тем программирования на VB 1—6.
Даже если вы плохо разбираетесь в VB и программировании вообще — тут вам помогут. В разумных пределах, конечно.
Правила форума
Темы, в которых будет сначала написано «что нужно сделать», а затем просьба «помогите», будут закрыты.
Читайте требования к создаваемым темам.
Лаборатор
Обычный пользователь
Обычный пользователь
 
Сообщения: 55
Зарегистрирован: 21.03.2009 (Сб) 15:06
Откуда: Москва

Работа с файлами или с людьми -- может проще дать по рукам?

Сообщение Лаборатор » 07.04.2009 (Вт) 17:49

Доброго времени суток!
Тут у меня нарисовалась проблема, мож есть у кого мысли... :bom:
Короче, програмка у меня должна работать с компами очень древними (от 486 (помните еще такие) до P3-400), и она должна подгружать инфу из тестового файла(много инфы!!!!), короче даже при простом обращении (через оператор Open), при попытке полностью загрузить файл компы долго думают, ну я придумал алгоритм, как подгружать ее частями, дал файлам новое расширение - чтобы юзеры не лезли в них, но основа то всервно текстовая!!! Вот и чувствую, что текст то изменяют. :(
Короче надо запаролировать, но как, посимвольный XOR грузит полумерттвые машины, да и частичная подгрузка не работает, я ведь бил файл по строкам, а после кодирования - одни цифры.
Мож кто еще методы кодирования знает(не сильно грузящие комп), или алгорим работы с другим типом более "легких" файлов(у каждой программый ведь свой формат), хотя куда уж легче, чем Dos-текст!
HELPPPPPPPPPP!!!!!!!!!!!!!!!!!!!!!!
Последний раз редактировалось Лаборатор 30.04.2009 (Чт) 17:12, всего редактировалось 1 раз.
В сети бываю редко!
Своего интернета у меня нет...

Хакер
Телепат
Телепат
Аватара пользователя
 
Сообщения: 16478
Зарегистрирован: 13.11.2005 (Вс) 2:43
Откуда: Казахстан, Петропавловск

Re: Работа с файлами

Сообщение Хакер » 07.04.2009 (Вт) 18:17

Причина в кривых руках, мне кажется, а не медленных компах.

За фразы вроде «HELPPPPPPPPPP!!!!!!!!!!!!!!!!!!!!!!» банить будем сразу. Чтоб в последний раз.
—We separate their smiling faces from the rest of their body, Captain.
—That's right! We decapitate them.

karlex
Продвинутый пользователь
Продвинутый пользователь
Аватара пользователя
 
Сообщения: 138
Зарегистрирован: 30.03.2009 (Пн) 20:25
Откуда: Пермский край, г.Кунгур

Re: Работа с файлами

Сообщение karlex » 07.04.2009 (Вт) 18:19

Пакости юзеров - это их интимные проблемы.
Если предлагается специальный софт для работы с конкретными типами файлов, пусть юзеры его и используют, а коли хочется им пакостить, то пусть потом сами же репу и чешут.
Все гениальное — просто!
-------------------------------------
Кто ищет — тот всегда найдет!
-------------------------------------
Лень — двигатель прогресса.
Прогресс — двигатель лени.

Лаборатор
Обычный пользователь
Обычный пользователь
 
Сообщения: 55
Зарегистрирован: 21.03.2009 (Сб) 15:06
Откуда: Москва

Re: Работа с файлами

Сообщение Лаборатор » 07.04.2009 (Вт) 18:24

Просто небольшая програмка для проверки знаний, а если все юзеры будут знать ответы на тест, то зачем его создавать?
Вот я и спрашиваю, знает ли кто способы преобразоваия текста в другие символы, не читабельные в обычном блокноте.


А правила я уважаю и прошу прощения. :oops:
В сети бываю редко!
Своего интернета у меня нет...

Хакер
Телепат
Телепат
Аватара пользователя
 
Сообщения: 16478
Зарегистрирован: 13.11.2005 (Вс) 2:43
Откуда: Казахстан, Петропавловск

Re: Работа с файлами

Сообщение Хакер » 07.04.2009 (Вт) 18:35

Всё зависит от того, насколько умны пользователи, заинтереснованные в извлечении ответов из файла.

С другой стороны, что плохого в том, что пользователи прочитают текст вариантов ответа? Они ведь их и так прочитают в самой программе.
—We separate their smiling faces from the rest of their body, Captain.
—That's right! We decapitate them.

Лаборатор
Обычный пользователь
Обычный пользователь
 
Сообщения: 55
Зарегистрирован: 21.03.2009 (Сб) 15:06
Откуда: Москва

Re: Работа с файлами

Сообщение Лаборатор » 07.04.2009 (Вт) 18:38

Пользователи не сильно умные,но простая замена расширения уже не прокатывает :cry:
Прочитают, но ведь тест оценивается, а в файле хранятся правильные номера ответов!
В сети бываю редко!
Своего интернета у меня нет...

iGrok
Артефакт VBStreets
Артефакт VBStreets
 
Сообщения: 4272
Зарегистрирован: 10.05.2007 (Чт) 16:11
Откуда: Сетевое сознание

Re: Работа с файлами

Сообщение iGrok » 07.04.2009 (Вт) 18:51

Лаборатор писал(а):Пользователи не сильно умные,но простая замена расширения уже не прокатывает :cry:
Прочитают, но ведь тест оценивается, а в файле хранятся правильные номера ответов!

А что тебе мешает кодировать ТОЛЬКО номера правильных ответов?
label:
cli
jmp label

karlex
Продвинутый пользователь
Продвинутый пользователь
Аватара пользователя
 
Сообщения: 138
Зарегистрирован: 30.03.2009 (Пн) 20:25
Откуда: Пермский край, г.Кунгур

Re: Работа с файлами

Сообщение karlex » 07.04.2009 (Вт) 18:54

Лаборатор писал(а):Просто небольшая программка для проверки знаний, а если все юзеры будут знать ответы на тест, то зачем его создавать?

С этого и нужно было начинать, а то тема то участникам говорит про какую-то "Работу с файлами", а в реале созерцают они "Скрытие информации" (криптография, кстати).

Лаборатор писал(а):Вот я и спрашиваю, знает ли кто способы преобразования текста в другие символы, не читабельные в обычном блокноте.

XOR, пожалуй, один из простейших вариантов, по моему его хватит с головой для поставленной задачи.
Все гениальное — просто!
-------------------------------------
Кто ищет — тот всегда найдет!
-------------------------------------
Лень — двигатель прогресса.
Прогресс — двигатель лени.

Хакер
Телепат
Телепат
Аватара пользователя
 
Сообщения: 16478
Зарегистрирован: 13.11.2005 (Вс) 2:43
Откуда: Казахстан, Петропавловск

Re: Работа с файлами

Сообщение Хакер » 07.04.2009 (Вт) 19:00

Прочитают, но ведь тест оценивается, а в файле хранятся правильные номера ответов!

И что? Или ты хранишь номера правильных ответов тоже как текст? Если так, то какого фига?
—We separate their smiling faces from the rest of their body, Captain.
—That's right! We decapitate them.

HAWK
Википедик
Википедик
 
Сообщения: 74
Зарегистрирован: 02.04.2009 (Чт) 19:28

Re: Работа с файлами

Сообщение HAWK » 07.04.2009 (Вт) 19:08

А сколько весят эти файлы?
И как часто шифруются?
Ну не может простое ИСКЛЮЧАЮЩЕЕ ИЛИ так грузить сильно!

Лаборатор
Обычный пользователь
Обычный пользователь
 
Сообщения: 55
Зарегистрирован: 21.03.2009 (Сб) 15:06
Откуда: Москва

Re: Работа с файлами

Сообщение Лаборатор » 16.04.2009 (Чт) 17:48

HAWK писал(а):А сколько весят эти файлы?
И как часто шифруются?
Ну не может простое ИСКЛЮЧАЮЩЕЕ ИЛИ так грузить сильно!

Файлы весят несколько киллобайтов и шифруются полностью от начала до конца.
Более того подгрузка происходит следующим образом:
Вопросы идут по порядку-1 строка вопрос, 2-5 варианты ответа, 6 - цифра правильного ответа и т.д
случайным образом выбирается номер вопроса и при помощи формулы подгружается нужный вопрос с вариатами.
Зашифровать может и не проблема, а как подгрузить зашифрованную строку, не расшифровывая файл целиком? :?:
В сети бываю редко!
Своего интернета у меня нет...

Хакер
Телепат
Телепат
Аватара пользователя
 
Сообщения: 16478
Зарегистрирован: 13.11.2005 (Вс) 2:43
Откуда: Казахстан, Петропавловск

Re: Работа с файлами или с людьми -- может проще дать по рукам?

Сообщение Хакер » 16.04.2009 (Чт) 19:01

Ты что, плоским текстом всё хранишь?
—We separate their smiling faces from the rest of their body, Captain.
—That's right! We decapitate them.

iGrok
Артефакт VBStreets
Артефакт VBStreets
 
Сообщения: 4272
Зарегистрирован: 10.05.2007 (Чт) 16:11
Откуда: Сетевое сознание

Re: Работа с файлами или с людьми -- может проще дать по рукам?

Сообщение iGrok » 17.04.2009 (Пт) 0:06

Хакер писал(а):Ты что, плоским текстом всё хранишь?

Судя по описанию, да..

Лаборатор:
А что тебе мешает саму цифру правильного ответа хранить в каком-либо другом формате?
Например, сделать ей тот же XOR после считывания?
Или какую-нибудь формулу для вычисления. Записывать (X+1245)*2, считывать (X/2-1245)...
label:
cli
jmp label

arvitaly
Постоялец
Постоялец
 
Сообщения: 485
Зарегистрирован: 12.04.2009 (Вс) 0:30
Откуда: Казань

Re: Работа с файлами или с людьми -- может проще дать по рукам?

Сообщение arvitaly » 17.04.2009 (Пт) 0:58

Файлы весят несколько киллобайтов и шифруются полностью от начала до конца.


Шифруй каждую строку в файле по отдельности, при шифровке ведь вопрос скорости не стоит.

и попробуй CryptCreateHash

Sedge
Alternative Choice
Alternative Choice
Аватара пользователя
 
Сообщения: 1049
Зарегистрирован: 16.05.2002 (Чт) 18:23
Откуда: Somewhere-In-The-Net

Re: Работа с файлами или с людьми -- может проще дать по рукам?

Сообщение Sedge » 17.04.2009 (Пт) 14:41

Файлы - в архив, архив - на пароль.
Программа их разворачивает в темп, считывает и удаляет.
Пользователи до посинения пытаются подобрать пароль из 48 символов :)

SSecurity
Служба безопасности
Аватара пользователя
 
Сообщения: 1283
Зарегистрирован: 19.08.2003 (Вт) 1:11
Откуда: Россия, Мурманск

Re: Работа с файлами или с людьми -- может проще дать по рукам?

Сообщение SSecurity » 17.04.2009 (Пт) 14:57

Sedge писал(а):Файлы - в архив, архив - на пароль.
Программа их разворачивает в темп, считывает и удаляет.
Пользователи до посинения пытаются подобрать пароль из 48 символов :)


Вопросы в компьютер ... ответы на дискетку:) а вообще лучше "шифруй" хотябы XOR-ом тексты чтобы юзер сразу расхотел лазить к тебе в файл .... можешь "ключ" привязать к номеру строки по модулю 256, а какой-нибудь 3 параметр сделать проверочным ... если его значение равно номеру строки в файле с другим "ключом" значит новые строки не добавлялись ... хотя для пущей уверенности хотябы слова переставь местами в вопросе чтоб не особо в глаза бросалось.

Можно конечно подцепить модуль и в Base64 весь файл (10 кб очень быстро преобразуется) зашить, а потом считывать весь файл в переменную, раскодировать и уже использовать.
Программист - это маленький Бог, а все его ошибки - это самостоятельные творения:)
Так задумано:)

Хакер
Телепат
Телепат
Аватара пользователя
 
Сообщения: 16478
Зарегистрирован: 13.11.2005 (Вс) 2:43
Откуда: Казахстан, Петропавловск

Re: Работа с файлами или с людьми -- может проще дать по рукам?

Сообщение Хакер » 17.04.2009 (Пт) 15:06

Какое нафиг шифрование? Зачем?

В архиве файл с вопросами из одной нашей программы. В нём ничего не шифруется! Предлагаю автору открыть его блокнотом и «подглядеть» правильный ответ вопрос «Палеонтологический филиал Аксу-Джабаглинского заповедника, расположен на склонах хребта:».
Вложения
qbase.rar
База вопросов
(38.39 Кб) Скачиваний: 97
—We separate their smiling faces from the rest of their body, Captain.
—That's right! We decapitate them.

SSecurity
Служба безопасности
Аватара пользователя
 
Сообщения: 1283
Зарегистрирован: 19.08.2003 (Вт) 1:11
Откуда: Россия, Мурманск

Re: Работа с файлами или с людьми -- может проще дать по рукам?

Сообщение SSecurity » 17.04.2009 (Пт) 15:31

Хакер писал(а):Какое нафиг шифрование? Зачем?

В архиве файл с вопросами из одной нашей программы. В нём ничего не шифруется! Предлагаю автору открыть его блокнотом и «подглядеть» правильный ответ вопрос «Палеонтологический филиал Аксу-Джабаглинского заповедника, расположен на склонах хребта:».


Чтобы отбить на корню желание юзера лезть в файл :)
Программист - это маленький Бог, а все его ошибки - это самостоятельные творения:)
Так задумано:)

iGrok
Артефакт VBStreets
Артефакт VBStreets
 
Сообщения: 4272
Зарегистрирован: 10.05.2007 (Чт) 16:11
Откуда: Сетевое сознание

Re: Работа с файлами или с людьми -- может проще дать по рукам?

Сообщение iGrok » 17.04.2009 (Пт) 15:51

SSecurity писал(а):Чтобы отбить на корню желание юзера лезть в файл :)

Hу залезь в файл, приложенный Хакером.
Понял что-нибудь? Желание отбилось?
И зачем тогда шифрование?
label:
cli
jmp label

SSecurity
Служба безопасности
Аватара пользователя
 
Сообщения: 1283
Зарегистрирован: 19.08.2003 (Вт) 1:11
Откуда: Россия, Мурманск

Re: Работа с файлами или с людьми -- может проще дать по рукам?

Сообщение SSecurity » 17.04.2009 (Пт) 16:16

iGrok писал(а):
SSecurity писал(а):Чтобы отбить на корню желание юзера лезть в файл :)

Hу залезь в файл, приложенный Хакером.
Понял что-нибудь? Желание отбилось?
И зачем тогда шифрование?


Подозреваю что ответы в шапке, вероятнее там же указано кол-во вариантов ответов к каждому вопросу, ну а вопросы в теле идут сплошняком с разделителем &h02.
В самой шапке прослеживается обратный счетчик от FF в сторону 02 .. шаг 1, может я чего и путаю но FF .. FE .. FD .. FC ... FB ... FA ... F9 ... и т.д. между ними по 3..6 символов .... видимо в них и лежат нужные данные :) Парсим ... в массив и обрабатываем :)

из содержания если не FF FF FF то первые две цифры это номер вопрса :) дальше 3-4 числа наводящие на мысль о том, что используются константы предопреденные в самом верху:)
Программист - это маленький Бог, а все его ошибки - это самостоятельные творения:)
Так задумано:)

Хакер
Телепат
Телепат
Аватара пользователя
 
Сообщения: 16478
Зарегистрирован: 13.11.2005 (Вс) 2:43
Откуда: Казахстан, Петропавловск

Re: Работа с файлами или с людьми -- может проще дать по рукам?

Сообщение Хакер » 17.04.2009 (Пт) 17:51

Ну во-первых, даже будучи программистом, ты не имеешь всех шансов расшифровать формат хранения вопросов в моём файле (хотя он там примитивен).

Во-вторых, вышеописанное: ерунда. Всё равно, что сказать, что в текстовых файлах присутсвует байты. И что часто встречается байт с кодом 32.
—We separate their smiling faces from the rest of their body, Captain.
—That's right! We decapitate them.

SSecurity
Служба безопасности
Аватара пользователя
 
Сообщения: 1283
Зарегистрирован: 19.08.2003 (Вт) 1:11
Откуда: Россия, Мурманск

Re: Работа с файлами или с людьми -- может проще дать по рукам?

Сообщение SSecurity » 17.04.2009 (Пт) 18:31

Хакер писал(а):Ну во-первых, даже будучи программистом, ты не имеешь всех шансов расшифровать формат хранения вопросов в моём файле (хотя он там примитивен).
Во-вторых, вышеописанное: ерунда. Всё равно, что сказать, что в текстовых файлах присутсвует байты. И что часто встречается байт с кодом 32.

Хакер, я не ставлю себе задачей разбирать твой формат чтоб найти в нем ответ :) это мне вовсе не нужно, я лишь сказал что я там увидел ...
Ты наверняка посидел и подумал над форматом, как удобнее хранить вопросы и ответы, молодец, респект тебе за это:) Ну и конечно чтобы любой формат разложить по полочкам нужно как минимум знать зачем он нужен и кем используется, ну и мысли я твои читать не умею - может ты флагов там напихал различных и обозвал по-всякому :mrgreen:

А во вторых, автору на мой взгляд будет куда проще, взять рабочий файл в текстовом виде, полностью его считать и зашить любым простым способом, не изобретая собсвенного формата, точно также декодировать и получить из него нужные данные. :)
Программист - это маленький Бог, а все его ошибки - это самостоятельные творения:)
Так задумано:)

iGrok
Артефакт VBStreets
Артефакт VBStreets
 
Сообщения: 4272
Зарегистрирован: 10.05.2007 (Чт) 16:11
Откуда: Сетевое сознание

Re: Работа с файлами или с людьми -- может проще дать по рукам?

Сообщение iGrok » 17.04.2009 (Пт) 18:55

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

Ты, надеюсь, прочитал, что автор так и делает, но ему этот способ не подходит потому, что сильно грузит комп?
label:
cli
jmp label

SSecurity
Служба безопасности
Аватара пользователя
 
Сообщения: 1283
Зарегистрирован: 19.08.2003 (Вт) 1:11
Откуда: Россия, Мурманск

Re: Работа с файлами или с людьми -- может проще дать по рукам?

Сообщение SSecurity » 17.04.2009 (Пт) 19:14

iGrok писал(а):Ты, надеюсь, прочитал, что автор так и делает, но ему этот способ не подходит потому, что сильно грузит комп?
естественно, и здесь вопрос можно ставить - в размере того файла который он обрабатывает. Эсли это 100к ... это одно а если это все теже твои 2Гб - это совсем другое.
Программист - это маленький Бог, а все его ошибки - это самостоятельные творения:)
Так задумано:)

Апострофф
Начинающий
Начинающий
 
Сообщения: 2
Зарегистрирован: 17.04.2009 (Пт) 19:39

Re: Работа с файлами или с людьми -- может проще дать по рукам?

Сообщение Апострофф » 17.04.2009 (Пт) 20:02

Лаборатор писал(а):чтобы юзеры не лезли в них ... текст то изменяют.

Если весь сыр-бор из-за этого, то могу предложить испытанный годами
Код: Выделить всё
SetAttr FullFileName, vbHidden Or vbReadOnly

- юзерам будет не так просто залезть и ещё труднее изменить!

iGrok
Артефакт VBStreets
Артефакт VBStreets
 
Сообщения: 4272
Зарегистрирован: 10.05.2007 (Чт) 16:11
Откуда: Сетевое сознание

Re: Работа с файлами или с людьми -- может проще дать по рукам?

Сообщение iGrok » 17.04.2009 (Пт) 20:41

SSecurity писал(а):
iGrok писал(а):Ты, надеюсь, прочитал, что автор так и делает, но ему этот способ не подходит потому, что сильно грузит комп?
естественно, и здесь вопрос можно ставить - в размере того файла который он обрабатывает. Эсли это 100к ... это одно а если это все теже твои 2Гб - это совсем другое.

Да нет. Вопрос у него скорее не в размере файла (слабо могу себе представить базу тестов хотя бы на 50Мб, не говоря уже о гигах..), а в том, на каких компах это "щастье" запускается...

Апострофф писал(а):
Лаборатор писал(а):чтобы юзеры не лезли в них ... текст то изменяют.

Если весь сыр-бор из-за этого, то могу предложить испытанный годами
Код: Выделить всё
SetAttr FullFileName, vbHidden Or vbReadOnly

- юзерам будет не так просто залезть и ещё труднее изменить!

Если юзер додумался залезть в файл за правильным ответом - он знает, что такое аттрибуты файла. И уж всяко знает, как увидеть скрытые файлы...

Совсем правильный ответ ИМХО таки дан Хакером (бинарный формат хранения данных - с ним и частичная подгрузка будет очень хорошо работать, и правильный вариант фиг найдут, и изменять его фиг полезут...). Подходящий - кодировать только сам номер правильного ответа по неочевидному алгоритму - тоже прозвучал...
label:
cli
jmp label

arthur2
Продвинутый гуру
Продвинутый гуру
Аватара пользователя
 
Сообщения: 1688
Зарегистрирован: 23.01.2008 (Ср) 14:35

Re: Работа с файлами или с людьми -- может проще дать по рукам?

Сообщение arthur2 » 17.04.2009 (Пт) 21:48

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

Как раз наоборот - бинарный файл в своем формате в разы проще: ни парсить ничего не придется, ни шифровать/расшифровывать. Всё само собой распарсится: структурки любой сложности и запутанности сохраняются в файл и читаются из файла одним движением :)
Артур
 
   

Debugger
Продвинутый гуру
Продвинутый гуру
Аватара пользователя
 
Сообщения: 1667
Зарегистрирован: 17.06.2006 (Сб) 15:11

Re: Работа с файлами или с людьми -- может проще дать по рукам?

Сообщение Debugger » 17.04.2009 (Пт) 21:49

Артур
При малейшем движении нашей структурки она перестанет корректно загружаться.
Почему никто XML не рекламирует?

iGrok
Артефакт VBStreets
Артефакт VBStreets
 
Сообщения: 4272
Зарегистрирован: 10.05.2007 (Чт) 16:11
Откуда: Сетевое сознание

Re: Работа с файлами или с людьми -- может проще дать по рукам?

Сообщение iGrok » 17.04.2009 (Пт) 21:58

Debugger писал(а):Артур
При малейшем движении нашей структурки она перестанет корректно загружаться.
Почему никто XML не рекламирует?

Смотря, как структурку проектировать...
Правда, чтение/запись одним движением это, конечно, удобно... Но это не то, что нужно. С таким вариантом частичная подгрузка точно не будет работать.

За рекламой XML - к Рею. :)
Но с XML мы возвращаемся к необходимости шифровать инфу.
label:
cli
jmp label

arthur2
Продвинутый гуру
Продвинутый гуру
Аватара пользователя
 
Сообщения: 1688
Зарегистрирован: 23.01.2008 (Ср) 14:35

Re: Работа с файлами или с людьми -- может проще дать по рукам?

Сообщение arthur2 » 17.04.2009 (Пт) 22:59

Debugger писал(а):С таким вариантом частичная подгрузка точно не будет работать.
Это как организовать файл :) Можно в нем же хранить массив лонгов-адресов на нужные элементы. Нужен седьмой вопрос - читаем седьмой лонг, а в нем место, где лежит седьмая структура. Правда, одним движением уже не отделаешься, но всё равно не очень сложно :)
Артур
 
   

След.

Вернуться в Visual Basic 1–6

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 58

    TopList  
cron