Перейти из форума на сайт.

НовостиФайловые архивы
ПоискАктивные темыТоп лист
ПравилаКто в on-line?
Вход Забыли пароль? Первый раз на этом сайте? Регистрация
Компьютерный форум Ru.Board » Компьютеры » Программы » Indigo Rose AutoPlay Media Studio (часть 5)

Модерирует : gyra, Maz

 Версия для печати • ПодписатьсяДобавить в закладки
Страницы: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191

Открыть новую тему     Написать ответ в эту тему

Cheery



.:МордератоР:.
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
AutoPlay Media Studio





  AutoPlay Media Studio - мощная программа для создания меню автозагрузки CD/DVD. Эта программа создаст все необходимые файлы для автозапуска и его графическую оболочку, и даже сама встроит в нее использованные в проекте нестандартные шрифты. Пользователю останется лишь записать готовый проект на свой CD/DVD.
  AutoPlay Media Studio не требует от пользователя никаких особых знаний и очень прост в освоении, имеет дружественный и интуитивно понятный интерфейс. Приложение, которое будет создано AutoPlay Media Studio в конце работы, представлено в виде объектной модели. Эта модель состоит из группы отдельных страниц. На этих страницах можно размещать объекты, которые могут представлять собой графику, музыку, текст, видео, Flash, HTML и пр. Любому элементу можно назначить определенное действие. Например, при наведении на рисунок курсора мыши, может возникать текст с комментариями, при нажатии на кнопку "Play" начнет проигрываться фильм и т.д. Программа предоставляет сотни различных действий, которые можно связать с объектами. В AutoPlay Media Studio присутствует большое количество уже готовых шаблонов.
  AutoPlay Media Studio имеет широкие возможности и богатый набор инструментов для разработки мультимедийных проектов. Использовать программу можно не только для создания файлов автозапуска, но и, например, для разработки интерактивного обучающего софта или мультимедийной презентации.

Язык интерфейса: Английский
Страница загрузки: AutoPlay Media Studio Commerical Trial 8.6


Скриптовый язык LUA:
на Lua.Org (Official) - на Lua.Ru

Ресурсы, посвященные AMS (содержат коллекции примеров, дополнений, уроков):
  • icynorth.com
  • imagine-programming.com
  • mindquake.com.br

    Инструменты:
  • ScriptOMatic Tool - создает скрипт обращения ко всем свойствам выбранного WMI-класса

    Ответы на наиболее часто задаваемые вопросы


    Раскраска AMS-кода для публикации на форуме от UModeL: версия 1 и версия 2.

  • Всего записей: 52737 | Зарегистр. 04-04-2002 | Отправлено: 06:17 05-08-2012 | Исправлено: Komandor, 12:11 30-03-2024
    KerberX



    Full Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    AntiWinLockerLive
    1. Эта DLL использует командную строку 7-Zip так что поддерживает. Нужно добавить опцию "-p{Пароль}" в строку при упаковке и распаковке. Если её не указывать и скормить библиотеке архив с паролем, то она покажет свой диалог для его ввода.
     
    Полнофункциональных альтернатив я не встречал. Разве что сам 7-Zip.
     
    2. Я не нашёл такой возможности. Впрочем наткнулся на это. Вдруг сработает.
     
    3. Не очень. Меньше всего вылетов если не использовать Callback функцию. То есть использовать встроенное окно процесса.

    Всего записей: 597 | Зарегистр. 08-09-2011 | Отправлено: 18:55 15-02-2016 | Исправлено: KerberX, 19:38 15-02-2016
    AntiWinLockerLive

    Junior Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    1.) А куда конкретно запихнуть?
    У меня такая строка:
    Archive.Add(hWnd, sArchivePath, sInPath, nCompressionLevel, bRecurse, bSolid, bCallback, sMethod, sExclude)
    Тут нет, а хотелось бы...
     
    Нашел вот это:Ссылка Прогресс вроде отображает, правда распаковки... Но до ума не довел...

    Всего записей: 166 | Отправлено: 19:32 15-02-2016 | Исправлено: AntiWinLockerLive, 19:33 15-02-2016
    KerberX



    Full Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    AntiWinLockerLive
    Например так.

    Код:
    function Archive.Extract(hWnd, sArchivePath, sOutPath, tFiles, bFullPath, bOverwrite, bCallback, sPassword)
        local sCommand = "";
        if bFullPath == true then
            sCommand = "x -r ";
            --sCommand = "x ";
        else
            sCommand = "e -r ";
            --sCommand = "e ";
        end
        --
        sCommand = sCommand..sQuote..sArchivePath..sQuote.." ";
        if tFiles ~= nil then
            for x, y in pairs(tFiles) do
                sCommand = sCommand..sQuote..y..sQuote.." ";
            end
        else
            return 1;
        end
        --
        if bCallback == true then
            sCommand = sCommand.."-hide ";
        end
        --
        if bOverwrite == true then
            sCommand = sCommand.."-aoa ";
        else
            sCommand = sCommand.."-aos ";
        end
        sCommand = sCommand.." -o"..sQuote..sOutPath..sQuote;
        if sPassword ~= nil then
            sCommand = sCommand.." -p"..sPassword;
        end
        --
        local sUTF8Command = UTF8.ToUTF(sCommand);
        local nRet = Archive.SendCommand(hWnd, sUTF8Command);
        --
        return nRet, sCommand, sUTF8Command;
    end

    Всего записей: 597 | Зарегистр. 08-09-2011 | Отправлено: 19:34 15-02-2016
    AntiWinLockerLive

    Junior Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Спасибо! Получается.

    Всего записей: 166 | Отправлено: 20:31 15-02-2016
    AntiWinLockerLive

    Junior Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

    Цитата:
    3. Не очень. Меньше всего вылетов если не использовать Callback функцию. То есть использовать встроенное окно процесса.

    Тогда вообще нет смысла ее использовать (dll), ну если только что бы скрыть пароль при упаковки- распаковки...  
    А прогресс можно внешний использовать из 7zG.exe
    Если подредактировать файл в редакторе ресурсов, то можно такое окошко сделать:
       
     
    Есть еще одна проблема с dll ...
    Ставлю пароль на архив, все собирается, с паролем открывается, но если слить с SFX модулем,  
    не выводится окно ввода пароля и дает ошибку, так же не получилось шифровать имена папок,  
    чтобы без пароля не было видно содержимого
    ... Шифровать возможно (Core.lua Archive.Method["LZMA2"] = "-m0=LZMA2:d=64m -mhe=on ";), но вот совместимости с SFX пока не добился...

    Всего записей: 166 | Отправлено: 18:00 16-02-2016 | Исправлено: AntiWinLockerLive, 17:39 17-02-2016
    AntiWinLockerLive

    Junior Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

    Цитата:
    Ставлю пароль на архив, все собирается, с паролем открывается, но если слить с SFX модулем,  
    не выводится окно ввода пароля и дает ошибку

    KerberX, сталкивался с таким?
    Как отследить и в чем проблема, не пойму...
    Я где то читал что данная Dll почти тоже что и 7za.exe
    Так с 7za.exe (версии 9.22) и такими же параметрами сжатия работает, SFX модуль видит что на архиве пароль и просит ввести.

    Всего записей: 166 | Отправлено: 19:04 17-02-2016 | Исправлено: AntiWinLockerLive, 19:05 17-02-2016
    KerberX



    Full Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    AntiWinLockerLive
    Нет, не сталкивался. Я вообще не создавал с её помощью SFX архивы.

    Всего записей: 597 | Зарегистр. 08-09-2011 | Отправлено: 19:11 17-02-2016
    AntiWinLockerLive

    Junior Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

    Цитата:
    Ну если так, то может быть подойдёт и имеющаяся Callback функция.  
     
    Код:
    local function CallbackFind(sCurrentPath)  
        Label.SetText("Label1", sCurrentPath);  
    end  

    не прокатывает...

    Цитата:
    Когда находится совпадение, вызывается функция 'found', и поиск заканчивается. Используя вышеуказанный способ, действие File.Find может заканчиваться как только найдено одно совпадение, несмотря на то, сколь много совпадений существует в месте поиска.

    Всего записей: 166 | Отправлено: 17:58 18-02-2016 | Исправлено: AntiWinLockerLive, 18:59 18-02-2016
    KerberX



    Full Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    AntiWinLockerLive
    Не нужно так нервничать. Я просто забыл что функция должна возвращать true чтобы поиск продолжался до конца.

    Всего записей: 597 | Зарегистр. 08-09-2011 | Отправлено: 21:09 18-02-2016
    AntiWinLockerLive

    Junior Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    KerberX, да я не нервничаю, просто хочу сделать отображение, а не получается...
    Рабочего примера не нашел...  
    Я понял что  нужно так просто сделать: return true; в функции.
    Заработало!!!

    Всего записей: 166 | Отправлено: 00:12 19-02-2016 | Исправлено: AntiWinLockerLive, 00:20 19-02-2016
    Pahuchiy1

    Junior Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    при использовании WinApi.GetWindowText приложение стабильно аварийно закрывается через несколько секунд. Хочу попробовать использовать
    Цитата:
    DLL.CallFunction("user32.dll"....
    , но ничего в её аргументах не понимаю. Помогите.
     
    Можно ли как-то  при выборе фунции избавится от подстановки
    Цитата:
    result =  
    Уже устал каждый раз удалять..

    Всего записей: 168 | Зарегистр. 11-01-2015 | Отправлено: 12:56 19-02-2016 | Исправлено: Pahuchiy1, 13:03 19-02-2016
    KerberX



    Full Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

    Цитата:
    Хочу попробовать использовать DLL.CallFunction("user32.dll".... , но ничего в её аргументах не понимаю. Помогите.  

    Нужен MemoryEx.

    Код:
    function Window.GetText(hWnd)
        if type(hWnd) == "number" and hWnd > 0 then
            local hUser32 = Library.Load("User32.dll", false);
            if hUser32 ~= nil then
                local nLength = hUser32.GetWindowTextLengthA(hWnd);
                if nLength ~= 0 then
                    nLength = nLength+1;
                    local hBuffer = MemoryEx.Allocate(nLength);
                    local WM_GETTEXT = 0x000D;
                    local nExactLength = hUser32.SendMessageA(hWnd, WM_GETTEXT, nLength, hBuffer);
                    hUser32:Close_();
                    --
                    return MemoryEx.String(hBuffer, nLength, MEMEX_ASCII);
                else
                    hUser32:Close_();
                end
            end
        end
    end

     

    Цитата:
    Можно ли как-то  при выборе фунции избавится от подстановки result =  Уже устал каждый раз удалять..

    Можно. Нужно удалить блок <ReturnValueType></ReturnValueType> (или текст в нём) в XML файлах мастера функций (_at_Application.xml, _at_Button.xml) в папке "Data\Actions".

    Всего записей: 597 | Зарегистр. 08-09-2011 | Отправлено: 18:36 19-02-2016 | Исправлено: KerberX, 18:39 19-02-2016
    Pahuchiy1

    Junior Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    KerberX спасибо
    абсолютно ламерский вопрос: я уже использовал в коде DLL.CallFunction("user32.dll"... (окошко делал поверх остальных)
    без
    Цитата:
    local hUser32 = Library.Load("User32.dll", false)
     и всё работало. Это что может значить? что AMS сама подгрузила user32.dll ?

    Всего записей: 168 | Зарегистр. 11-01-2015 | Отправлено: 19:36 19-02-2016
    KerberX



    Full Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Pahuchiy1
    Насколько я знаю DLL.CallFunction() закрывает библиотеку после использования. Да и для вызова функции из DLL требуется явно указать её дескриптор. К тому же нужно же откуда то взяться переменной hUser32. Если не вызвать ту функцию, её не будет и функция не сработает.

    Всего записей: 597 | Зарегистр. 08-09-2011 | Отправлено: 19:40 19-02-2016 | Исправлено: KerberX, 19:51 19-02-2016
    Pahuchiy1

    Junior Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    KerberX
    понятно. А как узнать имя AMS-объекта под курсором?

    Всего записей: 168 | Зарегистр. 11-01-2015 | Отправлено: 19:48 19-02-2016
    KerberX



    Full Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Pahuchiy1
    Page.GetFocus() и DialogEx.GetFocus(). Но таким образом можно узнать только об объекте который имеет дескриптор окна (HWND). И мне кажется я уже писал здесь всё это.

    Всего записей: 597 | Зарегистр. 08-09-2011 | Отправлено: 19:51 19-02-2016
    Pahuchiy1

    Junior Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    не совсем так. Для всего этого нужно кликнуть.  
    Похоже придётся методом перебора координат всех объектов. Не быстрый скрипт получится...

    Всего записей: 168 | Зарегистр. 11-01-2015 | Отправлено: 20:14 19-02-2016
    Pahuchiy1

    Junior Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    пытаюсь сделать popup-меню которое бы работало для любых запущенных приложений (для хрома например). Так как стандартное popup-меню для этого не особо заточено, полноценно задумку реализовать не получается. Есть какой-то плагин-альтернатива?

    Всего записей: 168 | Зарегистр. 11-01-2015 | Отправлено: 22:11 21-02-2016 | Исправлено: Pahuchiy1, 22:12 21-02-2016
    KerberX



    Full Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

    Цитата:
    popup-меню которое бы работало для любых запущенных приложений

    Как это вообще должно выглядеть? Опиши подробнее, или скриншот какой-нибудь покажи.

    Всего записей: 597 | Зарегистр. 08-09-2011 | Отправлено: 22:17 21-02-2016
    Pahuchiy1

    Junior Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    работаю я себе в хроме, например....и тут захотелось, переслать ссылку на текущую страничку другу.
    Я кликаю правой кнопкой и помимо стандартного хромовского меню рядом вылазит меню от АМS с нужным мне пунктом.  
    Я уже почти всё реализовал...мешает только то что при вызове амэсовского меню прога вылезает наверх перекрывая хром. Это конечно тоже можно обойти, но кривовато выходит.
    И попутно ещё вопрос: как расположить окно (приложение) на 1 уровень вверх или вниз по Z?

    Всего записей: 168 | Зарегистр. 11-01-2015 | Отправлено: 22:25 21-02-2016
    Открыть новую тему     Написать ответ в эту тему

    Страницы: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191

    Компьютерный форум Ru.Board » Компьютеры » Программы » Indigo Rose AutoPlay Media Studio (часть 5)


    Реклама на форуме Ru.Board.

    Powered by Ikonboard "v2.1.7b" © 2000 Ikonboard.com
    Modified by Ru.B0ard
    © Ru.B0ard 2000-2024

    BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

    Рейтинг.ru