powered by simpleCommunicator - 2.0.41     © 2025 Programmizd 02
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / Защита от копирования
23 сообщений из 23, страница 1 из 1
Защита от копирования
    #40049314
Arimle
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Как я могу предотвратить копирование программы на другой компьютер? Я нахожу и проверяю ProcessorId с помощью следующего программного обеспечения.
Код: plsql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
LOCAL lcComputer, loWMIService,loItemCollection
lcComputer = "."
loWMIService = GetObject("winmgmts:\\" + lcComputer + "\root\cimv2")
loItemCollection = loWMIService.ExecQuery("SELECT * FROM Win32_Processor",,48)
For Each loItem in loItemCollection
? "ProcessorId: " + loItem.ProcessorId
NEXT

iF ALLTRIM(user1)==us1.and.alltrim(pass1)==loItem.ProcessorId
     DO prog.prg
ELSE
    quit
ENDIF



Если ProcessorId тот же, тогда программа запускается. В противном случае не должен запускатся.
Но проблема в том, что эта программа находит собственный ProcessorId для каждого компьютера и на каждом компьютере запускается. Помогите пожалуйста, как можно делать так что программа запускалась только на этом компютера?
...
Рейтинг: 0 / 0
Защита от копирования
    #40049320
Arimle
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Я хотел сделать так: Когда впервые запускается программа, она отправляет ProcessorId этого компьютера мне на маил. (Он этого не знает / не замечает) Я отправляю ему обратно этот ProcessorId в качестве пароля на текстовом файле. Но, не получается отправить маил. Помогите пожалуйста, как можно делать такое?
Или есть ли другие идеии, как вообще делается это?
...
Рейтинг: 0 / 0
Защита от копирования
    #40049325
PaulWist
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
1. Защита проги - что такого ценного в вашей нетленке?

Общий вывод, защитить от копирования не получится.

Используйте любой простой способ, хоть проверку на существование файла, от чайника поможет.

2.
Arimle
.. Но, не получается отправить маил.


Поиск по CDO.Message
...
Рейтинг: 0 / 0
Защита от копирования
    #40049329
Arimle
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
PaulWist,

Я уже использую проверку на существование файла. Но, этот файл один для всех компьютеров и при копирование этот файл тоже можно копировать.
...
Рейтинг: 0 / 0
Защита от копирования
    #40049333
Arimle
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
И еще если я сам буду установить программу, тогда нет проблем. А если другой человек, который не должен знать об этом файле, тогда как?

Про CDO.Message я искал и здесь, и фоксклубе, не нащел не 1 работающий код. Или плохо искал...
...
Рейтинг: 0 / 0
Защита от копирования
    #40049335
Фотография Alex_Ustinov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Arimle,

через ввод "серийного номера" при первом запуске и прописка с/н в файл в какое-нибудь место о котором не будет знать другой человек
...
Рейтинг: 0 / 0
Защита от копирования
    #40049338
Arimle
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Alex_Ustinov
Arimle,

через ввод "серийного номера" при первом запуске и прописка с/н в файл


Как это делается, не можете объяснить, пожалуйста.
И это "первом запуск" для 2-го компьютера тоже будеть и на 2-м компьютера не будеть программа работать?
...
Рейтинг: 0 / 0
Защита от копирования
    #40049345
Фотография Alex_Ustinov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Arimle,

при запуске идет поиск файла с "серийником" (закодированным как вам хочется) этот файл можно сделать "скрытым"
при переносе программы человек который не знает что этот файл существует и при запуске программы будет запрос проверка сущ-я файла и проверка серийника в нем /
если ф. не существует - запрос серийника, далее - ввел правильно - кодированный серийник пишется в секретный файл, при следующем запуске проверка проходит успешно, все нормально, программа запускается.
авторИ это "первом запуск" для 2-го компьютера тоже будеть и на 2-м компьютера не будеть программа работать? а вы чего добиваетесь "защитой"?
Таких схем штук 11599, как комаров в летний знойный вечер на пруду.
Придумывайте какой хотите.
В дистре VFP9 насколько помню был установщик, и пример какой-то функции генерации сер-нума. Давно это было, смутные воспоминания.
Тут вопрос в другом, что "глубокие функции" генерации-проверки будут требовать админских прав
...
Рейтинг: 0 / 0
Защита от копирования
    #40049347
Фотография Alex_Ustinov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
естественно серийник прошит в программе (лучше также в каком нить файле) либо генерируется из каких то данных о ПК
...
Рейтинг: 0 / 0
Защита от копирования
    #40049352
Arimle
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Alex_Ustinov,
Мой код, на 1-м посту не такой же код как Вы говорите?
...
Рейтинг: 0 / 0
Защита от копирования
    #40049387
Arimle
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Alex_Ustinov
Arimle,

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


Можно ли видеть такой код? Что-то, я не могу понять кака это делается.
...
Рейтинг: 0 / 0
Защита от копирования
    #40049388
Arimle
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Arimle
Alex_Ustinov
Arimle,

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


Можно ли видеть такой код? Что-то, я не могу понять как это делается.
...
Рейтинг: 0 / 0
Защита от копирования
    #40049401
Dima T
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Arimle
PaulWist,

Я уже использую проверку на существование файла. Но, этот файл один для всех компьютеров и при копирование этот файл тоже можно копировать.

Все можно скопировать. Просто этот файл должен быть не там где все остальные. Сохрани в профиле пользователя
Код: sql
1.
? GETENV('LOCALAPPDATA')


ProcessorId не советую использовать, не каждый проц дает его прочитать.
...
Рейтинг: 0 / 0
Защита от копирования
    #40049404
Arimle
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Dima T, спасибо.
Это я понял.
Я не понимаю вот это: допустим я нащел серийник винта или processorid и допустим это записал в тхт файл. Когда программа запускается проверяем этот файл.
В другом компьютера тоже самый будет происходить: Программа найдет серийник винта или processorid и программа будеть запускатся и в этом компьютера. И так программа будеть запускатся на всех компьютеров. Я хочу что, программа без моего разрешение не запускалась, типа как регистрация что-ли
...
Рейтинг: 0 / 0
Защита от копирования
    #40049481
Фотография ВладимирМ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ну, Вам уже описали примерную схему. Еще раз опишу отдельно

1. При первом запуске сохраняете прочитанное значение в каком-либо файле.
1.1. Если нет файла или в файле нет значения - первый запуск - регистрация. Запись значения в файл
1.2. Если есть значение в файле - не первый запуск и надо сравнить прочитанное значение с сохраненным значением.
1.2.1. Сохраненное в файле значение равно прочитанному - все в порядке, можно работать
1.2.2. Сохраненное в файле значение отличается от прочитанного - приложение скопировано. Запрет запуска или запрос на регистрацию

Поскольку речь идет о FoxPro, то логичным решением является сохранение этого значения в файле DBF. Но можно и обычный TXT для этого использовать.

Правда, Вам также уже сказали, что не стоит оно того. Кончится это тем, что Вы сами же все это отключите. Впрочем, попробуйте...
...
Рейтинг: 0 / 0
Защита от копирования
    #40050603
Arimle
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Добрый день,

Пожалуйста, оценивайте мой код.
Принцип такой: При 1-м запуске программы USERS.DBF-ID пусто будеть. И ProcessorID запишем туда. Программа проверяет user, password и ProcessorID. Если все правильно программа работает.
...
Рейтинг: 0 / 0
Защита от копирования
    #40050943
Arimle
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Я сам тестировал, думаю что, нормально работает. Скажите пожалуйста, какие минусы может быть, каторый я не вижу данный момент?
...
Рейтинг: 0 / 0
Защита от копирования
    #40051317
Arimle
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
_MBK_, Спасибо.
Я понимаю конечно и постараюсь еще что-нибудь придумать. Но, данный момент главная цель была для установки я не ходил к клиенту. И клиент не могли копировать в другой комр который у него уже есть
...
Рейтинг: 0 / 0
Защита от копирования
    #40051446
Фотография ВладимирМ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Arimle
Я сам тестировал, думаю что, нормально работает. Скажите пожалуйста, какие минусы может быть, каторый я не вижу данный момент?


Вопрос не в выбранном алгоритме (он то как раз рабочий), а в самой идее пароля/логина. Это для коммерческих организаций вопрос денег. А у Вас-то в чем вопрос? Тоже в деньгах?

Если говорить о конкретной реализации, то

1. WMI может быть отключен администратором или пользователем.
2. Запрошенный реквизит может быт недоступен для чтения
3. Крайне не разумно для идентификации использовать некие внешние (по отношению к FoxPro) библиотеки. Просто очень часто, что именно будет возвращено зависит от используемого для определения этой информации приложения. А если изменится версия приложения, может измениться и возвращаемое значение
4. Слабое место любого приложения, работающего с файлами - это сами файлы. Они могут быть повреждены или заблокированы сторонним приложением. Например, очень часто такая блокировка возникает как следствие работы антивируса. Касперский очень часто такое делает

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

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

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

PS: В Вашем коде вообще отсутствует какой-либо обработчик ошибок. Например, если нет нужного файла DBF? Предполагается, что есть какой-то глобальный обработчик? Настроенный до вызова данной формы?
...
Рейтинг: 0 / 0
Защита от копирования
    #40051483
Arimle
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
ВладимирМ, Спасибо за детальный обясненине.
Моя цель - сделать настройки при первичной регистрации приложения и чтобы для установки я не ходил к клиенту. И клиенты не могли копировать в другой комп. который у него уже есть.

И знаете мне что интересно, конкретный для этого целя (настройки при первичной регистрации и защита от копирование) я не нащел ни одного кода.
...
Рейтинг: 0 / 0
Защита от копирования
    #40051690
Фотография ВладимирМ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ну, защиты от копирования нет, потому что для FoxPro она не предусматривалась изначально. А сейчас уже и не нужна

Если Ваша защита от копирования - это всего-лишь указание на необходимость неких настроек, то тем более не вижу смысла. Если настройки не корректны, то программа будет не корректно работать. Это само по себе лучшая защита. Зачем дополнительно что-то выдумывать?

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

Как перенести готовое приложение на машину клиента

Т.е. при помощи некоего внешнего приложения создаете дистрибутив Вашего приложения, который просто запускается у клиента. И там делает все необходимые настройки. Если кроме расположения файлов, регистрации и создания нужной структуры каталогов требуются какие-то дополнительные программные действия, то у программ-инсталяторов обычно предусмотрен вариант запуска некоего приложения по окончании установки. Но эта дополнительная программа у каждого будет своя, поэтому также не может быть общего решения.
...
Рейтинг: 0 / 0
Защита от копирования
    #40063170
tandem
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
...
Рейтинг: 0 / 0
Защита от копирования
    #40075812
AK-Shah
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Во времена DOS защищали от копирования путем записи какой-нибудь последовательности символов в область жесткого диска, идущая за MBR, без создания файла. Сейчас такие низкоуровневые операции, наверное, ОС не даст выполнить.
...
Рейтинг: 0 / 0
23 сообщений из 23, страница 1 из 1
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / Защита от копирования
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]