PCCar.ru - Ваш автомобильный компьютер

PCCar.ru - Ваш автомобильный компьютер (http://pccar.ru/index.php)
-   Разработка программ (http://pccar.ru/forumdisplay.php?f=27)
-   -   Написал AppLoader для CF2 (http://pccar.ru/showthread.php?t=12510)

fesh 28.06.2010 14:53

Написал AppLoader для CF2 / CF3.1
 
Вложений: 7
Идея плагина:
Apploader позволяет встраивать в CF оконные приложения, раскрывать их на весь экран. Запущенное приложение при нажатии соответствующей кнопки повторно не запускается и отображается сразу в том состоянии, в котором плагин был свернут. Единственное ограничение плагина - у запускаемого приложения не должно быть окна приветствия (splashscreen).

Как пользоваться:
1. Убедиться что установлен .NET framework 2.0 SP2
2. Запустить инсталлятор.
3. В инсталляторе ввести префикс, любые цифры или латинские буквы, например iGO.
ПРИМЕЧАНИЕ: всем кто ставит плагин 1.1.0 поверх старого 1.0.0 необходимо сразу задать отступ сверху через настройки CF иначе при запуске плагина он упадет вот так (прислано Vutshi).

Дополнительные настройки в XML, которые не показываются в "нормальных" центрифуговских настройках:
1. BTN_TOP - задает смещение кнопки "на весь экран" относительно верха
2. BTN_LEFT - тоже, относительно левого края
3. BTN_OPACITY - прозрачность кнопки, от 0 до 100
4. В папке плагина есть папка Skins\Clean и там 2 картинки btn_down.png и btn_up.png, они задают внешний вид кнопки "на весь экран".

Версии:
Версия 1.1.0.0
- добавлен отступ сверху
- настройка отступов вынесена в настройки CF
- у плагина теперь нормальная иконка
- сделан инсталлятор, чтобы не париться с BATниками и командной строкой
Версия 1.0.0.0
- базовый функционал: запуск приложения, кнопка на весь экран

St@rz 28.06.2010 15:41

Нужный плагин.

1. Горячие клавиши есть? Работают с самим приложением?
2. Клавиатура?

Скиншоты со встроенными программами неплохо было бы в шапку темы положить.

Пожелания сделать плагин для версии 3.1.

Этот плагин смотрел?

А эмулятор сможешь встроить или плагин для эмулятора под 3.1 переписать?

fesh 28.06.2010 17:00

Вложений: 1
Горячие клавиши приделать можно, пока нет.
Клава - можно без проблем, как то уже писал подобие OSK, хотя применений я честно говоря вижу мало...
Насчет скриншотов правда.
Плагин для cityguide посмотрел, все хорошо, нравится. Но более 2-х копий у него не заюзаешь. Я ставил цель - сделать плагин, с пом. которого можно прикрутить любое кол-во приложений. Например, у меня уже набиралось 3, и уже подумываю об четвертом.
Цитата:

А эмулятор сможешь встроить или плагин для эмулятора под 3.1 переписать?
Я видел решение для CF2 там iGo и Navitel, прикрепил картинку как работает у меня в плагине, честно говоря, оставляет желать лучшего.
Чисто технически переписать можно, но я 3.1 не юзаю по причине отсутствия лицензии, поэтому мотивации переписывать практически нет.

St@rz 28.06.2010 20:39

Лицензия для 3.1 у тебя в личке. :bye:

bfom 28.06.2010 20:46

Цитата:

Сообщение от fesh (Сообщение 147588)
Чисто технически переписать можно, но я 3.1 не юзаю по причине отсутствия лицензии, поэтому мотивации переписывать практически нет.

Цитата:

Сообщение от St@rz (Сообщение 147607)
Лицензия для 3.1 у тебя в личке. :bye:


Может теперь появится мотивация? Плагин очень нужен на 3.1:yes4:

fesh 29.06.2010 11:20

Задачу понял, мотивация получена. Перепишу. Только смущает что SDK 3.1 в версии alpha 2, как бы глюков не нахватать...

St@rz 04.10.2010 03:40

Как успехи? Для 3.1 еще не переделал?

fesh 09.10.2010 12:10

Сделал для себя на 3.1 сейчас у меня этим плагином стартует 4 внешние проги. Смотри в шапку.

St@rz 10.10.2010 09:03

Спасибо!!! :yes4:

А может еще эту тему посмотришь? :blush:

Actyon 10.10.2010 17:46

для танкистов можно более понятливей написать процесс установки в 3.1?:blush:

fesh 10.10.2010 18:05

Танкистам и прочим военным даю пример создания плагина AppLoaderIGO
Цитата:

1. Распаковать архив :) например в C:\Temp
2. Файл->Выполнить ввести c:\temp\compile.bat IGO, нажать ОК побегут буковки на экране, это нормально. В C:\Temp создается папка AppLoaderIGO с плагином. Примечание: параметр IGO - это на ваше усмотрение, можете любые символы латинского алфавита и цифры.
3. Обязательно проверить, есть ли в появившейся папке C:\Temp\ApploaderIGO файл ApploaderIGO.dll, если нет ставить .NET framework 2.0 SP2 и вовторить все с пункта 2.
4. Появившуюся папку ApploaderIGO в C:\Temp скопировать в папку плагинов CF, обычно C:\Program Files\Centrafuse\Centrafuse Auto\Plugins\
4. Запустить CF
5. Зайти в настройки плагина он будет называться ApploaderIGO и установить название кнопки, исполняемый файл, командную строку.
Аналогично создатся ApploaderGisRX, ApploaderWinword, ApploaderBrainfuck и все что хотите. Буквы после Apploader ни на что не влияют, главное чтобы все плагины были названы по-разному.
ВНИМАНИЕ! Плагины с одинаковыми названиями в CF будут отображаться как один.

Actyon 10.10.2010 21:04

огромное человеческое спасибо.

Alex_E 13.10.2010 00:23

Плиз, объясните преимущества такого запуска перед обычным запуском в качестве приложения. Разве Word или какое-либо другое приложение трудно запустить штатными средствами CF? :whistle:

fesh 13.10.2010 11:05

Цитата:

Сообщение от Alex_E (Сообщение 157643)
Плиз, объясните преимущества такого запуска перед обычным запуском в качестве приложения. Разве Word или какое-либо другое приложение трудно запустить штатными средствами CF? :whistle:

Да действительно, можно и штатными средствами. Но есть ряд недостатков:
1. Запуская приложение, нужно самостоятельно скрывать заголовок(если это требуется) и устанавливать размер, например с помощью cmdow. Это конечно не самый большой недостаток.
2. Запущенное приложение нельзя сделать на полный экран, и назад, чтобы показывались кнопки громкости/переключения треков.
3. Приложение, показываемое поверх всех окон нельзя свернуть штатными средствами CF, только закрывать.
4. Если запустить программу в полный экран без заголовка, то единственный способ вернуться в CF - закрыть программу.
5. Кнопка в нижнем левом углу не сворачивает запущенное приложение, а приводит к выходу пользователя.
6. Нельзя назначить свою иконку на каждую кнопку внешнего приложения, у всех будет одинаковая.

St@rz 13.10.2010 11:13

Все верно кроме пункта номер 6.
Плюс хотел еще добавить что с плагином удобнее встраивать. Нет необходимости имени окна указывать. Некоторые это не умеют делать. Просто прописываешь путь к приложению.

eclipsemmc 26.10.2010 19:19

Зачетный плагинчик. Человеческое спасибо. А как быть, если я хочу встроить navitel? который работает под WM6? Запускается через ярлык. в ярлыке прописано:
Объект: "C:\Program Files\Microsoft Device Emulator\1.0\DeviceEmulator.exe" /defaultsave PPC_RUS_GSM_QVGA_VR.BIN /memsize 128 /video 800x410x16
Рабочая папка: "C:\Program Files\Windows Mobile 6 SDK\PocketPC\Deviceemulation\0419\"
У меня CF виснет.

St@rz 26.10.2010 21:33

Цитата:

Сообщение от eclipsemmc (Сообщение 159375)
Зачетный плагинчик. Человеческое спасибо. А как быть, если я хочу встроить navitel? который работает под WM6? Запускается через ярлык. в ярлыке прописано:
Объект: "C:\Program Files\Microsoft Device Emulator\1.0\DeviceEmulator.exe" /defaultsave PPC_RUS_GSM_QVGA_VR.BIN /memsize 128 /video 800x410x16
Рабочая папка: "C:\Program Files\Windows Mobile 6 SDK\PocketPC\Deviceemulation\0419\"
У меня CF виснет.

Смотри этот плагин.

fesh 27.10.2010 10:41

Цитата:

Сообщение от eclipsemmc (Сообщение 159375)
в ярлыке прописано:
Объект: "C:\Program Files\Microsoft Device Emulator\1.0\DeviceEmulator.exe" /defaultsave PPC_RUS_GSM_QVGA_VR.BIN /memsize 128 /video 800x410x16
Рабочая папка: "C:\Program Files\Windows Mobile 6 SDK\PocketPC\Deviceemulation\0419\"

Чувствую проблема в том что рабочая папка отличается от папки старта объекта. У моего плагина логика такая: есть исполняемый файл C:\Program Files\Microsoft Device Emulator\1.0\DeviceEmulator.exe, значит папка запуска C:\Program Files\Microsoft Device Emulator\1.0\.
В принципе если очень нужно могу написать доп. настройку чтобы рабочая папка прописывалась отдельно в конфиге.

eclipsemmc 27.10.2010 14:56

2St@rz
Пасиб, работаить :)
2fesh
Ну если есть время и желание, то было бы замечательно, думаю народу пригодится. Пожалуй самый удобный и безгеморойный плагин, что я юзал под ЦФ.

ASSAD 03.11.2010 20:07

Спасибо... очень хороший и нужный плагин !!!!

Vutshi 08.12.2010 18:19

Огромное спасибо! Хороший и нужный плагин :) Встроил Игу через него - удобно :)

У меня, правда, возникла небольшая проблемма. Карпутер перестал автоматически ВЫключаться, при отключении ключа зажигания. Использую БП M2 ATX? до установки плагина все было нормально, т.е. машину выключил комп погас. Сейчас приходится выключать кнопкой... Если плагин не запускать компьютер выключается нормально. Есть мысли как наладить?

fesh 08.12.2010 23:10

Я не совсем знаком с логикой работы М2 АТХ, как производится отключение? ПО напряжению бортовой сети или сигнал от компьютера (по USB/COM/LPT)? В спящий режим переводится комп или полностью выключается?

Vutshi 09.12.2010 00:01

Вложений: 1
Комп полностью выключается. А логика работы такая - Там есть пара которая подключенна к кнопке выключения материнской платы. Когда ключ зажигания поворачивается в положение OFF, происходит имитация нажатия на кнопку выключения компьютера.

Vutshi 09.12.2010 17:43

Тут еще один вопросик возник. Как изменить положение кнопки "НА ВЕСЬ ЭКРАН". Пытаюсь редактировать skin.xml, но никак не выходит каменный цветок :( В какую секцию прописывать BTN_TOP и BTN_LEFT ? Если не сложно, выложи, для примера skin.xml, где она где нибудь в другом месте, а там уж попробую разобраться.

Vutshi 09.12.2010 20:06

Проблемма выключения решена. В центрафуге выставил действие на нажатие кнопки OFF - выключение. Все заработало :)
А вот со скином пожалуй без дельного совета не разберусь...

fesh 09.12.2010 23:13

Положение кнопки меняется не в skin.xml, по сути этот файл вообще не нужен. Я прописал положение кнопки в config.xml. Надо зайти в профиль конфигурации CF в папку
C:\Documents and Settings\All Users\Application Data\Centrafuse\Centrafuse Auto\<ваш юзер>\Plugins\Apploader...\
и там будет config.xml, в нем есть параметры кнопки

10
720
60
Успехов.

Vutshi 10.12.2010 13:17

Спасибо :)

moby777 14.12.2010 00:12

а под центрифугу 3.0 можно плагины делать?

St@rz 14.12.2010 06:00

А тебя чем 3.1 не устраивает?

aivspb 14.12.2010 21:59

Спасибо огромное
есть маленький нуанс когда закрываешь программу то плагин остается

moby777 14.12.2010 22:23

Цитата:

Сообщение от St@rz (Сообщение 165129)
А тебя чем 3.1 не устраивает?

тормозит
а 3.0 нет... странно..

fesh 16.12.2010 23:00

Выложена версия 1.1.0 для CF3 см. в шапку. Теперь это не убогий BAT'ник и консоль, а нормальный инсталлятор. Добавлен отступ сверху и настроить отступы теперь можно из обычных настроек CF.

Vutshi 16.12.2010 23:55

КРУТО)))))

Vutshi 17.12.2010 01:03

Вложений: 1
При установке необходимо определить параметры и сверху и с низу. Иначе получите такое :)

В остальном все очень и очень круто :) ОГРОМНОЕ СПАСИБО :)

fesh 17.12.2010 05:58

Получается что нельзя оставлять отступ сверху и снизу пустым иначе падает. Если отступ сверху не нужен, пишите ноль. А после установки там вбиты дефолтные значения. Vutshi, вы поставили плагин поверх уже существующего, поэтому в существующий конфиг плагина
C:\Documents and Settings\All Users\Application Data\Centrafuse\Centrafuse Auto\<ваш юзер>\Plugins\AppLoader...\config.xml
не добавился пункт и программа разрушилась при запуске плагина. Если бы у вас была первая установка, то все было бы ОК. Этого я не учел, поэтому всем кто ставит плагин поверх старого пользуйтесь советом.

Vutshi 17.12.2010 11:07

Вложений: 1
Цитата:

Сообщение от fesh (Сообщение 165545)
Получается что нельзя оставлять отступ сверху и снизу пустым иначе падает. ... skip ... поэтому всем кто ставит плагин поверх старого пользуйтесь советом.

Неее я там все почистил. Плагин старый полностью убрал, т.к. подумал что подобный вариант возможен. Я при настройке плагина решив, что отступ мне ну никак не нужен, просто стер там дефолтовые значения, а новые не вписал :)

Обнаружил вчера (не наверное уже сегодня) еще одну вещь. В режиме редакции не надо переходить в расширенный режим настроек Centrafuse, иначе получите пустые поля редакции. Если редактировать в обычном режиме, то все в порядке :)

sandos 17.12.2010 11:59

что то кнопок экранных нет в CF2 (((


а нужно очень очень ))))

fesh 17.12.2010 14:11

Цитата:

Сообщение от sandos (Сообщение 165570)
что то кнопок экранных нет в CF2 (((

Кнопок внизу?

alexji 22.12.2010 23:52

Цитата:

Сообщение от fesh (Сообщение 165510)
Выложена версия 1.1.0 для CF3 см. в шапку. Теперь это не убогий BAT'ник и консоль, а нормальный инсталлятор. Добавлен отступ сверху и настроить отступы теперь можно из обычных настроек CF.

1. На получается встроить эмулятор Windows Mobile центрифуга (3.1) зависает с белым экраном.

Конфигурация такая:


Clean
English
False

d:\Temp\YP\Emulator\DeviceEmulator.exe
d:\Temp\YP\Images\NewRom.bin /nosecurityprompt /video 640x480x16 /memsize 256 /sharedfolder "d:\Temp\YP\Storage Card" /p /funckey

193 /a /s "d:\Temp\YP\State\WM_6.1.dess"


80
80
True

90
550
40


2. При закрытии приложения - плагин остается. Хотелось бы чтобы тоже закрывался/пропадал

3. Расположение кнопки разворачивания/сворачивания не зависит от состояния - приводит к тому, что если ее расположить в правом верхнем углу для полноэкранного режима, то после сворачивания она не двигается и перекрывает другие кнопки (смена треков). Хотелось бы чтобы вертикальное положение кнопки менялось в зависимости от состояния на величину смещения сверху.

Плагин очень хорош ... до идеала нужно совсем немного ...

fesh 23.12.2010 14:36

WM проверю.

Цитата:

При закрытии приложения - плагин остается.
При закрытии CF приложение не выгружается? Или приложение надо закрывать при сворачивании окна плагина?

Цитата:

Хотелось бы чтобы вертикальное положение кнопки менялось в зависимости от состояния на величину смещения сверху
Разумно. Сделаю.


Часовой пояс GMT +4, время: 15:28.

Работает на vBulletin® версия 3.8.4.
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Перевод: zCarot