|
Цитата: |
|
|
|
|
|
|
|
|
|
Тут момент совместимости со старой версией
|
|
|
|
|
|
Но это ведь была ломанная версия! В ней не работал функционал NewIni. То что вы ранее использовали коряво взломанную версию - ваше право, но делать совместимось с коряво взломанной версией по моему глупо.
|
Цитата: |
|
|
|
|
|
|
|
|
Единственный нюанс, относительный путь к MortRun.exe указывается исходя из местоположения ini файла, а параметр, т.е. скрипт, который будет запускать MortRun, указывается исходя из местоположения MortRun.exe. |
|
|
|
|
|
Да, именно так, я про это забыл написать.
|
Цитата: |
|
|
|
|
|
|
|
|
|
Можно проще - назвать 2 копии SI по-разному. Например: MenuX.exe и MenuY.exe. Изменяем ini, проверяем запущен ли MenuX.exe, если да, то запускаем MenuY.exe, убиваем MenuX.exe, если нет, запускаем MenuX.exe, убиваем MenuY.exe. У меня эта схема проверена и работает на всех навигаторах. А меню ставил практически на все платформы.
|
|
|
|
|
|
Мне больше нравится способ
_RUSER_ - без убийств, тк работает быстрее и надежнее.
в координате (0,0) сделать невидимую кнопку в 1 пиксель, в которой написано NEW_INI=тотже ини что и в GLOBALSETTINGS.
Изменяем ini и делаем MouseClick 0,0 - менюшка обновится гораздо быстрее.
Вообще убивание процессов - вещь не очень хорошая, всегда лучше не убивать, а заставлять прогу закрыться самой. Иначе в памяти остаются хвосты зарезервированной оперативки. Иногда маленькие, иногда большие. Применительно конкретно к этой менюшке - хвостов после убиения пока не наблюдал.
Я нашел способ как запускать скрипты из SI и передавать им параметры без MortRun.exe.
Проблема в том что Мортскрипт регистрирует себя в реестре вот так:
HKEY_CLASSES_ROOT\MortScript\Shell\Open\Command\@ =
"\SDMMC\Test\Mort\MortScript.exe" "%1"
а нужно вот так:
HKEY_CLASSES_ROOT\MortScript\Shell\Open\Command\@ =
"\SDMMC\Test\Mort\MortScript.exe" "%1" %*
Тогда если в SI написать
Command="..\Script\Test.mscr" Param1 "Param2 with spaces" Param3
То мортскрипт запустит Test.mscr и передаст ему параметры!!! То есть прокладка в виде MortRun.exe не нужна!
Но как сделать так чтобы то что написано красным постоянно присутствовало в реестре?
Постоянно запускать какой-то исправляющий скрипт или экзешник? Неудобно и ненадежно. Взломать Мортскрипт4.3? Удобнее, надежнее, но тоже не выход. Юзер может прописать какой-то свой мортскрипт и менюшка перестанет работать.
В общем, как ни крути, надежнее всего - плевать на то что в реестре и
юзать в менюшке мортран
Command="..\Mort\MortRun.exe" "..\Script\Test.mscr" Param1 "Param2 with spaces" Param3