Старичок
Доп. информация
|
Регистрация: 11.05.2010
Адрес: г.Серпухов, мос.обл.
Сообщений: 280
Сказал(а) спасибо: 73
Поблагодарили 653 раз(а) в 126 сообщениях
|
|
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??? Есть повод задуматься.
Последний раз редактировалось Norm; 14.01.2018 в 09:55..
Причина: Смена иконки
|