Ru-Board.club
← Вернуться в раздел «Программы»

» Autoplay Media Studio

Автор: Devil91
Дата сообщения: 15.09.2007 16:45

Цитата:
Думать не хотим, ищем готовые решения?


Огромное спасибо!
Автор: gdtu
Дата сообщения: 17.09.2007 22:06
Народ!
как сделать чтобы можно было ограничить количество запусков,
например запустить только один раз, и файл потом сам удалялся,
и еще
при установке триальной защиты достаточно установить другое время
и прога начинает работать
как обойти это
Автор: Lexua
Дата сообщения: 18.09.2007 09:39
gdtu

Цитата:
как сделать чтобы можно было ограничить количество запусков,

По разному, например проверять наличие определенной записи в реестре при старте + счетчик в том же реестре (напр. увеличивать значение переменной в реестре при каждом запуске на еденицу и производить соответственно проверку)


Цитата:
или например блокировать попытку запустить ее с другого компа

тут пож. поподробнее. Вобще-то это привязка к железу компа и просто средствами AMS это тяжело решить, хотя если на компе есть сетевуха, то можно привязаться к ее МАС адресу напимер.

Далее слово настоящим профи tavria2 и GOOSE
Автор: yershovss
Дата сообщения: 18.09.2007 16:57
Здраствуйте!!! я начинающий пользователь этой проги и у меня с ней одна проблема.

Есть две кнопки с названием программ и есть одна кнопка Setup. Как сделать так чтобы на нажатие setup запускалась та программа которая нажата, а то у меня все время запускается сразу обе установки....помогите
Автор: Lexua
Дата сообщения: 18.09.2007 21:25
yershovss
Сделай три кнопки - две Toggle напр But1 и But2 и одну Standart Setup
для But1 в On Click код

Цитата:
Button.SetState("But2", BTN_UP);

для But2 в On Click код

Цитата:
Button.SetState("But1", BTN_UP);


для Setup в On Click код

Цитата:
But1State = Button.GetState("But1");
But2State = Button.GetState("But2");
if But1State == 1 then
File.Run("AutoPlay\\Docs\\MyProg1.exe", "", "", SW_SHOWNORMAL, false);
elseif But2State == 1 then
File.Run("AutoPlay\\Docs\\MyProg2.exe", "", "", SW_SHOWNORMAL, false);
end


А вобще конечно справка рулит



Автор: GOOSE
Дата сообщения: 18.09.2007 22:36
yershovss
Если ты запускаешь по одной программе, то зачем тебе третья кнопка?
Запускай по нажатию каждой кнопки свою программу
Автор: gdtu
Дата сообщения: 19.09.2007 00:56
нужно сохранить картинку с Image Object на HDD
нашел вот такой код

image1 = Dialog.FileBrowse(true, "Locate File", _DesktopFolder, "Image Files (*.jpg*)|*.jpg*|", "", "jpg", false, false);
if image1[1] ~= "CANCEL" then
    tblFileInfo = String.SplitPath(image1[1])
    File.Copy(image1[1], "C:\\mydir\\"..tblFileInfo.Filename..tblFileInfo.Extension, true, true, false, true, nil);
end

какие будут мысли ?
Автор: GOOSE
Дата сообщения: 19.09.2007 08:32
gdtu
Инфы недостаточно.
Используй File.Copy, а путь получай в зависимости от того, как ты его вставляешь в Image Object
Если динамически, то сложнее, если прямо, то используй путь к файлу...
Короче, я не понял вопроса

Автор: gdtu
Дата сообщения: 19.09.2007 09:27
вопрос заключается в следующем

на странице есть превьюшки
и при наведении мышки на них картинка грузится в Image1

Image.Load("Image1", "AutoPlay\\Images\\indigorose.png");

должна быть возможность сохранять и распечатать ее на HDD
по идее скрипт должен выглядеть примерно так

File.Copy("Image1", "C:\\DestDir\\", true, true, false, true, nil);

но на практике это не работает

и если для того чтобы распечатать Object Web
в справке есть сценарий

Web.Print("Web4");

то для Image1 это тоже не работает

например

Image.Print("Image1"); или File.Print("Image1");

как то совершенно не логично почему в одном случае это работает а в другом нет
Автор: Lexua
Дата сообщения: 19.09.2007 11:14
gdtu
Попробуй так:


Цитата:
ImagePath = _SourceFolder.."AutoPlay\\Images\\indigorose.png"
Image.Load("Image1", ImagePath);


ну и соответственно


Цитата:
File.Copy(ImagePath, "C:\\DestDir\\", true, true, false, true, nil);


и т.д.
Автор: GOOSE
Дата сообщения: 19.09.2007 11:53
gdtu
Снова не хотим читать справку
Ну сам посуди, как это:

Цитата:
File.Copy("Image1", "C:\\DestDir\\", true, true, false, true, nil);

должно работать?
Первый параметр - это путь!
А ты пытаешься в него запихать имя объекта...

Попробуй так:


Код: Image.Load("Image1", "AutoPlay\\Images\\indigorose.png");
File.Copy("AutoPlay\\Images\\indigorose.png", _DesktopFolder.."\\indigorose.png", true, true, false, true, nil);
Автор: gdtu
Дата сообщения: 19.09.2007 20:02
Всем спасибо
будем постигать науку с вашей помощью
в справке многого нет поэтому советы со стороны
просто необходимы
Автор: Drusus
Дата сообщения: 19.09.2007 21:46
Похоже, проблема с кнопками "previous/next" в MediaPlayer Plugin не решаема. На форуме IndigoRose эта тема поднималась, но предложенные варианты работают, не так, как надо. Жаль.
Автор: GOOSE
Дата сообщения: 20.09.2007 16:30
Господа, требуется совет...
Разбираю текстовый файл в массив, использую функцию

Код:
-- Конвертирование файла CSV в массив
function CsvToArray()
local cFileName = _SourceFolder.."\\AutoPlay\\Docs\\members.txt"; -- путь к файлу CSV
local cSeparator = "\t";            -- символ разделитель
local tRows = TextFile.ReadToTable(cFileName);    -- таблица строк из файла CSV
local tDataArray = {};        -- массив данных (по умолчанию)    
if (tRows) then            -- если таблица строк не пустая
for n, cString in tRows do        -- в цикле перебираем строки таблицы
if (String.TrimLeft(cString, nil) ~= "") then    -- если строка не пустая
local nSeparatorPos = 1;        -- позиция разделителя в строке (по умолчанию)
local nRow = n - 1;            -- номер строки
local nCol = 1;            -- номер колонки (по умолчанию)
tCols = {};            -- таблица колонок строки                 
while (nSeparatorPos ~= -1) do        -- в цикле получаем данные для колонок строки
nSeparatorPos = String.Find(cString, cSeparator, 1, false);    -- позиция разделителя в строке
if (nSeparatorPos ~= -1) then        -- если есть разделитель в строке
cValue = String.Left(cString, nSeparatorPos - 1);-- значение для колонки строки
tCols[nCol] = cValue;            -- сохраняем значение в таблицу колонок
cString = String.Replace(cString, cValue..cSeparator, "", false);    -- вырезаем из строки сохраненное значение и разделитель
nCol = nCol + 1;            -- наращиваем номер колонки
elseif (nSeparatorPos == -1 and String.TrimLeft(cString, nil) ~= "") then -- если строка не завершается разделителем
tCols[nCol] = cString;            -- добавляем значение в таблицу колонок
end
end
end
if (Table.Count(tCols) ~= 0) then tDataArray[n] = tCols; -- заполняем массив данных
end        
end
end        
if (Table.Count(tDataArray) ~= 0) then    -- если массив с данными не пустой
return tDataArray;            -- возвращаем массив сданными
else                -- если массив с данными пустой
return nil                -- возвращаем nil
end
end
Автор: vistadimix
Дата сообщения: 20.09.2007 18:57
Добрый вечер всем!
Как всегда возникло пару вопросов, надеюсь поможете.
Первый вопрос, если к web-обьекту применена маска (т.е. web-обьект виден частично), то при загрузке его он ведь грузится все равно весь?
И второй, если да, то как сделать чтобы грузился только выделенный фрагмент?
Автор: tavria2
Дата сообщения: 20.09.2007 21:13
GOOSE
Исправленный код бросил в личку.

vistadimix

Цитата:
Первый вопрос, если к web-обьекту применена маска (т.е. web-обьект виден частично), то при загрузке его он ведь грузится все равно весь?
Естественно грузится весь, но видима только та часть которая определена маской.

P.S. Применять маску нужно в событии On Show страницы.

2All
News!
Выпуск AMS7.0 запланирован на конец октября - начало декабря.
Автор: GOOSE
Дата сообщения: 21.09.2007 07:50
tavria2
Спасибо за код, сегодня проверю в работе!
Но исправление понял вчера сам не додумался
Насчет АМS7 порадовал! Если разработчики сохранят динамику развития, то там должно быть все классно... Хотя... Ну, будем живы, увидим!

vistadimix

Цитата:
то как сделать чтобы грузился только выделенный фрагмент?

Практически никак. Ты можешь загрузить в браузер часть страницы? А объект Web в программе - это IE

ЗЫ Если возможно вырезать из кода нужную тебе часть, то тогда можно реализовать.
Алгоритм такой:
- получаем код страницы
- разбираем его на строки
- берем только нужное
- подставляем в свой шаблон
- выводим
Автор: Lexua
Дата сообщения: 21.09.2007 13:59
tavria2

Цитата:
Исправленный код бросил в личку.

Ну, это не только GOOSE интересно
Автор: GOOSE
Дата сообщения: 21.09.2007 14:36
Lexua
Не вопрос!
Но интересно скорее всего только мне, ибо это частное решение
Вот код:

Код:
-- Конвертирование файла CSV в массив
function CsvToArray()
local cFileName = _SourceFolder.."\\AutoPlay\\Docs\\members.csv"; -- путь к файлу CSV
local cSeparator = "\t"; -- символ разделитель
local tDataArray = {}; -- массив данных (по умолчанию)
local tRows = TextFile.ReadToTable(cFileName); -- таблица строк из файла CSV
if (tRows) then -- если таблица строк не пустая
for n, cString in tRows do -- в цикле перебираем строки таблицы
if (String.TrimLeft(cString, nil) == "") then -- если строка пустая
Table.Remove(tRows, n); -- удаляем пустые строки из таблицы строк
end
end
end
if (tRows and Table.Count(tRows) ~= 0) then -- если есть таблица строк и не пустая
for n, cString in tRows do -- в цикле перебираем строки таблицы
local nSeparatorPos = 1; -- позиция разделителя в строке (по умолчанию)
local nRow = n - 1; -- номер строки
local nCol = 1; -- номер колонки (по умолчанию)
tCols = {}; -- таблица колонок строки
while (nSeparatorPos ~= -1) do -- в цикле получаем данные для колонок строки
nSeparatorPos = String.Find(cString, cSeparator, 1, false); -- позиция разделителя в строке
if (nSeparatorPos ~= -1) then -- если есть разделитель в строке
cValue = String.Left(cString, nSeparatorPos - 1); -- значение для колонки строки
tCols[nCol] = cValue; -- сохраняем значение в таблицу колонок
cString = String.Mid(cString, nSeparatorPos + String.Length(cSeparator), -1); -- вырезаем из строки сохраненное значение и разделитель
nCol = nCol + 1; -- наращиваем номер колонки
elseif (nSeparatorPos == -1 and String.TrimLeft(cString, nil) ~= "") then -- если строка не завершается разделителем
tCols[nCol] = cString; -- добавляем значение в таблицу колонок
end
end
if (tCols and Table.Count(tCols) ~= 0) then tDataArray[n] = tCols; end -- заполняем массив данных
end
end
if (Table.Count(tDataArray) ~= 0) then -- если массив с данными не пустой
return tDataArray; -- возвращаем массив сданными
else -- если массив с данными пустой
return nil -- возвращаем nil
end
end
Автор: AleksejTokarev
Дата сообщения: 21.09.2007 19:33
Увожаемый GOOSE

Подскожите пожалейста как можно сделаит вот такую штуку: Input1"User Name",
Input2"Rigestration ID" , Input3"Info"

При введении в Input1"User Name" текста, дапустим "пример", в Input2"Rigestration ID"
гинерируется код из цифр, каторый потом ссумируется с цифрами в Input3"Info" ( дапустим там "100".)

а дальше всё как у вас в примерах
drillsheet.apz
drillsheet2.apz
drillsheet3.apz
drillsheet4.apz

т.е надо ввести правельный ответ в Input4"Serial" для активации кнопки "далее"

Автор: Fabricator
Дата сообщения: 22.09.2007 18:37
Привет снова!
У меня вопрос немного нетипичный, но это напрямую связано с кхм... оформлением диска. Итак, имеется диск с автораном, но без иконки диска (т.е в Моем Компьютере диск отображается иконкой привода, как простая болванка), а иконку диска очень хочется. Я создаю образ диска, из образа беру файл Autorun.ini, в нем на данный момент написано всего 2 строчки:
[autorun]
OPEN=autorun.exe
Так вот я этот файл выдергиваю из файла-образа и корректирую, после чего выходит:
[autorun]
OPEN=autorun.exe
ICON=ICON.ICO
Скорректированный файл сохраняю и загружаю обратно в файл образ, затем туда же отправляю нужную иконку (ICON.ICO). Файл-образ сохраняю и записываю на диск. Результат - иконка по прежнему дефаултная........
Объясните, пожалуйста, где я делаю ошибку, в чем подводный камень???????
Автор: GOOSE
Дата сообщения: 23.09.2007 18:44
Fabricator
Сделай в программе перед компиляцией смену иконки.
Тогда у тебя и у экзешника, и на рабочем столе будет твоя иконка.

Добавлено:
AleksejTokarev

Цитата:
При введении ... текста, ... гЕнерируется код из цифр

Я не знаю способа генерации цифр в зависимости от введенных букв...
А зачем так сложно?
Автор: Fabricator
Дата сообщения: 24.09.2007 08:45
GOOSE, я бы с радостью, но тут дело в том, что диск уже имеет хороший авторан (сделан не в AutoPlay) и нужно лишь добавить иконку диска.
P.S. Да и вообще суть в том, почему не срабатывает код в autorun.ini. Ведь он должен срабатывать!
Автор: Slon_U
Дата сообщения: 24.09.2007 10:22
Fabricator
При автозапуске диска подхватывается autorun.inf. НЕ ini.
autorun.ini - всего лишь инишник, с которым может работать (например) autorun.exe. Его верни в изначальный вид. А работай - с inf-ом.
Автор: Fabricator
Дата сообщения: 24.09.2007 16:50
Slon_U, спасибо, все получилось!!!
P.S. А вообще тогда странно для чего на диске был .ini....
Автор: Kindly
Дата сообщения: 24.09.2007 17:44
Fabricator

Цитата:
А вообще тогда странно для чего на диске был .ini....

Ничего странного, теперь многие пиратские автораны юзают данные из ini. Хотя может также обшиблись

tavria2, если появится пре-релиз 7-ки свисти в личку. Поковыряюсь с беткой, чтобы релиз сразу отломать
Автор: GOOSE
Дата сообщения: 24.09.2007 21:45
Kindly ОК, будем держать тебя в курсе!
Автор: KkovikK
Дата сообщения: 25.09.2007 11:51
Прочитал инструкции из шапки. Но все равно не могу сделать две вещи:
1) Создаю тхт файл (пробовал как в блокноте так и в AkelPad) в котором описание программы, в объекте параграф указываю что текст надо брать из этого файла, а он мне выдает такую ошибку если текст на русском

Цитата:
---------------------------
Load Error
---------------------------
That does not appear to be a valid ASCII text file.
---------------------------
ОК
---------------------------

В какой кодировке надо сохранять русский текст?.В настройках шрифтов в параграфе стоит Cirillic.

2) Я хочу чтоб при наведении на кнопку в объекте параграф показывалась инфа из тхт файла. В статье от Ru-Board даны коды для случая

Цитата:
выделяя строчку в ListBox одним щелчком, мы должны показать в Paragraph пояснительный текст

Но я хочу чтоб при наведении на кнопку
У меня стоит AutoPlay Media Studio 6.0 из шапки в варезном разделе.

Добавлено:
При создании проект взял один из предлагаемым мастером чтоб особо не парится с оформлением. Назначаю токо действия для кнопок и для параграфа
Автор: Zloy_Gelud
Дата сообщения: 25.09.2007 17:40
Ребят, не поскажите код функции CallbackFunction, которая вызывается при добавлении файлов в объект ThumbList
Автор: tavria2
Дата сообщения: 25.09.2007 19:41
KkovikK

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

Событие страницы On Preload или On Show:
Код: cText = TextFile.ReadToString("C:\\test.txt"); -- читаем текстовый файл в строку
Paragraph.SetText("Paragraph1", cText); -- помещаем полученную строку в параграф

Страницы: 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768

Предыдущая тема: Symantec Endpoint Protection - SEP


Форум Ru-Board.club — поднят 15-09-2016 числа. Цель - сохранить наследие старого Ru-Board, истории становления российского интернета. Сделано для людей.