Прошивки –  Каталог навигаторов –  Восстановление навигатора

Вернуться   Мир Автомобильных навигаторов > PNA / PND Устройства > Альтернативное меню > Меню System Information
Регистрация ФайлыПравила форумаБан-лист Справка Календарь Поиск Сообщения за день Все разделы прочитаны

Важная информация


     
Ответ
 
Опции темы
Старый 28.01.2013, 12:37   #1
_SIL_
Старичок
 
Аватар для _SIL_
Доп. информация
Радары System Information v1.6.3 и её доработка

Отличие оригинальных версий SystemInformation Menu 1.6.3 и 1.6.1

Наткнулся в инете на новую версию 1.6.3. Особых отличий от 1.6.1 в ней нет. По мелочи кое-что подправлено.
Полный список изменений неизвестен. Мне удалось выявить следующие отличия:
- BackgroundBitmap можно не указывать (поправлен глюк версии 1.6.1).
- запустить программу по относительному пути как обычно нельзя. Напомню, во многих взломанных версиях SI 1.6.1 (взламывали не профи) народ запускал программы по относительному пути не через Command, а через NewIni. Но при этом новый инишник через NewIni не запускался.
- появились новые символы, которые комментируют строку, например "[". Благодаря этому с конфигом стало можно работать как с обычным инишником с блочной структурой.
пример

Для разработчиков это очень полезная фишка. Структуру ини гораздо удобнее читать и генерировать скриптами, работая с конфигом также как с обычным инишником, а не как с текстовым файлом.
Код:
[GLOBALSETTINGS]
GLOBALSETTINGS =
Arrange = No
X = 0
Y = 0
BackgroundBitmap = fon.bmp
....

[Button1]
ICONXPBUTTON =
x = 20
y = 100
IconNormal = Icons\but1_normal.ico
...


Переработанное SystemInfomation menu 1.6.3 с поддержкой картинок PNG с прозрачностью.

Переработка произведена способом [[Ссылки могут видеть только зарегистрированные пользователи. ]]> [[Ссылки могут видеть только зарегистрированные пользователи. ]]>
НОВЫЕ ВОЗМОЖНОСТИ:
  • совместимость с файлами настроек оригинальной программы
  • везде, в любой секции вместо BMP или ICO можно прописывать PNG и JPG (но прозрачность поддерживается только в секции ICONXPBUTTON)
  • в секции GLOBALSETTINGS добавился новый параметр HideTaskBar. Если указать 1, то при запуске менюшки будет скрываться таскбар;
  • в секции ICONXPBUTTON добавил новые параметры Width, Height и Stretch. Теперь можно указывать картинки произвольного размера.
    Параметры SizeNormal и SizePushed как и раньше задают квадратную область для ненажатой и нажатой картинки,
    Параметры Width и Height задают произвольные размеры области сразу для обеих картинок.
    Параметр Stretch=1...5 указывает, что в случае несовпадения реальных размеров картнки с размерами, заданными в конфиге, картинку нужно растянуть/сжать;
  • при отсутствии картинок надписи "no bitmap" и "no icon" теперь не выводятся;
  • в параметре Commnand можно задавать относительный путь для запуска программ. Путь указывается отностельно папки текущего инишника (также как и для картинок или новых инишников);
  • новый параметр Command- (минус на конце) - работает также как Command, только при запуске программы еще будет скрываться таскбар. Если программа по каким-то причинам не запустилась, таскбар скрываться не будет.
  • все сообщения переведены с немецкого на английский язык
  • в секции GLOBALSETTINGS можно задать имя окну менюшки через новый параметр WindowName . Это позволяет из скрипта общаться с менюшкой, например скрывать, отображать, закрываеть окно, посылать комманды и пр.
  • окну SI можно посылать специальную комманду из скриптов для перечитывания конфигурации после правки текущего инишника! Делается это вот так:
    PostMessage("имя окна SI", HexToNumber("8001"), 0, 0 )
    Никаких убийсв процессов или маускликов на спрятанную кнопку больше не нужно!
  • в инишнике можно прописать таблицу, содержащую ссылки на новые инишники, переход по которым можно сделать из скрипта коммандой
    PostMessage("имя окна SI", HexToNumber("8001"), N, 0 )
    где N - число от 1 до 63 - номер инишника по порядку.
    Таблица инишников прописывается сразу после секции [B]GLOBALSETTINGS[/B] в таком виде:
    BUTTON
    NewIni=Test1.ini

    BUTTON
    NewIni=Test2.ini

    BUTTON
    NewIni=Test3.ini

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

  • в качестве фоновой картинки можно использовать сразу несколько полупрозрачных картинок и даже скриншот экрана, которые будут накладываться друг на друга. Всего не более 15 картинок включая скриншот. Пользоваться так:
    Картинки:
    BackgroundBitmap = ..\Pics\overlay.png|xx,yy,ww,hh,stretch (после символа | всё указывается без пробелов)
    xx,yy - координата от начала окна. BitmapOffsetX/Y - игнорируется
    ww,hh - ширина и высота картинки (если нужно их изменить)
    stretch=0-5 - аналогично кнопкам - для растягивания/сжатия на новые размеры

    Скриншот:
    BackgroundBitmap = /SCREEN|xx,yy,ww,hh
    если не указывать |xx,yy то нарисуется с корректным смещением когда заданы BitmapOffsetX/Y

    Пример фона из нескольких картинок:
    BackgroundBitmap = /SCREEN
    BackgroundBitmap = ..\res\8x8.png|0,0,480,272,1
    BackgroundBitmap = ..\res\top.png|0,0
    BackgroundBitmap = ..\res\fon.jpg|50,88,366,56
    BackgroundBitmap = ..\res\fon2.png|10,220,460,20,1


  • У кнопки ICONXPBUTTON появилась текстовая надпись, аналогичная WINDOWSBUTTON!
    У этих двух типов кнопок появились новые параметры:
    TxtOffsetX - отступ по горизонтали, начиная с которого текстовая надпись будет отображаться на кнопке.
    TxtOffsetY - тоже, но по вертикали.
    TxtColor2 - цвет надписи когда кнопка нажата
    Например, чтобы текст был под картинкой, в параметре Height нужно указать число, больше чем высота картинки и задать параметр TxtOffsetY. При этом кнопка будет нажиматься даже при нажатии на текстовую надпись!

  • В глобальной секции параметром Sound можно задать wav-файл, озвучивающий нажатия кнопок.
  • В секции TIME параметром CloseTimer=(1-255) можно задать количество секунд, через которое менюшка автоматически закроется если не нажимать на экран. При этом на экране будет отображаться обратный отсчет в стандартном формате секции TIME. (см. пример)
  • В секции TIME параметром StartTimer=(0/1) или (yes/no) можно отобразить счетчик секунд с момента старта менюшки.
  • В секции TIME параметром FlashText=(0/1) или (yes/no) можно сделать текст мигающим. Мигание будет с интервлом, заданным через параметр Interval.
  • В любом месте инишника можно прописать секцию END. Это укажет менюшке что всё что написано после этой секции считывать не нужно.
  • При отсутствии файла SysInfoSettings.ini, содержащий список конфигурационных ини-файлов, будет предпринята попытка прочитать ини-конфиг с имененем экзешника. См. Пример 2 в архиве.
  • Чтобы шрифт был сглаженным, нужно указать параметр CreateFont+. Без "+" на конце шрифт будет как и раньше, несглаженный.

Естественно все эти новые фишки доступны только на навигаторе и не поддерживаются на ПК программой-эмулятором SystemInfomation32.exe.


Картинки ICO и BMP прога загружает своим старым способом. Остальные картинки загружаются системными средствами MS Imaging API. Для этого в системе должны быть библиотеки imaging.dll и zlib.dll. Практчески на всех навиках они сейчас есть.
В архиве Imaging_Install.rar (см. вложения) содержится установочный комплект ImagingApi для любой версии WinCE. Но даже если ImagingApi не поддерживается, то для 24 и 32-битных PNG со сжатем Хоффмана (стандарт фотошопа) в SI присутствует второй способ загрузки PNG, не требующий никаких длл. Этот способ взят c [[Ссылки могут видеть только зарегистрированные пользователи. ]]>



Вам надоели тонны килобайт BMP и ICO, которые занимают ваши менюшки? Тогда мы идем к вам!

Что мы имеем в результате в цифрах:
  • fon.bmp=390кб --> fon.jpg=13кб, размер уменьшен в 30 раз;
  • 0.ico=160кб --> 0.png=9кб, размер уменьшен в 18 раз;
  • fon2.bmp=390кб --> fon2.png=4кб, размер уменьшен почти в 100 раз!
А если таких картинок/иконок с полсотни? А если разрешение экрана высокое - 800х480??? Есть повод задуматься.
Вложения
Тип файла: rar Imaging_Install.rar (174.0 Кб, 506 просмотров)
Тип файла: rar SysInfo_1.6.3.20_Samples.rar (241.4 Кб, 451 просмотров)
_SIL_ вне форума  
Старый 21.04.2014, 17:22   #31
Skondr1
Старичок
 
Аватар для Skondr1
Доп. информация
По умолчанию

Цитата:
Сообщение от _SIL_ Посмотреть сообщение
Но это ведь была ломанная версия

Упс, не знал. Иначе б наверное меню на SI так и не сделал бы)
Цитата:
Сообщение от _SIL_ Посмотреть сообщение
Мне больше нравится способ _RUSER_ - без убийств, тк работает быстрее и надежнее.

Тут полностью согласен. Просто не разобрался до конца в этом способе, не вкурил, так сказать. Попробовал, отличный вариант, его и буду использовать в дальнейшем. Спасибо _RUSER_ за исследования.
Ну и на всякий случай
Цитата:
Сообщение от _SIL_ Посмотреть сообщение
как сделать так чтобы то что написано красным постоянно присутствовало в реестре?

Если хочется убрать посредника в виде MortRun и прописать запуск скрипта из SI с передачей параметров
Может кому-то пригодится

# Регистрация MortScript
If (RegRead ("HKCR","MortScript\Shell\Open\Command\","Default" ) ne (""""&SystemPath("ScriptPath")&"\MortScript.exe "" ""%1"" %*"))
RegWriteString("HKCR",".mscr\","Default","MortScri pt")
RegWriteString("HKCR","MortScript\","Default","Mor tScript")
RegWriteString("HKCR","MortScript\DefaultIcon\","D efault",(SystemPath("ScriptPath")\"\MortScript.exe ,-130"))
RegWriteString("HKCR","MortScript\Shell\Open\Comma nd\","Default",(""""&SystemPath("ScriptPath")&"\Mo rtScript.exe"" ""%1"" %*"))
Endif
__________________
Pioneer 7" Mediatek MT3351 ARM1176JZ-S (468MHz) 128Mb WinCE5.1400 800x480px, Navitel NX-5300
Skondr1 вне форума  
Пользователь сказал cпасибо:
Старый 23.04.2014, 17:11   #32
_SIL_
Старичок
 
Аватар для _SIL_
Доп. информация
По умолчанию

Новая Версия! 1.6.3.8

Теперь окну менюшки можно задать имя через глобальный параметр WindowName=
Это позволяет из скрипта общаться с менюшкой, например Скрывать, отображать, закрываеть окно, посылать комманды и пр.
Естественно имя должно быть уникальным.

Кроме того, SI теперь может принимать специальную комманду для обновления конфига после правки инишника! Делается в скрипте это вот так:
Код:
PostMessage("имя окна заданное через WindowName", HexToNumber("8001"), 0, 0 )
И всё! Никаких убийсв или маускликов на спрятанную кнопку больше не нужно!
Вложения
Тип файла: rar test.rar (29.1 Кб, 22 просмотров)
_SIL_ вне форума  
4 пользователя(ей) сказали cпасибо:
Старый 23.04.2014, 22:47   #33
Norm
Куратор
 
Аватар для Norm
Доп. информация
По умолчанию

Озадачил однако (в хорошем смысле)
Таким образом можно абалденныё анимашки делать
Очень красиво
Фишка с SysInfoSettings-1, 2, 3 просто супер, ну а про избавление от MouseClick вообше молчу
Надо отметить это дело
Norm вне форума  
Старый 24.04.2014, 09:37   #34
Norm
Куратор
 
Аватар для Norm
Доп. информация
По умолчанию

Всё работает, без каких либо нареканий.
Но в свете таких событий хочу спросить
Есть ли возможность пойти ещё немного дальше и сообщать программе через окно, чтобы происходил переход на другой ини, аналогично команде NewIni =
Если спросишь зачем, то у меня в некоторых ини число невидимых кнопок доходит до 4-х штук, лишь одна их которы является Refresh, а остальные для перехода на другие ИНИшники.
Связано это с тем что я не могу разместить под одной кнопкой несколько операций, поэтому запускаю скрипт из под одной кнопки, от продлевает нужные операции и нажимает на невидимую кнопку, для дальнейшего перехода в другой ини.

Или может отказаться от PostMessage("имя окна заданное через WindowName", HexToNumber("8001"), 0, 0 )
и передавать имя ИНИ-шника, а пользователь будет сам решать какой ини Refresh или New

И ещё попутно,
Если последняя цифра "0" отвечает за передачу параметра анимации, то для чего первая цифра ( и это тоже "0" )?
А так же какой из параметров Анимации имеет больший приоритет, тот который стоит в ИНИшнике или передаваемый?
Norm вне форума  
Старый 24.04.2014, 11:07   #35
_SIL_
Старичок
 
Аватар для _SIL_
Доп. информация
По умолчанию

Цитата:
Сообщение от Norm Посмотреть сообщение
И ещё попутно,
Если последняя цифра "0" отвечает за передачу параметра анимации, то для чего первая цифра ( и это тоже "0" )?

Это не попутно, а главный камень предкновений.
Именно через PostMessage оригинальный SI и запускает новый инишник. Но вместо нуля в оригинале всегда задается указатель на строку нового инишника, который SI читает через NewIni=. Указатель - это 4-байтное число, равное адресу ОЗУ по которому располагается строка в оперативке.

Всё дело в том, что указатель должен ссылаться на строку которая должна быть внутри адресного пространства SI (внутри кода либо внутри занятой её оперативки). То есть если переменная со строкой находится в скрипте или каком-то другом экзешнике, то передав SI указатель на эту переменную ничего не получится. У Si нет прав внедриться в чужой процесс чтоб прочитать переменную из чужого адресного пространства.

Кроме того, в скрипте невозможно создать указатель на переменную. Ну не работает мортскрипт с указателями.

Вот из-за этих 2 ограничений можно сразу забыть о передаче произвольного инишника из скрипта.


Самый простой способ сказать SI чтоб она прочитала новый инишник - это поправить её старый инишник и заставить перечитать его с помощью
Код:
PostMessage("имя окна", HexToNumber("8001"), 0, 0 )
Раньше даже так делать было нельзя, то есть в 3 параметре передавать ноль вместо указателя. Это я подправил код SI и теперь она увидев 0 заменяет 0 на указатель старого инишника. Кстати имя старого инишника она не хранила, поэтому попутно пришлось заставить SI хранить имя текущего инишника в оперативе.
_SIL_ вне форума  
2 пользователя(ей) сказали cпасибо:
Старый 24.04.2014, 12:25   #36
Norm
Куратор
 
Аватар для Norm
Доп. информация
По умолчанию

Цитата:
Всё дело в том, что указатель должен ссылаться на строку которая должна быть внутри адресного пространства SI (внутри кода либо внутри занятой её оперативки). То есть если переменная со строкой находится в скрипте или каком-то другом экзешнике, то передав SI указатель на эту переменную ничего не получится. У Si нет прав внедриться в чужой процесс чтоб прочитать переменную из чужого адресного пространства.

А если мы используем не какой-то виртуальный ИНИшник, а вполне конкретный, прописанный в ИНИшнике и уже загруженном в память. То есть задаем параметры кнопки, что бы можно было сослаться на конкретный адрес.
Есть ли возможность в таком случае определить указатель для конкретной строки или приобразовать искомое название и искать совпадения в памяти ?

Цитата:
Кроме того, в скрипте невозможно создать указатель на переменную. Ну не работает мортскрипт с указателями.

Это естественно накладывает крест на указанные выше выкладки.
Есть ли хоть какая-то возможность передать этот указатель иным способом, по типу МортРунера?
Norm вне форума  
Старый 24.04.2014, 15:11   #37
_SIL_
Старичок
 
Аватар для _SIL_
Доп. информация
По умолчанию

Цитата:
Сообщение от Norm Посмотреть сообщение
Есть ли хоть какая-то возможность передать этот указатель иным способом, по типу МортРунера?

Проблема не в передаче указателя как такового. Проблема в том чтобы сама строка каким-то образом оказалась внутри SI. Простого способа нет. Вот работает у тебя на ПК калькулятор. Как сделать чтобы внутри калькулятора появилась какя-то новая строка???
Можно конечно заставить SI по какой-то комманде читать какой-то определенный файл или ключ реестра, но это ненадежно и геморно как в реализации так и в использовании. А опять делать какие-то прокладки - совсем неохота...


Цитата:
Сообщение от Norm Посмотреть сообщение
А если мы используем не какой-то виртуальный ИНИшник, а вполне конкретный, прописанный в ИНИшнике и уже загруженном в память.

А вот это вполне реально и не сложно сделать. Например сделать вот такой фоункционал:
Добавить NewIni= в GLOBALSETTINGS, а переходить на этот новый инишник через PostMessage("имя окна", HexToNumber("8001"), 1, 0 )
Это можно, могу сделать. Но по-моему из скрипта совсем не сложно поправить текущий инишник и перечитать его в SI.
_SIL_ вне форума  
Старый 24.04.2014, 16:09   #38
Norm
Куратор
 
Аватар для Norm
Доп. информация
По умолчанию

Цитата:
Это можно, могу сделать. Но по-моему из скрипта совсем не сложно поправить текущий инишник и перечитать его в SI.

То есть посредством копирования или переименованию файлов и потом актуализировать.
Тогда может проще оставить МойзеКлик с прямым переходом в новый ИНИшник.

Но я имел ввиду другое.
Например в ини уже прописаны стандартные параметры для кнопок как для спрятанных кнопок так и для нормальных (ведь иногда приходится и на них при помощи МойзеКлик нажимать)
Программа просматривается все строки с NewIni и нумерует их в прямой последовательности.
Пользователь смотрит последовательность и указывает в параметрах номер нужного ему ИНИшника.
При этом нет необходимости добавлять в глобальные настройки еще дополнительные названия ИНИшников, а ограничиться лишь вписанием Названия самого окна.
Norm вне форума  
Старый 24.04.2014, 16:35   #39
Skondr1
Старичок
 
Аватар для Skondr1
Доп. информация
По умолчанию

Цитата:
Сообщение от Norm Посмотреть сообщение
Есть ли возможность пойти ещё немного дальше и сообщать программе через окно, чтобы происходил переход на другой ини, аналогично команде NewIni =
Если спросишь зачем, то у меня в некоторых ини число невидимых кнопок доходит до 4-х штук, лишь одна их которы является Refresh, а остальные для перехода на другие ИНИшники.
Связано это с тем что я не могу разместить под одной кнопкой несколько операций, поэтому запускаю скрипт из под одной кнопки, от продлевает нужные операции и нажимает на невидимую кнопку, для дальнейшего перехода в другой ини.

У меня эта проблема была решена несколько замысловато. Правился SysInfoSettings.ini, в котором прописывался ini, с которым должен был загружаться SI. После этого загружалась 2-я копия SI и убивалась 1-я с ini, из которого делался переход. Все это работало через скрипт. Сейчас же с этим вообще проблем никаких нет. Скрипт запускает SI, передавая в качестве параметра ini файл, из которого SI читает с каким ini он должен запускаться. Т.к. в ini теперь есть WindowName=, то 2 копии SI можно легко идентифицировать. Ненужный больше SI корректно закрывается командой Close с именем ненужного больше окна. Т.о. без всяких скрытых кнопок можно реализовать выполнение скриптом нескольких команд по кнопке SI и перейти на новое окно. Как раз отсутствие имени окна и не позволяло корректно решить проблему выполнения нескольких команд по кнопке с переходом на новое окно. Забудем эти неудобства как страшный сон)
Можно и потайные кнопочки оставить. Разница будет только в том, что скрипт вместо открытия новой копии SI и закрытия ненужной копии SI будет заставлять само SI скакать от одного ini к другому после выполнения всех нужных действий.
__________________
Pioneer 7" Mediatek MT3351 ARM1176JZ-S (468MHz) 128Mb WinCE5.1400 800x480px, Navitel NX-5300
Skondr1 вне форума  
Пользователь сказал cпасибо:
Старый 24.04.2014, 17:23   #40
Norm
Куратор
 
Аватар для Norm
Доп. информация
По умолчанию

Быть может для какого-то конкретного не сложного случая вполне подойдет, но в моем случае это лишь усложнит и без того распухшие скрипты.
Да и выглядит это не так уж и просто.
Просто это МойзеКлик или через команду скрипта, (всего одна строка и информация уже на экране)
а всё остальное будет только усложнять, будь то переименования, перекопирования или внесение записей в SysInfoSettings.ini или запуск второго SI

P.S.
A зачем запуск второго SI, когда при наличии SysInfoSettings-1, 2, 3 можно и одним обойтись
Norm вне форума  
Старый 24.04.2014, 17:29   #41
_SIL_
Старичок
 
Аватар для _SIL_
Доп. информация
По умолчанию

Цитата:
Сообщение от Norm Посмотреть сообщение
Программа просматривается все строки с NewIni и нумерует их в прямой последовательности.

Теоретически можно, практически - не знаю, довольно сложно, но можно попробовать.
То есть ты предлагаешь так:

Сначала в самом верху прописываем в скрытых кнопках нужные нам инишники, например их 3. Сразу нужно договориться что их будет скажем не более 64. ВСЕГДА!

Код:
GLOBALSETTINGS
...

#Инишник №1
BUTTON
y=999
NewIni=File1.ini

#Инишник №2
BUTTON
y=999
NewIni=File2.ini

#Инишник №3
BUTTON
y=999
NewIni=File3.ini

...
Далее код для кнопок

Затем при нажатии на какую-то кнопку мы, зная порядковый номер требуемого инишника, например второго, вызываем

PostMessage("имя окна", HexToNumber("8001"), 2, 0 )
А SI уже должна будет взять у себя в памяти сохраненный адрес строки второго инишника и подставить его вместо 2.
То есть вместо 0 она подставляет адрес текущего инишника, а вместо 1...65 - адрес пронумерованных по порядку следования всех инишников из любых кнопок (и скрытых и не скрытых).

Так?


Цитата:
МойзеКлик

Я под столом! Тогда уж МойзеСлиск! А про МиккиМауса ты слышал?
Кстати основная засада с маускликом в том, что в тех координатах по которым мы кликаем может находиться другое окно, например иконка GPRS_AutoDial или BananaPC. Кликаться будет не SI, а другая прога. Это напрочь отбивает охоту пользоваться MouseClick()


Цитата:
Сообщение от Norm Посмотреть сообщение
A зачем запуск второго SI, когда при наличии SysInfoSettings-1, 2, 3 можно и одним обойтись

Это как? Без повторного запуска нового процесса в данном случае ничего не получится.

Цитата:
Сообщение от Norm Посмотреть сообщение
Просто это МойзеКлик или через команду скрипта, (всего одна строка и информация уже на экране)
а всё остальное будет только усложнять, будь то переименования, перекопирования или внесение записей в SysInfoSettings.ini или запуск второго SI

Согласено на 100% и стремлюсь к тому чтобы менюшкой было просто (но надежно) ПОЛЬЗОВАТЬСЯ, тобиш управлять.
_SIL_ вне форума  
Старый 24.04.2014, 17:51   #42
Norm
Куратор
 
Аватар для Norm
Доп. информация
По умолчанию

Цитата:
То есть ты предлагаешь так:

Именно так

Цитата:
Я подстолом! Тогда уж МойзеСлиск!


Владеем пока только немецким, а на немецком это именно так и читается

Цитата:
Это как? Без повторного запуска нового процесса в данном случае ничего не получится.

Ну правильно конечно, я имел ввиду отсутствие второго ЕХЕ файла, а запуск само собой делать через один единственный SI.
Norm вне форума  
Старый 24.04.2014, 18:02   #43
_SIL_
Старичок
 
Аватар для _SIL_
Доп. информация
По умолчанию

Цитата:
Сообщение от Norm Посмотреть сообщение
Именно так

Задача мне нравится (точнее не задача, а достигаемый результат), но она не из легких, своего кода тут мало, в основном будет только хакерство, а это ой как не просто...
_SIL_ вне форума  
Старый 24.04.2014, 18:16   #44
Skondr1
Старичок
 
Аватар для Skondr1
Доп. информация
По умолчанию

Цитата:
Сообщение от Norm Посмотреть сообщение
Быть может для какого-то конкретного не сложного случая вполне подойдет, но в моем случае это лишь усложнит и без того распухшие скрипты.

Мне кажется мы усложним само SI, которое будет вычитывать при запуске туеву хучу параметров, тем самым увеличивая время запуска меню. А оно и сейчас запускается не ахти как быстро)
А чего соб-но добиваемся? Засунуть часть функций, выполняемых скриптом, в SI. PostMessage ведь все равно скриптом будет выполняться, а SI не выполнит по кнопке несколько команд без скрипта. Из скрипта можно обновить окно, заставить SI запуститься с другим ini. Прописывать кучу кнопок в Global и все ради того, чтобы не запускать одну копию SI и не закрывать другую? Или я чет не так понял?
Цитата:
Сообщение от Norm Посмотреть сообщение
Ну правильно конечно, я имел ввиду отсутствие второго ЕХЕ файла, а запуск само собой делать через один единственный SI.

Теперь на все запускаемые меню SI можно один exe оставить. Я так и сделал, повыкинул все exe-ки отовсюду)
__________________
Pioneer 7" Mediatek MT3351 ARM1176JZ-S (468MHz) 128Mb WinCE5.1400 800x480px, Navitel NX-5300
Skondr1 вне форума  
Старый 24.04.2014, 19:21   #45
Norm
Куратор
 
Аватар для Norm
Доп. информация
По умолчанию

Цитата:
Прописывать кучу кнопок в Global и все ради того, чтобы не запускать одну копию SI и не закрывать другую? Или я чет не так понял?

Да нет же это те же самые кнопки которые ты обычно используешь
В Глобальные настройки при этом тоже ничего добавляться не будет, разве только имя окна.
Речь идет не о запуске одной и той же копии а о переходе на другой ИНИ без использования эмитации Слика по экрану.

Насчет увеличения кода и времени запуска,
Я не автор, но думаю запускать новый процесс всё равно медленне будет, чем использовать уже запущенную программу. Ну а кроме того повышается нагрузка на ЦПУ и оперативку ( пусть не значительно, но всёже)
Ну и из практики своей скажу, что создавая эти невидимые кнопки настройки координат, что бы друг другу не мешали и тестирование куда муторнее перспективы просто указать в строке с командой номер нужного ИНИшника.
Norm вне форума  
Ответ

Метки
hack, menu, png, system infomation

Опции темы


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Азы работы с меню на основе System Information. asterrX Меню System Information 214 02.06.2017 23:20
FAQ по System Information 7kot7 Меню System Information 7 22.12.2015 16:05
Альтернативное ПО для CAMERON-CA585GPS (на основе System Information) Pritorius 480x272 95 17.08.2014 23:01
еще меню-скин-1 экран-480х272 основа System Information VictorV 480x272 17 18.01.2011 15:43
V7 Portable Navigation System mr_kan Разное 11 20.09.2010 10:06


Текущее время: 01:13. Часовой пояс GMT +3.


Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, Jelsoft Enterprises Ltd. Перевод: zCarot

Копирайты
Время генерации страницы 0.18214 секунды с 13 запросами