|
|
« Предыдущая тема | Следующая тема » |
Опции темы | Опции просмотра |
|
|
|||||
listener
|
|
|
|||||
Уже купил SmartFlash VCL от almdev.com нашёл много странных вещей, не передавались некоторые кнопки с клавиатуры, индикатор курсора ввода исчез раз навсегда.. использовать простой ActiveX было даже лучше, но на компах без нормальной видеокарты не работала прозрачность.. в SmartFlash при включении их фирменной прозрачности, переставали работать все кнопки, но обычная прозрачность работала на любых машинах.
наверно всёж буду выполнять проверку и регистрировать ocx. |
|
|||||
Banned
[+4 01.02.09]
[+1 01.02.09] |
Можно ли ВНЕДРИТЬ флеш-плеер в дельфи-оболочку? Т.е. не устанавливать флеш-плеер в ОС (что возможно лишь под правами админа и требует наличия лицензии от адоба), а именно внедрить (наподобие цинковского или стандартного проектора) - в этом случае лицензии от адоба и админские права не требуются.
|
|
|||||
listener
|
|
|
|||||
Banned
[+4 01.02.09]
[+1 01.02.09] |
Ага. http://www.f-in-box.com/delphi/help/...om_stream.html
Нашел. Только пока с лицензией не разобрался еще. add: поговорил с теми, кто использовал бесплатную демо-версию TFlashPlayerControl - говорят, сильно тормозит из-за обилия различных перехватчиков событий, которые там заложены. Может это только в демке? Кто-нибудь использовал полную платную версию? Тормозит или нет по сравнению с использованием ФП из ОС? add2: есть идея использовать манифесты, где будет прописан путь к файлу c ActiveX-компонентом (флеш-плеером). естественно не стандартным из ОС, а откуда мне нужно. Кто что об этом думает? Последний раз редактировалось chingachgoog; 21.05.2008 в 13:40. |
|
|||||
Да это тот самый способ за 300 бачинских чтоб ocx был в комплекте...
С манифестами идея не ясна, мне кажется я встречал программы использующие свой ocx, не трогая системный.. по моему это реально, но я незнаю как. у меня платная версия )) за 90 бачинских Да дема тормозила, но это в основном из за того что там постоянно лепится надпись demo version... после того как её убрали вроде нормально всё. А вообщем сам попробуй. Последний раз редактировалось xdoom; 24.05.2008 в 14:17. |
|
|||||
listener
|
>>есть идея использовать манифесты...
Идея мне кажется плодотворной. Стоит ей заняться. Только терзают меня сомнения, что всего-то и прописать путь к осх в манифесте - слишком просто. Более того, есть подозрение, что манифестом следует снабжать сам осх в первую очередь... http://helpcentral.componentone.com/...s/t/73757.aspx - похожий вопрос. Еще есть мысль. Существует технология portable-приложений. Возможно решение есть и в этом направлении. xdoom, а почему вы все-таки отказались от принудительной установки флэш-контрола? Последний раз редактировалось alexcon314; 25.05.2008 в 01:49. |
|
|||||
Цитата:
у меня не получилось поставить через regsvr32.. иногда даже ручной запуск Install_Flash_Player_ActiveX.msi не помогает зарегистрировать ocx в системе, особенно ели ковырялись с ocx руками или ставили кучу разного софта.. вообще часто бывает такой глюк что Install_Flash_Player_ActiveX.msi выдаёт ошибку при установке.. и если удаляешь вручную все ocx и установка проходит нормально, проигрыватель всё равно не регистрируется и swf не проигрывается ... ...и неичего не помогает кромее FlashUtil9c.exe 200 килобайтное приложение само проверит и скачает с сети последнею версию проигрывателя и корректно установит не смотря не на что.. иными словами я не сумел грамотно реализовать принудительную установку )) ограничился тем что вложил FlashUtil9c.exe в инсталлятор и дал пользователю текстовое указание, мол если не видно ничего запустите эту утилиту. |
|
|||||
Banned
[+4 01.02.09]
[+1 01.02.09] |
xdoom, спасибо за исходники с SmartFlash VCL (almdev.com), но это немного не то о чем я спрашивал.
мне интересно как работает TFlashPlayerControl (f-in-box.com) в полной версии, а не в демо, где он тормозит. SmartFlash VCL все же не является альтернативой ФП из ОС, а насколько я понимаю, лишь дополняет этот ФП (т.е. без установленного ФП в ОС он работать не будет). А у TFlashPlayerControl совсем другой принцип работы. Он перехватывает обращения к ФП в ОС и использует свой ФП. Т.е. может работать как вообще без установленного в ОС ФП, так и с установленным, но не правильной версии. Вообще установка ФП в ОС не подходит по многим причинам: у пользователя может не быть админских прав, а допустим, запустить приложение ему надо. На установку ФП нужна лицензия от адоба... |
|
|||||
listener
|
chingachgook, ваша идея с манифестами оказалась действительно плодотворной. РЕГАРДСЫ. Здесь рассказывается о том как собрать приложение с COM, работающее без его регистрации в системе. Привожу так же небольшой отчет о том как я все это реализовал.
Первое, что нужно сделать - убедиться, что на машине, где вы собираете приложение установлен FlashPlayer. При чем обязательно нужно его зарегистрировать в системе в командной строке: cd <SystemDir>\system32\Macromed regsvr32 FlashХХ.ocx Инсталлятор от адоба почему-то глючит. Обязательно поместить FlashХХ.ocx в указанную папку Macromed. Создаем Windows C# проект в MSVC 2005. На форму Form1.cs [Design mode] помещаем флэш-компонент. Для этого в тулбоксе на вкладке Components жмем правой кнопкой и Chose Item->COM->ShockwaveFlashObject, затем перетаскиваем его на форму. В окне свойств компонента указываем в поле Movie путь до загружаемого в него swf, если хочется, ставим EmbedMovie=True. Компилим. Запускаем. Работает. Для чистоты эксперимента делаем унинсталл плеера, и обязательно удаляем FlashXX.ocx. Запускаем ехе, любуемся окном с сообщением об ошибке - НЕ РАБОТАЕТ! Ставим плеер обратно, регим его в системе. Только после этого (!) открываем наш проект MS VС (иначе заглючит design mode]. Идем в Solution Explorer, открываем наш проект, находим папочку Reference, а в ней (внимание!) два файла: AxShockwaveFlashObject и ShockwaveFlashObject. Кликаем на любом из них и в окне его свойств ставим Isolated=true (вот оно!). То же со вторым. Компилим. Закрываем MS VC. Сносим плеер, не забывая удалить .ocx. Запускаем. РАБОТАЕТ! Вообще, сносить плеер с вычищением реестра и прочими предосторожностями не обязательно. Достаточно убрать из виду FlashXX.ocx, переместив его в другую папку, например. Ну тут дело вкуса. Лучше, конечно, иметь под рукой чистую машину для тестов. При компиляции с Isolated=true рядом с ехе появятся вдруг откуда ни возьмись FlashXX.ocx и, собственно, сам манифест. Это компилятор постарался. Наличие этих файлов по-соседству с ехе, сами понимаете, гвоздь программы. Без любого из них ехе не запустится. Кроме них еще два важных файла AxInterop.ShockwaveFlashObjects.dll и Interop.ShockwaveFlashObjects.dll. Они тоже генерируются автоматически при вставке компонента на форму. Пользоваться таким способом сборки приложений надо осмотрительно. Можно нарваться на проблемы с лицензированием внедряемого контрола. Кроме того, вся эта канитель будет работать только под Windows не ниже XP PRO SP2. При этом в системе должен быть установлен .NET Framework 2.0. Цинк, кстати работает и под 98-мым. Скомпилированный проект выложил здесь. (~1.5Mb) Работает без установленного плеера. Внедряется 9-ый плеер. Мув зашит в ехе. http://mdm-zinc.narod.ru/CS/CSF.zip В Delphi повторить такое, думаю, реально. Последний раз редактировалось alexcon314; 28.05.2008 в 09:58. |
Часовой пояс GMT +4, время: 05:17. |
|
« Предыдущая тема | Следующая тема » |
|
|