-
Публикаций
1242 -
Зарегистрирован
-
Посещение
Тип контента
Профили
Форумы
Календарь
Сообщения, опубликованные vlego
-
-
Вопрос к vlegoНа одном из навигаторов (TN-705) русский шрифт в надписях выбора порога предупреждения (60км/ч' date=' 90км/ч) пишет кракозябликами. Причем рядом лежит ещё один такой же 705-ый, там по-русски. Нет шрифта?Проблему конечно решили перезаписью в скрипте этих же строчек по англицки, но просто интересна причина.
[/quote']
Текстовый файл должен быть сохранен в кодировке UTF-8.
На обоих навигаторах один и тотже файл или для каждого создавали свой? Проверьте кодировку.
-
А что нибудь подобное для iPhone?..
Нужны исходные данные, где и как пишется конфиг, где лежит СГ? Где находится "SpeedLimit="?
-
Скрипт для WM.
(Большие буквы в окне выбора и таймер)
#################################################################
# Скрипт изменяющий значение параметра "SpeedLimit" в реестре #
# для WinMobile. V_0.11 #
#################################################################
# для версии ниже 3.7.0.336 установка громкости (значения 0-255)
#SetVolume( 250 )
# путь установки программы
cgPath = "флеш-дискProgram filesCity Guide 3"
# наименование файла программы СитиГид
cgName = "CityGuide"
# значение для города
SpeedLimit[1]="67"
# значение для трассы
SpeedLimit[2]="100"
# наименование для города
SpeedName[1]="ограничение скорости 60км/ч."
# наименование для трассы
SpeedName[2]="ограничение скорости 90км/ч."
# если программа загружена, то запускаем сам ехешник
if ( ProcExists( cgName & ".exe" ) )
Run(cgPath & cgName & ".exe")
# если программа не загружена, то запускаем скрипт
else
# чтение значения параметра из реестра
ActiveSpeedLimit = RegRead( "HKCU", "SoftwareMITCity GuideSettings", "Speedlimit" )
# определяем наименование текущего значения
ForEach ix, idx in array ( SpeedLimit )
if ( idx = ActiveSpeedLimit )
ActiveSpeedName = SpeedName[ix]
ActiveSpeedix = ix
EndIf
EndForEach
# установка размера шрифта в окне выбора
SetChoiceEntryFormat(156/MaxIndex(SpeedLimit),24)
# выбор порога превышения скорости
idx = Choice( "Selection", "Выбор порога превышения скорости.
^LF^Текущее " & ActiveSpeedName, ActiveSpeedix, 10, SpeedName )
# если нажата кнопка не Cancel или истек таймер, то продолжаем
if ( idx <> 0 )
# сохранение значения лимита скорости в реестре
RegWriteDWord( "HKCU", "SoftwareMITCity GuideSettings", "Speedlimit", SpeedLimit[idx] )
# если нужно, запускаем explorer
# Run("Windowsexplorer.exe", "")
# Sleep(1000)
# Запуск программы СГ
Run(cgPath & cgName & ".exe")
EndIf
EndIf
############################# Конец ############################
Пробуйте. По результатам отпишитесь.
-
Долго не мог понять, как вы свернутый СГ разворачиваете, дошло (не прошло и года). Нужно было просто еще раз запустить СГ.
Пока тестировал на своем навике Marten опередил.
Вот поправленный скрипт, пробуйте.
#################################################################
# Скрипт изменяющий значение параметра "SpeedLimit" в файле #
# "СityGuideCE.ini" для Windows CE. V 0.12 #
#################################################################
# для версии 3.5 и ниже установка громкости (значения 0-255)
#SetVolume( 250 )
# пуь установки программы
cgPath = "SDMMCCityGuide"
# наименование файла программы СитиГид
cgName = "CityGuideCE"
# значение для города
SpeedLimit[1]="67"
# значение для трассы
SpeedLimit[2]="100"
# наименование для города
SpeedName[1]="ограничение скорости 60км/ч."
# наименование для трассы
SpeedName[2]="ограничение скорости 90км/ч."
if ( ProcExists( cgName & ".exe" ) )
Run(cgPath & cgName & ".exe")
else
################### чтение файла конфигурации ###################
GetData = ReadFile( cgPath & cgName & ".ini" )
ForEach strDat in split ( GetData, "^LF^", TRUE )
if ( Find( strDat, "SettingsSpeedLimit=" ) )
ActiveSpeed = strDat
ActiveSpeedString = Part( strDat, "=", 1 ) & "="
ForEach ix, idx in array ( SpeedLimit )
if ( idx = Part( strDat, "=", 2 ) )
ActiveSpeedLimit = SpeedName[ix]
ActiveSpeedix = ix
EndIf
EndForEach
EndIf
EndForEach
################ выбор значения лимита скорости #################
# установка размера шрифта в окне выбора
SetChoiceEntryFormat(156/MaxIndex(SpeedLimit),24)
# выбор порога превышения скорости
idx = Choice( "Selection", "Выбор порога превышения скорости.
^LF^Текущее " & ActiveSpeedLimit, ActiveSpeedix, 10, SpeedName )
# если не Cancel, то продолжаем
if ( idx <> 0 )
# сохранение значения лимита скорости
SetData = Replace( GetData, ActiveSpeed, ActiveSpeedString & SpeedLimit[idx] )
WriteFile( cgPath & cgName & ".ini", SetData )
# Запуск программы
Run("Windowsexplorer.exe", "")
Sleep(1000)
Run(cgPath & cgName & ".exe")
EndIf
EndIf
############################# Конец ############################
- 1
-
Вот так - http://forum.probki.net/forum_posts.asp?TID=3872&KW=YFAutoRun%2Einf&PID=79222#79222 (как это работает - не представляю )
Попробуйте перед загрузкой СГ, строка Run(cgPath & cgName & ".exe") загрузить explorer
Run ("Windowsexplorer.exe")
Sleep(1000)
Run(cgPath & cgName & ".exe")
Но у меня не работает.
-
Ага! Работает.Осталось придумать как доставать СГ из свёрнутого состояния...Может быть надо сначала запускать дополнительное меню где а)программа' date=' б)задание скорости, т.е. путь к этому скрипту? (я в этом мало понимаю, так что не пинайте, если мысль глупая, но просто с путями к программам сворачивание/разворачивание работало )[/quote']
А какая у вас версия СГ? У меня СГ никогда не сворачивался, чесно говоря, не заморачивался по этому поводу. Может у Вас СГ запускался тоже через МортСкрипт? Сначала грузился Explorer, а потом СГ?
-
<... Кнопка Cancel не отменяет меню' date=' обязательно надо что-то выбрать, после чего грузится СГ. Хотелось бы отмены.2. Хотелось бы добавить таймер к значению по умолчанию (например, "Город") и без дополнительного вопроса, у которого к тому же мелкие кнопки.
...>[/quote']
YFLoader6.exe - это родная оболочка TeXeT TN505. Перед загрузкой программы я ее выгружаю, а потом, после выгрузки программы загружаю обратно. Но это только для TN505.
Вот поправленный скрипт, пробуйте. Таймер установлен на 10 сек.
#################################################################
# Скрипт изменяющий значение параметра "SpeedLimit" в файле #
# "СityGuideCE.ini" для Windows CE. V 0.12 #
#################################################################
# для версии 3.5 и ниже установка громкости (значения 0-255)
#SetVolume( 250 )
# пуь установки программы
cgPath = "SDMMCCityGuide"
# наименование файла программы СитиГид
cgName = "CityGuideCE"
# значение для города
SpeedLimit[1]="67"
# значение для трассы
SpeedLimit[2]="100"
# наименование для города
SpeedName[1]="ограничение скорости 60км/ч."
# наименование для трассы
SpeedName[2]="ограничение скорости 90км/ч."
################### чтение файла конфигурации ###################
GetData = ReadFile( cgPath & cgName & ".ini" )
ForEach strDat in split ( GetData, "^LF^", TRUE )
if ( Find( strDat, "SettingsSpeedLimit=" ) )
ActiveSpeed = strDat
ActiveSpeedString = Part( strDat, "=", 1 ) & "="
ForEach ix, idx in array ( SpeedLimit )
if ( idx = Part( strDat, "=", 2 ) )
ActiveSpeedLimit = SpeedName[ix]
ActiveSpeedix = ix
EndIf
EndForEach
EndIf
EndForEach
################ выбор значения лимита скорости #################
# установка размера шрифта в окне выбора
SetChoiceEntryFormat(156/MaxIndex(SpeedLimit),24)
# выбор порога превышения скорости
idx = Choice( "Selection", "Выбор порога превышения скорости.
^LF^Текущее " & ActiveSpeedLimit, ActiveSpeedix, 10, SpeedName )
# если не Cancel, то продолжаем
if ( idx <> 0 )
# сохранение значения лимита скорости
SetData = Replace( GetData, ActiveSpeed, ActiveSpeedString & SpeedLimit[idx] )
WriteFile( cgPath & cgName & ".ini", SetData )
# Запуск программы
Run(cgPath & cgName & ".exe")
EndIf
############################# Конец ############################
-
To vlego:здОрово' date=' спасибо. Поставил на свой ВМ, вроде работает. Бум пробовать на ходу.
[/quote']
Пожалуйста.
Так как под рукой нет девайса с WM хотелось бы посмотреть на рабочий скрипт. Если не сложно киньте.
Для будующих изменений.
-
Ух-ты! От меня благодарность!И сразу вопрос' date=' можно эти три строчки растянуть на весь экран по высоте, а то боюсь будет сложно попадать?
Можно.
Нужно добавить строчку в указанном месте:
################ выбор значения лимита скорости #################
# установка размера шрифта в окне выбора
SetChoiceEntryFormat(156/3,22)
While( chCase <> 1 )
idx = Choice( "Selection", "Выбор порога превышения скорости.
^LF^Текущее " & ActiveSpeedLimit, ActiveSpeedix, 0, SpeedName )
if ( idx > 0 )
Switch( Question(" Выбрано " & SpeedName[idx] & ".
Хотите продолжить?","Внимание!","YesNo") )
Case( 1 )
chCase = 1
EndSwitch
EndIf
EndWhile
- 1
-
скажите кто уже имел возможность опробовать: можно ли как-то изменять порог без выхода из самой программы? Или СГ надо закрывать каждый раз' date=' когда нужно изменить в реестре порог скорости?
[/quote']Даже, если изменить в реестре значение, в программе порог не изменится. Программа считывает весь конфиг в момент загрузки. Для того, что бы менять порог скорости не перегружая программу необходимо это делать в интерфейсе программы, а для этого нужно лесть в код программы.
Надеюсь в скором будующем разработчики доделают эту фичу, тем более, что она уже работает.
Для PsevDANIm
Прошу прощения за минимум информации по установке скрипта. Выложил скрипт, который делал для себя и расписал комментарии с надеждой, что каждый подгонит под своего зверька.
-
Скрипты для запуска CityGuide.
v01
v02
WinCe 20100510_185341_StartCE.RAR
WM 20100510_185400_StartWM.RAR
Скрипты для WM проверить было не на чем. Поэтому может что то работать не будет.
Файлы перед запуском переименовать в Start.mscr
В начале скрипта добавил строчку для установки громкости "SetVolume( 250 )". Значения могут быть от 0 до 255. Строка закомментирована, кому надо раскомментируйте. Часто приходится выгружать пограмму, для изменения громкости, особенно в версии 3.5 и ниже. Если выставить необходимое значение, то программа будет всегда загружаться с этим значением громкости.
- 1
-
Чтобы каждый раз вручную не править значение скорости в конфиге, набросал скриптик для WinCE, который сначала предлагает выбрать порог ограничения скорости, а потом запускает СГ. Пути размещения программы необходимо поправить для своего девайса.
Может кому пригодится.
- 1
-
Спасибо Vlego поставил на навигатор версия 3' date='7 с "подрихтованным" land Pack работает исправно предупреждает вовремя (скорость набираю медленно) скорость установил 100 км/ч вовремя останавливает набор скорости когда по трассе кто-то "отчаянный" или блатной обгоняет нога машинально добавляет скорость а тут предупреждение-сказка. [/quote']
Согласен, именно по этой причине и копал в этом направлении. Особенно актуально на трассе, когда не замечаешь увеличение скорости. У меня при установленном значении 100 четко срабатывает на скорости 102 км/ч.
-
Прога сама знает какой файл.Интересно откуда топистартер узнал об этой недокументированной?vlego
! если не секрет
Пробовал разговорить свой Навител, но так и не получилось. При переходе на СГ предположил, что в СГ не хватает голосового файла. Оставалось, только узнать как он называется. Немного поковырялся в exeшнике и вот...
-
Подкиньте плиз этот звукоковой файлик поиграться
Вот файлик 20100430_225106_OverSpeed_ru.rar.
Кстати в версии 3.7 в режиме демо тоже работает.
-
Ого' date=' прикольно.Интересно, на каких версиях это заработает.[/quote']
Пробовал на 3.5.0.314.
-
Для того, чтобы в Вашем навигаторе при превышении, установленного Вами порога скорости, звучало предупреждение о превышении скорости необходимо взять любой WAV файл, переименовать его в OverSpeed.ru.wav и скопировать его в папку Voice.
Можете скачать уже готовый файл.
Далее для устройств, которые работают под WindowsCE необходимо сделать изменения в файле конфигурации CityGuideCE.ini.
В строке SettingsSpeedLimit= поставить значение порога превышения скорости.
Для устройств, которые работают под WindowsMobile необходимо сделать изменения в реестре.
В ветке HKCU/Software/MIT/City Guide/Settings изменить значение.
Для того, чтобы каждый раз вручную не править значение скорости в конфиге или в реестре предлагаю скрипт для запуска СГ.
Скрипты и описание находятся здесь.
vlego2010-11-06 22:21:40
- 2
Предупреждение о превышении скорости
в Обмен опытом
Опубликовано
Обновил скрипты.
Т.к. в версии 3.7.0.336 значение уровня громкости присутствует в конфиге, то скрипт меняет это значение на установленное. В верси ниже 3.7.0.336 по прежнему меняется системная громкость.
Сейчас автоматически оределяется версия программы и выбирается соответствующее значение громкости.
Включил проверку запущенного explorera, если не запущен, то запускается.
WinCE - 20100519_133914_StartCE_v013.zip
WM - 20100518_213809_StartWM_v013.zip