Форум программистов, компьютерный форум, киберфорум
Delphi для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 5.00/3: Рейтинг темы: голосов - 3, средняя оценка - 5.00
2 / 2 / 2
Регистрация: 28.02.2016
Сообщений: 158
1

Покупка приложения или отмена работы приложения

28.02.2016, 10:27. Показов 543. Ответов 13

Author24 — интернет-сервис помощи студентам
Приветствую.
Допустим я создам свою программу для небольшой компании. Они возьмут ее на пару недель тестировать, проверять все ли так хорошо работает. А что, если они потом откажутся платить за программу?

Можно сделать как-то так, чтобы я мог удаленно заблокировать работу программы, если мне не заплатят?
Какие компоненты мне помогут это осуществить и как? С помощью компонентов вкладки Internet или Indy-компонентов?
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
28.02.2016, 10:27
Ответы с готовыми решениями:

Разработка прикладного приложения для работы с БД - или выбор языка
Добрый день! Помогите, пожалуйста, разрешить следующий вопрос. Что имеем: организация,...

Как узнать результат функции приложения A из приложения В
Приложение А работает и вернула значение функции True или False. Как узнать об этом из приложения...

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

ShellExecuteEx, WaitForSingleObject, Ожидание завершения работы другого приложения
добрый вечер. итак, задача (которую я решил благодаря CyberForum.ru :)), следующая: необходимо...

13
Модератор
9256 / 6034 / 2379
Регистрация: 21.01.2014
Сообщений: 25,793
Записей в блоге: 3
28.02.2016, 10:48 2
Цитата Сообщение от Hinc Посмотреть сообщение
чтобы я мог удаленно заблокировать работу программы
А ты прямо уверен, что твоя программа будет эксплуатироваться на компе с выходом в Интернет? Если все это установлено будет на автономной станции, то как ты на нее удаленно попадешь?
Я когда-то делал так: при первом запуске программы писал глубоко в реестр параметр с зашифрованным значением количества запусков (или можно даты установки, если програма предполагает работу в качестве сервиса, не выключаясь круглые сутки). Далее при каждом старте перезаписывал этот параметр, увеличивая на 1 (или считывал этот параметр и сравнивал с декущей датой). Если кол-во запусков = 14 (текущая дата = дата установки + 14 дней), а оплаты нет - все привет, программа перестает работать... Пришла оплата - получают новый екзешник без этих прибабахов...
Да, я все знаю, триалы делаются не так, все это легко обходится и т.д. и т.п... Но раз компания обращается к Вам за написанием программы, логично предположить, что собственых программистов у них нет и, следовательно, 99% гарантии, что данную "защиту" отследить не кому будет.
1
5784 / 4526 / 1431
Регистрация: 14.04.2014
Сообщений: 20,157
Записей в блоге: 20
28.02.2016, 10:57 3
все зависит от...

все проще, если у вас есть интернет сервер
программа связывается с ним и дальше либо работает, либо нет..
1
2 / 2 / 2
Регистрация: 28.02.2016
Сообщений: 158
28.02.2016, 11:22  [ТС] 4
D1973, У них будет интернет. Однозначно. Они прям таки зависимы от него.
Да, программиста у них нет. Отследить не смогут. Но как кодом реализовать? С реестром не очень дружу.

Добавлено через 1 минуту
krapotkin, Как это реализовать? Помогите пожалуйста.
0
Модератор
9256 / 6034 / 2379
Регистрация: 21.01.2014
Сообщений: 25,793
Записей в блоге: 3
28.02.2016, 12:12 5
Посмотри, кстати, вот эту тему... Я помню, что тут что-то наподобие уже было раньше...
1
2 / 2 / 2
Регистрация: 28.02.2016
Сообщений: 158
28.02.2016, 12:42  [ТС] 6
Спасибо, посмотрю.
0
5784 / 4526 / 1431
Регистрация: 14.04.2014
Сообщений: 20,157
Записей в блоге: 20
28.02.2016, 12:48 7
в этом случае нужен небольшой веб-сервер в интернетах
это по нынешним временам несложно и недорого
программа вызывает http://myserver.ru/check?login=aaa&pass=bbb
сервер получает login=aaa pass=bbb и проверяет в базе данных или просто в текстовом файлике есть ли такая пара
в ответ выдает просто код 200 - ОК или 401 - Unauthorized
либо какую-нибудь очень важную для работы программы информацию

программа получает ответ сервера и либо работает дальше, либо нет

Добавлено через 1 минуту
начинающий программист на PHP это сделает за день, опытный за полчаса
1
2 / 2 / 0
Регистрация: 27.05.2012
Сообщений: 72
28.02.2016, 13:15 8
есть компонент для таких случаев
Вложения
Тип файла: zip mxprotector.zip (100.6 Кб, 3 просмотров)
1
2 / 2 / 2
Регистрация: 28.02.2016
Сообщений: 158
28.02.2016, 14:02  [ТС] 9
О, это интересно. Ha Php это осуществлю, но как сделать так, чтобы программа считала ответ? В этом загвоздка для меня.

Добавлено через 23 минуты
Целый компонент, спасибо! Установлю.
0
2 / 2 / 0
Регистрация: 27.05.2012
Сообщений: 72
28.02.2016, 14:08 10
Цитата Сообщение от Hinc Посмотреть сообщение
но как сделать так, чтобы программа считала ответ?
какой ответ, с этим компонентом ты можешь сделать триал версию на несколько дней или регистрацию программы по ключу, если ты хочешь сделать это както без палева тогда просто
Delphi
1
2
3
4
5
memo1.Lines.Text:= IdHttp1.Get ('http://сайт/BAN.txt');
if Memo1.Text = '1' then
Begin
close;
end;
замути это в FormCreate чтоб при запуске програмы она проверяла можно ей работать или нет, а сам когда поймеш что тебя кинули просто на сайте в BAN.txt напиши 1 и прога сама все сделает
1
5784 / 4526 / 1431
Регистрация: 14.04.2014
Сообщений: 20,157
Записей в блоге: 20
28.02.2016, 14:17 11
интересно, при чем тут мемо?
чем простая строка не подошла?
0
2 / 2 / 0
Регистрация: 27.05.2012
Сообщений: 72
28.02.2016, 14:38 12
Цитата Сообщение от krapotkin Посмотреть сообщение
интересно, при чем тут мемо?
чем простая строка не подошла?
это просто пример, конечно же проще создать переменную типа String вместо Memo1 и с ней уже работать, в мемо я грузил чисто для проверки грузит ли и что грузит.
0
Ушел с форума
Эксперт С++
16473 / 7436 / 1187
Регистрация: 02.05.2013
Сообщений: 11,617
Записей в блоге: 1
28.02.2016, 14:57 13
Цитата Сообщение от Hinc Посмотреть сообщение
Допустим я создам свою программу для небольшой компании. Они возьмут ее на пару недель тестировать, проверять все ли так хорошо работает. А что, если они потом откажутся платить за программу?
Поставь программу на выделенный компьютер и дай к нему доступ только
через RDP или TeamViewer с ограниченными правами, чтобы нельзя было,
например, стянуть файлы программы. Вот и вся защита. Захотят - купят.
Не захотят - просто выключаешь удаленный доступ.
0
2 / 2 / 2
Регистрация: 28.02.2016
Сообщений: 158
28.02.2016, 18:01  [ТС] 14
Интересно-интересно. Попробую так. =)

Добавлено через 21 минуту
hamik, работает! Спасибо. =)
0
28.02.2016, 18:01
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
28.02.2016, 18:01
Помогаю со студенческими работами здесь

Как проверить, есть ли у приложения доступ в ту или иную папку?
Допустим, есть TOpenDialog для сохранения или открытия файла. Возможны такие варианты...

Как можно вывести из клиент-серверного приложения данные в Excel или Word?
Например, данные возвращаемые сервером клиенту, хоть даже текущие сообщения клиент-серверного чата..

Проверить работу приложения для пустых или заведомо недопустимых значений полей
С клавиатуры вводится цена за 1 кг и вес продукта. Вывести стоимость покупки в рублях (N руб. M...

Отслеживание завершения работы DOS-приложения: WaitForSingleObject или GetExitCodeProcess?!
Запускаю через ShellExecute или через CreateProcess ДОСовское приложение. Именно так, а не через VB...


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

Или воспользуйтесь поиском по форуму:
14
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru