![]() |
А кто как делает защиту своего ролика путем проверки наличия файла на другом сайте?
Ну, в общем, subj... Я понимаю, что лучше путевый договор, чем подобные ухищрения, но мы с вами живем в непростой стране... Если кто делал, поделитесь строкой ActionCкрипта, а то я так перемудрил, что у меня подобная защита, бывает, "по таймауту вылетает", и даже при наличии файлика на моем сайте или правильного значения переменной в нем все равно иногда на секунду пишет: "Заплати и спи спокойно..." :D
|
А еще, как я подумал, можно ставить просто expiration date в ролик - если системная дата больше 1 декабря 2002 года, то рисуем кукиш... Ничего, что я сам с собой разговариваю? ;)
|
меня вот тоже реально волнует данная проблема.
до этого делал триал версию (на 10 дней скажем), когда все нормально меняешь на правильный файл. Не по людски, но тогда как? |
Да, подобный простейший триал я вставляю уже по умолчанию:
nowDate = new Date(); timesec = nowDate.getTime(); if (timesec > 1039057206200) { gotoAndStop (3); } Вот в этот четверг уже один сайт напишет все, что думает о заказчике... :mad: А насчет того, чтобы оставлять под контролем, я делаю слегка коряво - Код:
в первом кадре |
зачем такой изврат?
Эххх.. давно не писал.
так. задача - дать понять плохим дядям, что уносить исходник - так делать плохо. ////////////// вариант1. Это в том случае, ежели на всехх компьютерахх системное время равно московскому и дата соответствует реальной. onClipEvent(load) { _global.site = "http://pupkin.ru/"; _global.cheker = site + "cheker/"; _global.isLegal = cheker + "checkThisSite.txt"; // стучимся на сайт изготовителя. loadVariables(isLegal, this); // грузим все это добро в клип. // в текстовом файле - переменная &deathDate=12.10.12& container = new Date(); year = (container.getYear() - 100); year < 10 ? year = "0" + (container.getYear() - 100) : 0; month = (container.getMonth() + 1); month < 10 ? month = "0" + (container.getMonth() + 1) : 0; day = (container.getDate() + 1); day < 10 ? day = "0" + (container.getDate() + 1) : 0; timeToWait = 15000; // устанавливаем время, в течении которого будем ждать // ответа от сайта изготовителя; } onClipEvent(data) { now = day + "." + month + "." + year; // формируем строку даты на компе. if (now !== deathDate) { // ежели все плоххо. откроем сайт изготовителя. getURL(cheker + "theRealAuthor.html"); // и запустим пустой цикл. // клиенту покажут слайд-шоу. for(;;) : 0; unloadMovie(_root); // и выгрузим рут. тут мультики и закончатся. } else { _root.nextFrame(); // ежели все хорошо - пошли играться; } } onClipEvent(enterFrame) { getTimer() - timeToWait > 0 ? _root.nextFrame(); // ежели время ожидания вышло - пошли играться. // а то вдруг файл текстовый не закачался. А клиент // заплатил уже... :( } //////////// Но этот вариант - ...вый. Гемрройно... вариант2. в Перле пятой версии точно есть модуль, возвращающий время часовых поясов. И дату. Заводим базу данных из имени сайта и даты его смерти. В администраторской части можем ставить галку напротив сайта, тем самым активируя дату смерти. onClipEvent(load) { _global.site = "http://pupkin.ru/"; _global.isLegal = site + "cgi-bin/cheker.cgi?timeZone=" + new Date ().getTimezoneOffset()/60; // стучимся на сайт изготовителя. отдаем ему значение // смещения времени. скрипт формирует ложное время и // производит ложное смещение даты относительно // часового пояса. Получаем cheked 1 или 0. loadVariables(isLegal, this); // грузим все это добро в клип. // в текстовом файле - переменная &deathDate=12.10.12& timeToWait = 15000; // устанавливаем время, в течении которого будем ждать // ответа от сайта изготовителя; } onClipEvent(data) { if (cheked !== 1) { // ежели все плохо. откроем сайт изготовителя. getURL(cheker + "theRealAuthor.html"); // и запустим пустой цикл. // клиенту покажут слайд-шоу. for(;;) : 0; unloadMovie(_root); // и выгрузим рут. тут мультики и закончатся. } else { _root.nextFrame(); // ежели все хорошо - пошли играться; } } onClipEvent(enterFrame) { getTimer() - timeToWait > 0 ? _root.nextFrame(); // ежели время ожидания вышло - пошли играться. } //////////// Тут мороки меньше. Управлять легче. Зашел к себе на сайт из курортного города Мухосранска и клиенту неххорошему бяку сделал. А вдруг у пользователя своя дата? Вдруг он - потомок Исилдура? Или еще чего доброго - Фродо? :). даа........ остается надеяться, что заказчик - не Гэндальф. :) |
loadVariables ("url" ,level/"target" [, variables])
Parameters url An absolute or relative URL where the variables are located. If you access the movie using a Web browser, the host for the URL must be in the same subdomain as the movie itself. вот это меня и смущает. люди, все вышепреведенное у вам работает? плагин реально грузит файл с другого домена? или у меня руки кривые.. :( а то что не пишу в своем файле - результат всегда какой-нибудь один - либо показывает "заплати и спи..." либо нет. И проверку загрузки ставлю.... |
sevast Здорово! Что значит системный подход! :cool:
|
Можно выложить демо сайта на свой сервер и сделать так, чтобы из другого места просто не запускалось (даже с харда).
|
Намба ван. Тристапядесятнафиктысячраз уже говорилось что в целях безопасности флеш не грузит вариаблесы с другого домена.
Намба ту. Проще вставить строку loadMovieNum('http://yoursite.com/clientID/ok.swf',999); Если все нормально, то ничего делать и не надо. А вот если платить никак не хотят, положить в http://yoursite.com/clientID/ok.swf все что вам вздумается. |
gOloVasTicK, а ведь тоже интересный способ! Как это в голову не пришло! И главное, ошибка исключена - зазря никогда ничего не появится! :)
|
| Часовой пояс GMT +4, время: 20:22. |
Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.