как дать шаблон на день и потом закрыть доступ?

lzlmrf

Client
Регистрация
14.08.2015
Сообщения
488
Благодарностей
149
Баллы
43
Есть такая возможность без выписывания боксов ? Если в шабе снять галки в "шифрование->все юзеры" то шаб все равно работает .. Не понятно для чего они тогда
 

arhip1985

Client
Регистрация
31.10.2011
Сообщения
2 994
Благодарностей
787
Баллы
113
без выписки бота. надо внутрению логику делать на проверку текущего времени с датой окончания демо периода в глабальной переменной со значением по умолчанию, которое вам надо будет задавать каждый раз когда выдаёте шаблон для демонстрации
 
  • Спасибо
Реакции: lzlmrf

arhip1985

Client
Регистрация
31.10.2011
Сообщения
2 994
Благодарностей
787
Баллы
113
ну и если текущая дата больше заданной, то завершать шаблон с оповещением об окончании демо периода
 

Lord_Alfred

Client
Регистрация
09.10.2015
Сообщения
3 916
Благодарностей
3 867
Баллы
113
Посмотри разработку от @doc в разделе реклама, он как раз для этого делает систему управления шаблонами.
 
  • Спасибо
Реакции: lzlmrf

Valiksim

Client
Регистрация
14.04.2012
Сообщения
1 344
Благодарностей
298
Баллы
83

Lord_Alfred

Client
Регистрация
09.10.2015
Сообщения
3 916
Благодарностей
3 867
Баллы
113
без выписки бота. надо внутрению логику делать на проверку текущего времени с датой окончания демо периода в глабальной переменной со значением по умолчанию, которое вам надо будет задавать каждый раз когда выдаёте шаблон для демонстрации
Уже не первый раз вижу совет засовывать что-то в "глобальную переменную" для определения демо/выписки шаблонов. Можете обосновать этот совет? Почему именно глобальную, а не обычную переменную?
 

arhip1985

Client
Регистрация
31.10.2011
Сообщения
2 994
Благодарностей
787
Баллы
113
Уже не первый раз вижу совет засовывать что-то в "глобальную переменную" для определения демо/выписки шаблонов. Можете обосновать этот совет? Почему именно глобальную, а не обычную переменную?
вот и я так подумал, когда написал))) но было уже поздно... просто так мысль как-то пошла, типа константа, значит глобальная должна быть, согласен, можно и в обычную переменную
 

Lord_Alfred

Client
Регистрация
09.10.2015
Сообщения
3 916
Благодарностей
3 867
Баллы
113
вот и я так подумал, когда написал))) но было уже поздно... просто так мысль как-то пошла, типа константа, значит глобальная должна быть, согласен, можно и в обычную переменную
Просто начитаются новички таких советов, не подумают головой, а потом в глобальной переменной будет лежать, например, дата выключения шаблона. А я возьму и через другой шаблон эту глобальную переменную поменяю :cl:
 

arhip1985

Client
Регистрация
31.10.2011
Сообщения
2 994
Благодарностей
787
Баллы
113
Просто начитаются новички таких советов, не подумают головой, а потом в глобальной переменной будет лежать, например, дата выключения шаблона. А я возьму и через другой шаблон эту глобальную переменную поменяю :cl:
если на то пошло, то у нас и винду никто не покупает... кто там из тех - кто не может себе сделать шаблон, полезет глобальную переменную менять)))
 

lzlmrf

Client
Регистрация
14.08.2015
Сообщения
488
Благодарностей
149
Баллы
43
Почитал все советы и рекомендации, спасибо. Понравилась идея с присвоением переменной значения в милисекундах и отчета от нее нужного количества секунд..дапустим при первом запуске - парсить данные из https://time100.ru/online . Потом , если переменная определена то просто чекать при запуске . Оказывается все просто и не надо париться с определением руками для каждого шаба.
 

arhip1985

Client
Регистрация
31.10.2011
Сообщения
2 994
Благодарностей
787
Баллы
113
Просто начитаются новички таких советов, не подумают головой, а потом в глобальной переменной будет лежать, например, дата выключения шаблона. А я возьму и через другой шаблон эту глобальную переменную поменяю :cl:
их вроде нельзя из другого шаба поменять, в справке написано:
Глобальные переменные, кроме имени, имеют свои области видимости. Это сделано для того, чтобы не путать глобальные переменные от разных проектов. Например, вы купили или просто скачали чужой проект. Даже если имена глобальных переменных в ваших проектах и других будут одинаковы, они все равно не будут мешать друг другу, т.к. у них будут разные области видимости. Несмотря на то, что это глобальные переменные, они все же создаются в вашем проекте, а не в самом ZennoPoster. Т.е. глобальная переменная создается, когда ваш проект первый раз к ней обращается. А ее значение пропадает после перезагрузки ZennoPoster.
Почитал все советы и рекомендации, спасибо. Понравилась идея с присвоением переменной значения в милисекундах и отчета от нее нужного количества секунд..дапустим при первом запуске - парсить данные из https://time100.ru/online . Потом , если переменная определена то просто чекать при запуске . Оказывается все просто и не надо париться с определением руками для каждого шаба.
обрати внимание что - А ее значение пропадает после перезагрузки ZennoPoster. и так со всеми переменными, если не задано значение по умолчанию, а его только руками в шаблоне можно указать.. т.е. то что спарсишь или зафиксируешь DateTime.Now в переменную при первом ззапуске после завершения шаблона не будет ничего содержать и процесс повторится
 

arhip1985

Client
Регистрация
31.10.2011
Сообщения
2 994
Благодарностей
787
Баллы
113
остаётся либо руками в каждой демке прописывать либо создавать инсталяционный файл с кучей закодированного текста, либо писать инсталяционный лог в свою бд
 

lzlmrf

Client
Регистрация
14.08.2015
Сообщения
488
Благодарностей
149
Баллы
43
остаётся либо руками в каждой демке прописывать либо создавать инсталяционный файл с кучей закодированного текста, либо писать инсталяционный лог в свою бд
почему и зачем? 2 шаба - 1 демо 1 нормальный. Что там кодировать то если шаб и так закрытый изначально?
 

arhip1985

Client
Регистрация
31.10.2011
Сообщения
2 994
Благодарностей
787
Баллы
113
почему и зачем? 2 шаба - 1 демо 1 нормальный. Что там кодировать то если шаб и так закрытый изначально?
вы написали - Потом , если переменная определена то просто чекать при запуске.
переменная будет определена, если она определена при первом запуске после парсинга или из DateTime.Now , только на время выполнения шаблона, либо до перезагрузки ЗП (до перезагрузки, если глобальная), а потом она заново перезапишется. Поэтому это значение, чтобы оно сохранилось и использовалось при следующем запуске надо сохранять где-то, либо как значение по умолчанию (руками), либо в файл при первом запуске (а кодировать файл своим кодовым набором, для того, чтобы юзер не поменял сам время первого запуска руками) либо не в файл а в свою БД запись делать, и чекать бд
 

Valiksim

Client
Регистрация
14.04.2012
Сообщения
1 344
Благодарностей
298
Баллы
83
А я возьму и через другой шаблон эту глобальную переменную поменяю
Как такое возможно?

Что там кодировать то если шаб и так закрытый изначально?
Как я понял, логика такая: ты отдаешь шаблон по дате 2017.05.11, закончится он должен 2017.05.12
Если вручную. всё прописать, то без проблем, он закончит действие когда ты укажешь
А если брать значение дата + 1 день, то первоначальное значение надо куда-то сохранить, иначе, оно будет каждый новый день запускаться как новое, как первоначальное, и шабом (если ты его хочешь ограничить в действии по времени), можно будет пользоваться бесконечно долго. А если ты значение при первоначальном запуске сохранишь куда-то, и в при следующем запуске будешь брать и сравнивать, тогда есть какая-то гарантия, что шаб можно будет остановить при достижении критической точки.

Это слабенькая защита, но всё-таки. Вопрос остаётся как и что сохранить и как это дело зашифровать или куда-то спрятать
 

Valiksim

Client
Регистрация
14.04.2012
Сообщения
1 344
Благодарностей
298
Баллы
83

Lord_Alfred

Client
Регистрация
09.10.2015
Сообщения
3 916
Благодарностей
3 867
Баллы
113
Почитал все советы и рекомендации, спасибо. Понравилась идея с присвоением переменной значения в милисекундах и отчета от нее нужного количества секунд..дапустим при первом запуске - парсить данные из https://time100.ru/online . Потом , если переменная определена то просто чекать при запуске . Оказывается все просто и не надо париться с определением руками для каждого шаба.
Не стоит так делать, я отсниффаю этот запрос, подниму локальный адрес time100.ru со страницей /online, где всегда буду отдавать нужное время.
Лучше системное время смотрите, оно всегда верное (ZP должен это чекать)

Глобальные переменные, кроме имени, имеют свои области видимости. Это сделано для того, чтобы не путать глобальные переменные от разных проектов. Например, вы купили или просто скачали чужой проект. Даже если имена глобальных переменных в ваших проектах и других будут одинаковы, они все равно не будут мешать друг другу, т.к. у них будут разные области видимости. Несмотря на то, что это глобальные переменные, они все же создаются в вашем проекте, а не в самом ZennoPoster. Т.е. глобальная переменная создается, когда ваш проект первый раз к ней обращается. А ее значение пропадает после перезагрузки ZennoPoster.
Тут вы скорее всего правы, это я не вспомнил. Но, думаю, что тоже можно обойти, было бы желание (хотя не факт).
PS: если юзать простые переменные, то точно не обойти будет.
 

lzlmrf

Client
Регистрация
14.08.2015
Сообщения
488
Благодарностей
149
Баллы
43
ну а можно переписать переменной значение по умолчанию?
 

Valiksim

Client
Регистрация
14.04.2012
Сообщения
1 344
Благодарностей
298
Баллы
83

arhip1985

Client
Регистрация
31.10.2011
Сообщения
2 994
Благодарностей
787
Баллы
113

lzlmrf

Client
Регистрация
14.08.2015
Сообщения
488
Благодарностей
149
Баллы
43

Кто просматривает тему: (Всего: 1, Пользователи: 0, Гости: 1)