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

НовостиФайловые архивы
ПоискАктивные темыТоп лист
ПравилаКто в 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
    dallas page



    Junior Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    AntiWinLockerLive, может подойдет пример 3 из справки.
    Можно еще запускать DialogEx и прописать Callback функцию для копирования. Подробнее о CallbackFunction в справке. В дополнении или отдельно можно использовать TaskBarList Action Plugin.

    Всего записей: 200 | Зарегистр. 28-03-2010 | Отправлено: 00:19 13-04-2015 | Исправлено: dallas page, 00:27 13-04-2015
    AntiWinLockerLive

    Junior Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Пример 3 отображает прогресс бар, правда не системный, свой...
    Ну хоть что то...
     
    Плагин TaskBarList Action Plugin, уж очень много весит...
    Да и кто на иконку будет смотреть...
     
    А есть все таки способ использовать именно системное окно копирования?
    Я так понял, надо CallbackFunction использовать, но как сообщить системному прогрессу ?

    Всего записей: 166 | Отправлено: 08:02 13-04-2015
    dallas page



    Junior Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    AntiWinLockerLive, самому всегда интересно было, как вызвать системный прогресс. Я могу ошибаться, но может использовать CopyFileExA через Kernel32.dll?!! Подробнее тут. Похожий пример тут.
     
    Добавлено:

    Цитата:
    Я так понял, надо CallbackFunction использовать

    Это относится к объекту Progress, который можно использовать в окне DialogEx.

    Всего записей: 200 | Зарегистр. 28-03-2010 | Отправлено: 15:41 13-04-2015 | Исправлено: dallas page, 15:44 13-04-2015
    AntiWinLockerLive

    Junior Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Не копирует совсем, ну и ладно...
    Есть же пример №3 ну или программу tepacopy можно применить.

    Всего записей: 166 | Отправлено: 17:47 13-04-2015
    AntiWinLockerLive

    Junior Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Сделал в своей программе функцию перетаcкивания образов в окно программы, в форму input.  
    Подскажите как сделать маску, только определенные файлы что бы окно принимало. Форматов 7, заглавными и маленькими буквами, получается 14.
    Если обрабатывать каждую запись, код получается громоздким.
    Может как то можно использовать таблицу, и в ней перечислить доступные форматы файлов?
    Сейчас так перечисляю:

    Код:
    _OnDragDrop = function (tFiles)
        if tFiles then
            for i = 1, #tFiles do
                  typeImage = String.Right(tFiles[i], 4); -- считываю расширение файла
                   if typeImage == ".iso" then -- проверяю совпадает ли расширение с допустимым, если да то:
                  Input.SetText("input",tFiles[i])
                  -- тут идут команды
                end
                   if typeImage == ".ISO" then -- проверяю совпадает ли расширение с допустимым, если да то:
                  Input.SetText("input",tFiles[i])
                  -- тут идут команды
                end
            end
        end
    end

    Действие ко всем файлам применяется одно и тоже: распаковка с помощью 7Zip
    И ни чем не отличается.

    Всего записей: 166 | Отправлено: 09:49 17-04-2015 | Исправлено: AntiWinLockerLive, 10:23 17-04-2015
    Zloy_Gelud



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

    Код:
    checkExt = function(sExt)
        local tTrueExts = {'.iso','.img'};
        for i = 1, #tTrueExts do
            if (String.Lower(sExt) == tTrueExts[i]) then return true; end
        end
        return false;
    end
     
    _OnDragDrop = function (tFiles)
        if tFiles then
            local tPaths;
            for i = 1, #tFiles do
                tPaths = String.SplitPath(tFiles[i]);
                if checkExt(tPaths.Extension) then
                    Input.SetText("input",tFiles[i]);
                else
                    result = Dialog.Message("Error", "Неверный формат.", MB_OK, MB_ICONEXCLAMATION, MB_DEFBUTTON1);
                end
            end
        end
    end

     
    В таблицу tTrueExts расширения добавляй только в нижнем  регистре.

    Всего записей: 3266 | Зарегистр. 30-05-2007 | Отправлено: 10:36 17-04-2015 | Исправлено: Zloy_Gelud, 10:52 17-04-2015
    AntiWinLockerLive

    Junior Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    РАБОТАЕТ!!! Я очень рад!!! Благодарю!!! Вы лучший!!!
    Так сделал:

    Код:
        local tTrueExts = {'.iso','.ISO','.ima','.IMA','.img','.IMG','.bin','.BIN','.vhd','.VHD','.7z','.7Z','.rar','.RAR'};


    Цитата:
    В таблицу tTrueExts расширения добавляй только в нижнем  регистре.

    А вот это не понял? Если в нижнем делаю, то *.ISO пишет неверный формат.

    Всего записей: 166 | Отправлено: 10:54 17-04-2015 | Исправлено: AntiWinLockerLive, 10:58 17-04-2015
    Zloy_Gelud



    Silver Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    AntiWinLockerLive
    Если сделать вот так:

    Код:
    local tTrueExts = {'.iso','.ima','.img','.bin','.vhd','.7z','.rar'};

    не будет работать что ли?

    Всего записей: 3266 | Зарегистр. 30-05-2007 | Отправлено: 11:03 17-04-2015
    AntiWinLockerLive

    Junior Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Нет, если заглавным расширение в файле.

    Всего записей: 166 | Отправлено: 11:06 17-04-2015 | Исправлено: AntiWinLockerLive, 11:07 17-04-2015
    Zloy_Gelud



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

    Цитата:
    Нет, если заглавным расширение в файле.

    Я код здесь чуть исправил, ты наверно успел старый вариант скопировать.

    Всего записей: 3266 | Зарегистр. 30-05-2007 | Отправлено: 11:10 17-04-2015 | Исправлено: Zloy_Gelud, 11:12 17-04-2015
    AntiWinLockerLive

    Junior Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Так и есть... Теперь работает с заглавными, тоже. Спасибо!

    Всего записей: 166 | Отправлено: 11:17 17-04-2015 | Исправлено: AntiWinLockerLive, 11:18 17-04-2015
    Zloy_Gelud



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

    Цитата:
    Хочу задействовать системный прогресс копирования (как при обычном копировании файлов в системе), возможно ли это сделать?

    Угу. Только плагин luacom необходимо подключить.

    Код:
    local sSrcPath  = _ProgramFilesFolder .. "\\AutoPlay Media Studio 8";
    local sDestPath = _WindowsFolder .. "\\Temp";
     
    local oSHApp = luacom.CreateObject("Shell.Application");
    oSHApp:Namespace(sDestPath):CopyHere(sSrcPath);
    oSHApp = nil;

    Всего записей: 3266 | Зарегистр. 30-05-2007 | Отправлено: 11:23 17-04-2015
    AntiWinLockerLive

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

    Цитата:
    oSHApp:Namespace(sDestPath):CopyHere(sSrcPath);
    это?

    Всего записей: 166 | Отправлено: 11:29 17-04-2015 | Исправлено: AntiWinLockerLive, 07:08 18-04-2015
    Zloy_Gelud



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

    Цитата:
    Две верхние строчки непонятны для меня... Создаются переменные....  

    sSrcPath - путь к тому, что будем копировать.
    sDestPath - путь, куда будем копировать.

    Цитата:
    А как именно прописать копирование с одного места файлов, в другое?

    То, что после этих переменных и есть системная функция копирования.
    https://msdn.microsoft.com/ru-ru/library/windows/desktop/bb787866(v=vs.85).aspx

    Всего записей: 3266 | Зарегистр. 30-05-2007 | Отправлено: 11:32 17-04-2015 | Исправлено: Zloy_Gelud, 11:34 17-04-2015
    AntiWinLockerLive

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

    Всего записей: 166 | Отправлено: 11:34 17-04-2015 | Исправлено: AntiWinLockerLive, 11:44 17-04-2015
    Zloy_Gelud



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

    Цитата:
    То есть когда я что то хочу скопировать, каждый раз пишу весь код?  

    Можно упростить до такого вида:
     
  • В Глобальные функции:

    Код:
    local g_oSHApp = luacom.CreateObject("Shell.Application");
     
    File.CopyEx = function (sSrcPath, sDestPath, sOpt)
        local oSHApp = g_oSHApp or luacom.CreateObject("Shell.Application");
        oSHApp:Namespace(sDestPath):CopyHere(sSrcPath, sOpt);
    end

     
  • Куда нужно:

    Код:
    File.CopyEx(_ProgramFilesFolder .. "\\AutoPlay Media Studio 8", _WindowsFolder .. "\\Temp");

     
    Добавлено:

    Цитата:
    а можно при перетаскивании на объект понять, что папку на него перетащили?  


    Код:
    tAttrs = File.GetAttributes(tFiles[i]);
    if tAttrs.Directory then -- это директория

  • Всего записей: 3266 | Зарегистр. 30-05-2007 | Отправлено: 11:49 17-04-2015
    AntiWinLockerLive

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

    Всего записей: 166 | Отправлено: 11:56 17-04-2015
    Pus21

    Junior Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Здравствуйте подскажите ПЛЗ:
     
    Нужно чтобы APMS проверяло наличие файла в указанной директории, соответственно код такой:
     
    File.DoesExist(_SourceFolder.."\\Data\\001.txt")
     
    и все работает, но мне нужно чтобы APMS проверяло наличие любого файла с расширением "txt", а команду
    File.DoesExist(_SourceFolder.."\\Data\\*.txt")
    программа не понимает, как правильно ее задать?
     
    Заранее спасибо.

    Всего записей: 54 | Зарегистр. 24-03-2015 | Отправлено: 14:41 20-04-2015
    KerberX



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

    Код:
    local tFiles = File.Find(_SourceFolder.."\\Data\\", "*.txt", false, false, nil, nil);
    if tFiles ~= nil then
        Dialog.Message("", "Найденные TXT файлы:\r\n\r\n"..table.concat(tFiles, "\r\n", 1, #tFiles));
    else
        Dialog.Message("", "TXT файлы не найдены");
    end

    Всего записей: 597 | Зарегистр. 08-09-2011 | Отправлено: 14:47 20-04-2015 | Исправлено: KerberX, 15:17 20-04-2015
    Pus21

    Junior Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Спасибо за быстрый ответ, но почему то не работает, не видит наличие файлов в директории, мне нужна их дальнейшая архивация, пишу так:

    Код:
    local tFiles = File.Find(_SourceFolder.."\\Data\\*.txt", "*.txt", false, false, nil, nil);  
    if tFiles ~= nil then
    Zip.Add(_SourceFolder.."\\Data\\Save.zip", {_SourceFolder.."\\Data\\*.txt"}, true, "", 9, nil, false);
         result = Dialog.Message("", "Good", MB_OK, MB_ICONINFORMATION, MB_DEFBUTTON1);
     else
         result = Dialog.Message("", "Bad", MB_OK, MB_ICONINFORMATION, MB_DEFBUTTON1);
    end
     
     
    Добавлено:
    Забыл написать, команда нужна на кнопке.

    Всего записей: 54 | Зарегистр. 24-03-2015 | Отправлено: 15:14 20-04-2015
    Открыть новую тему     Написать ответ в эту тему

    Страницы: 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