Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 11.11.2013, 06:27   #1
Dennis777
Форумчанин
 
Регистрация: 06.11.2009
Сообщений: 203
По умолчанию Почему не создается файл в папке виндовс.

Пытаюсь записать файл в папку виндовс
AssignFile(Fishki,result+'\rege2n.s mr');
Rewrite(Fishki);

Выполняю проверку
if FileExists(result+'/rege2n.smr') then begin
Form2.Show;

Все работает. Только вот файла rege2n.smr в папке виндовса нет.
И в ручную писал абсолютный адрес (для проверки), и определял расположение виндовс програмно - все равно файлик найти не могу. Но программа почему то проходит проверку на его наличие.
Интересный проект по изучению английского:
Английский в формате путешествия по США
Dennis777 вне форума Ответить с цитированием
Старый 11.11.2013, 08:31   #2
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,229
По умолчанию

а руками ( в блокноте) Вы файл в папку Windows записать можете?
Дело в том, что у Вас либо путь формируется неверно (посмотрите в отладчике, чему равен result+'\rege2n.smr' либо отбразите значение: ShowMessage(result+'\rege2n.smr'); )
либо, скорее всего, у записи нет административных прав/UAC не позволяте писать в системную папку.

Да и вообще, зачем Вы в системную папку лезете? Если Вы программу пишете, чтобы запускалась не только на вашем компьютере (под вашими правами), так в папке Windows писать ничего не надо!

p.s. а что за вольности за слешем? зачем в FileExist такой "/" слеш?
Serge_Bliznykov вне форума Ответить с цитированием
Старый 11.11.2013, 09:35   #3
phomm
personality
Старожил
 
Аватар для phomm
 
Регистрация: 28.04.2009
Сообщений: 2,882
По умолчанию

Винда уже довольно давно понимает / слеш в имени путей.

В папку виндовс наверное ничего не записывается, а вот программа находит файл из-за виртуализации(по ней можно погуглить) в виндовс (семерка и выше) - для программ автоматически вместо виндового каталога перенаправление идёт на что-то в дебрях папки пользователя.
phomm вне форума Ответить с цитированием
Старый 11.11.2013, 14:19   #4
Dennis777
Форумчанин
 
Регистрация: 06.11.2009
Сообщений: 203
По умолчанию

Руками тоже не пишет(
просто я придумал такой вариант защиты программы:
На сайте на определенной странице лежит зашифрованный ключ активации.
При первом открытии, проверяется, есть ли скрытый файл в каталоге виндовс. Если нет - то программа открывает форму регистрации. Вводим код - шифруем - сверяем со значением на сайте. Если код правильный - закидываем скрытый файл в папку виндовс, чтобы больше не просить ввести ключ.

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

Куда кроме виндовса можно записать такой файлик, чтобы на всех компах была папка?) Или как-таки до этого самого виндовса достучаться?
Интересный проект по изучению английского:
Английский в формате путешествия по США
Dennis777 вне форума Ответить с цитированием
Старый 11.11.2013, 14:25   #5
Человек_Борща
Старожил
 
Аватар для Человек_Борща
 
Регистрация: 30.12.2009
Сообщений: 11,426
По умолчанию

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

Все, ПО взломано

За запись в Windows будите посланы нафиг сначало UAC'ом, затем антивирусом, а затем и параноидальным пользователем.
А код регистрации надо привязывать к железу ПК а не к инету.
Человек_Борща вне форума Ответить с цитированием
Старый 11.11.2013, 14:31   #6
Dennis777
Форумчанин
 
Регистрация: 06.11.2009
Сообщений: 203
По умолчанию

Цитата:
Сообщение от Человек_Борща Посмотреть сообщение
Игнорируем инет, и сразу сообщаем, что код правильный...

Все, ПО взломано

За запись в Windows будите посланы нафиг сначало UAC'ом, затем антивирусом, а затем и параноидальным пользователем.
А код регистрации надо привязывать к железу ПК а не к инету.
Если нет интернета - зарегистрировать нельзя. Напишет, что код неправильный или у вас отсутствует подключение.
Куда можно кинуть скрытый файл, чтобы никто не ругался и на всех компах было?
Интересный проект по изучению английского:
Английский в формате путешествия по США

Последний раз редактировалось Dennis777; 11.11.2013 в 14:39.
Dennis777 вне форума Ответить с цитированием
Старый 11.11.2013, 14:38   #7
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Цитата:
скрытый файл из Виндвовса - он вряд ли найдет.
Я тебя разочарую. Кое-кто кого я ломал такие файлы скрывал в недрах DLL, в которой якобы был код, а на самом деле она была пустышкой, внутри которой хранился ключ. Автор думал что он мегамоск. Я уже вот как два года это все взломал с помошью банального FileMon, и юзаю дома.
Так что не парься - защита твоя слабенькая.
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 11.11.2013, 14:47   #8
Dennis777
Форумчанин
 
Регистрация: 06.11.2009
Сообщений: 203
По умолчанию

Цитата:
Сообщение от Stilet Посмотреть сообщение
Я тебя разочарую. Кое-кто кого я ломал такие файлы скрывал в недрах DLL, в которой якобы был код, а на самом деле она была пустышкой, внутри которой хранился ключ. Автор думал что он мегамоск. Я уже вот как два года это все взломал с помошью банального FileMon, и юзаю дома.
Так что не парься - защита твоя слабенькая.
Программа расчитана на детей (8-16 лет) и тетушек за 40. Мне не нужна защита от тех, кто могет. Любую программу можно взломать, и с этим ничего не поделать.
Но такой вариант отсеит 90 процентов недоброжелателей.
Интересный проект по изучению английского:
Английский в формате путешествия по США
Dennis777 вне форума Ответить с цитированием
Старый 11.11.2013, 14:55   #9
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,229
По умолчанию

пишите в %userprofile%
хотя, согласен с Виталием, это даже не защита, так, детский сад..
Современные подростки (~14 лет) вполне смогут расковырять самостоятельно.
Это без учёта того, что в этом возрасте уже вполне серьёзные IT-шники встречаются (хоть и редко)!
Serge_Bliznykov вне форума Ответить с цитированием
Старый 11.11.2013, 15:05   #10
Человек_Борща
Старожил
 
Аватар для Человек_Борща
 
Регистрация: 30.12.2009
Сообщений: 11,426
По умолчанию

Цитата:
Если нет интернета - зарегистрировать нельзя. Напишет, что код неправильный или у вас отсутствует подключение.
если вы думате, что безисходного кода ПО изменить нельзя, вы сильно ошибаетесь. Так что исходник программы, у меня всеравно будет, хоть в машинносм варианте, но будет. И посмотреть что и из каких месте в коде вылазит - особого труда не составляет.

Цитата:
Программа расчитана на детей (8-16 лет) и тетушек за 40.
Дети позовут знакомых, которые в этом смыслят, а тетушки напрягут админа, для поиска ломаной версии.

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

При хорошей крипто-защите, можно успешно хрань ключ хоть на рабочем столе, главное чтобы ключ работал только на определенной машине, а не на всех сразу.
Защитщайте по железу.

Последний раз редактировалось Человек_Борща; 11.11.2013 в 15:07.
Человек_Борща вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
не создается файл записей в Delphi 2009 Cannibal Помощь студентам 2 27.01.2011 12:49
Файл в папке zumm Общие вопросы Delphi 5 21.05.2010 18:30
почему не создается файл? Serjuk Помощь студентам 23 14.05.2010 16:23
Не создается файл при алгоритме Вопрос-Ответ _PROGRAMM_ PHP 8 30.04.2010 20:40
Не создается объектный файл TASM Misha_M. Помощь студентам 0 27.12.2009 15:34