Форум
Написать нам
  • Страница 1 из 1
  • 1
Модератор форума: as-master  
Форум MMB » Всё о программе Multimedia Builder » Общие вопросы по MMB » Сделать как в Inno Setup (Вставьте следующий диск и нажмите «OK».)
Сделать как в Inno Setup
ВладимирДата: Понедельник, 17 Октября 2011, 11:37 | Сообщение # 1
Новый участник
Группа: Пользователи
Сообщений: 5
Репутация: 0
Награды: 0
Статус: Offline
Добрый день дорогие участники форума, у меня созрела мысль.
Каким образом осуществить данную мысль, искал сдесь но пока ненашол , может вы мне подскажите и направите в правельную дверь.
Хотел бы сделать как в инстале Inno setup после завершения установки определенного диска, выскакивала табличка с надписью Вставьте следующий диск и нажмите «OK»., после нажатия шлабы установка следующего диска, в данном вареанте делаю презинтацию роликов, но они изначально сжаты по 700 метров, каждый диск по очередно ставиться . Помогите в этом деле если можете или напрвте в правельное направление
 
DEMBELДата: Понедельник, 17 Октября 2011, 12:11 | Сообщение # 2
Наш дизайнер
Группа: Модераторы
Сообщений: 2266
Репутация: 135
Награды: 32
Статус: Offline
Тут главное получить в проект сигнал о завершении установки диска. Как и какими средствами происходит "установка" дисков вы не сообщили, думайте как обработать данное событие, а показать диалог. окно и начать распаковку следующего диска это не составляет проблемы.



Win7x64 SP1 Neobook v5.70 (Trial)
WinXP SP3 Neobook v5.62
 
ВладимирДата: Понедельник, 17 Октября 2011, 12:41 | Сообщение # 3
Новый участник
Группа: Пользователи
Сообщений: 5
Репутация: 0
Награды: 0
Статус: Offline
vid$='<Embedded>\del.bat'
testus$='del <Embedded> /q /s'
ReturnVal=StrToFile(vid$,testus$,FALSE,TRUE)
video$=<SrcDir>+'v1.bin'
testus$='<Embedded>\red.exe' + ' x "' + video$ + '" -y -dp"' + osobo$ + '"' + ' >"' + '<Embedded>\inst'

file$='<Embedded>\inst.bat'
instbat$=file$
ReturnVal=StrToFile(vid$,testus$,FALSE,TRUE)
Run("vid$","HIDE") а дальше немогу понять как
 
DEMBELДата: Понедельник, 17 Октября 2011, 12:59 | Сообщение # 4
Наш дизайнер
Группа: Модераторы
Сообщений: 2266
Репутация: 135
Награды: 32
Статус: Offline
нет, нет... в эти дебри логики я лично лезть не хочу, все равно ничего непонятно...
red.exe это распаковщик? распаковываете с помощью bat-файла, да еще модифицируете его?
нужно поймать момент окончания распаковки, полагаю вывод консоли нужно читать для этого, там же должно писаться что процесс окончен. Тут можно перенаправить вывод консоли в файл и периодически проверять его на предмет нужных сообщений. Либо периодически проверять список процессов на предмет нужного, если по окончании работы распаковщик сам закрывается, это будет означать конец работы.




Win7x64 SP1 Neobook v5.70 (Trial)
WinXP SP3 Neobook v5.62
 
ВладимирДата: Вторник, 18 Октября 2011, 10:35 | Сообщение # 5
Новый участник
Группа: Пользователи
Сообщений: 5
Репутация: 0
Награды: 0
Статус: Offline
как из батника вернутся обратно в программу и выбрать например скрипт
 
DEMBELДата: Вторник, 18 Октября 2011, 12:36 | Сообщение # 6
Наш дизайнер
Группа: Модераторы
Сообщений: 2266
Репутация: 135
Награды: 32
Статус: Offline
что имеется в виду? батник нужно сначала закрыть, а потом только что-то еще делать



Win7x64 SP1 Neobook v5.70 (Trial)
WinXP SP3 Neobook v5.62
 
Alex3AДата: Вторник, 18 Октября 2011, 13:18 | Сообщение # 7
Друг клуба ММВ
Группа: Проверенные
Сообщений: 2646
Репутация: 39
Награды: 11
Статус: Offline
Владимир, Ты так хорошо обьясняеш что не понять чего те нада.
Quote (Владимир)
Run("vid$","HIDE") а дальше немогу понять как

щелкни даблклик по команде, откроется окошко, с права краткая подсказка о ее параметрах
Code
Run external file. Please use <SrcDir> in the path.

Parameters:
TOP/TOPMOST(TIMEOUT) - bring application on top(start on top)/topmost(kept on top). TIMEOUT is an optional value in milliseconds to wait until new application initialize. If you don't define TIMEOUT then infinite time will be used, so MMBuilder will wait until new application initialize.
WAIT - MMB project will wait for run application to finish (close) before any further code line is performed.
MAXIMIZE - Activates application's window and displays it as a maximized window.
MINIMIZE - Displays application's window as a minimized window. The active window (MMBuilder) remains active.
HIDE - Hides application's window and activates another window.
Examples:
TOP comand_line
TOPMOST(2000) comand_line
TOP,WAIT comand_line
TOP,WAIT,MAXIMIZE comand_line
MINIMIZE comand_line

Далее, очевидно тебе нужно что бы закрывался батник, так это дело самого батника, в зависимости как ты его напишеш.
Code
test.exe - окно батника останется
start test.exe- окно батника закроется
ну и команда start имеет свои ключи

Так что по видимому проблема твоя именно в батнике, так изучи как его юзать.
 
ВладимирДата: Вторник, 18 Октября 2011, 13:25 | Сообщение # 8
Новый участник
Группа: Пользователи
Сообщений: 5
Репутация: 0
Награды: 0
Статус: Offline
мне нужно чтобы после батника вклучаль заставка вставте 2 диск, после втсавления диска автоматом запускался такойже батник но на диск 2
 
Alex3AДата: Вторник, 18 Октября 2011, 13:30 | Сообщение # 9
Друг клуба ММВ
Группа: Проверенные
Сообщений: 2646
Репутация: 39
Награды: 11
Статус: Offline
Да, про ожидалки, проект запускает батник, батник какую прогу, проект ждет завершения батника, батник завершение проги. Если кто та остается висеть то вся линейка висит.
Вот и решай, кто кого и как ждать должен. В Run параметр TOPMOST(2000) - подождать 2 секунды и работать далее.

Добавлено (18 Октябрь 2011, 13:30)
---------------------------------------------

Quote (Владимир)
мне нужно чтобы после батника вклучаль заставка вставте 2 диск, после втсавления диска автоматом запускался такойже батник но на диск 2

Так ищи возможность определить когда будет вставлен второй диск.
 
ВладимирДата: Вторник, 18 Октября 2011, 13:34 | Сообщение # 10
Новый участник
Группа: Пользователи
Сообщений: 5
Репутация: 0
Награды: 0
Статус: Offline
хорошо спасибо.. ;)
 
DEMBELДата: Вторник, 18 Октября 2011, 15:58 | Сообщение # 11
Наш дизайнер
Группа: Модераторы
Сообщений: 2266
Репутация: 135
Награды: 32
Статус: Offline
Quote
батник устанавливает 1 диск после закрываестья, так вот как включить заставку чтобы была вставте 2 диск и когда я вставляю его автоматом картинка пропадала и включался следующий батник на диск 2

я повторяю, нужно определить тем или иным способом момент закрытия батника или окончания работы программы и вывести сообщение с кнопкой "Далее" по нажатию на которую будет скрипт обработки второго диска. Обычно делается именно так.




Win7x64 SP1 Neobook v5.70 (Trial)
WinXP SP3 Neobook v5.62
 
EagleSHДата: Суббота, 05 Ноября 2011, 19:11 | Сообщение # 12
Поднаторевший
Группа: Проверенные
Сообщений: 106
Репутация: 0
Награды: 0
Статус: Offline
Quote (Владимир)
vid$='<Embedded>\del.bat' testus$='del <Embedded> /q /s' ReturnVal=StrToFile(vid$,testus$,FALSE,TRUE) video$=<SrcDir>+'v1.bin' testus$='<Embedded>\red.exe' + ' x "' + video$ + '" -y -dp"' + osobo$ + '"' + ' >"' + '<Embedded>\inst' file$='<Embedded>\inst.bat' instbat$=file$ ReturnVal=StrToFile(vid$,testus$,FALSE,TRUE)

народ смотрю не заморачивается особо, даже название переменных влом менять ;) раз уж разковыряли мой давний проект, ковырните дальше, там же всё просто делается.
 
DEMBELДата: Суббота, 05 Ноября 2011, 19:22 | Сообщение # 13
Наш дизайнер
Группа: Модераторы
Сообщений: 2266
Репутация: 135
Награды: 32
Статус: Offline
подозревал, что что-то чужое ковыряют опять... типа написал такой лохматый скрипт, а такую ерунду сделать никак.



Win7x64 SP1 Neobook v5.70 (Trial)
WinXP SP3 Neobook v5.62
 
Форум MMB » Всё о программе Multimedia Builder » Общие вопросы по MMB » Сделать как в Inno Setup (Вставьте следующий диск и нажмите «OK».)
  • Страница 1 из 1
  • 1
Поиск: