Столкнулся с такой проблемой, пишу скрипт
И вот в этой строке
У меня затык, мне нужно что бы gmapsupp.IMG открывался в gmt.exe, если я делаю так
То все работает, но скрипт должен лежать рядом с папкой Garmin, что мне не подходит т.к. путь будет постоянно меняться, в справке ответа не нашел, подскажите что я неправильно делаю?
Код:
#include <Array.au3>
#include <IE.au3>
#include <MsgBoxConstants.au3>
#include <GuiConstantsEx.au3>
$sPath = RegRead("HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Garmin\Express", "InstallLocation") ; найти путь к GarminExpress
if @error <> 0 then; проверяем установлен ли GarminExpress
MsgBox(0, "Предупреждение", "У Вас не установлен GarminExpress. Установите GarminExpress и продолжите обновление")
ShellExecute('http://software.garmin.com/ru-RU/express.html')
Exit
EndIf
Local $aArray = DriveGetDrive("REMOVABLE") ; ищет все съемные диски и записывает в массив
Local $iRows = UBound($aArray, 1) ; считает сколько элементов в массиве
If $iRows - 1 = -1 Then ; Если неподключен ни один съемный диск то выдавать сообщение и выходит из программы
MsgBox($MB_SYSTEMMODAL, "Внимание!!!", "Невставлена карта памяти! Вставте карту памяти!")
Exit
EndIf
_Main()
Func _Main()
Local $idLabel_1, $idCombo_2, $idButton1, $iMsg, $sData
GUICreate("Garmin", 191, 157, (@DesktopWidth - 191) / 2, (@DesktopHeight - 157) / 2) ; основное окно
GUICtrlCreateLabel("Выберети диск:", 30, 40, 131, 21, 0x1000) ; нередактируемая строка
$idCombo_2 = GUICtrlCreateCombo("", 30, 60, 130, 21) ; выпадающее окно с элементами выбора
GUICtrlSetData($idCombo_2, _ArrayToString($aArray, "|", 1, $iRows - 1) ) ; прописывает в выпадающее окно необходимые элементы : _ArrayToString (переводит массив в строку), $aArray - массив который будем переводить, "|" - какой знак будет разделять каждый элемент массива, 1 - с какого индекса начинать, $iRows - 1 - до какого индекса идти
$idButton1 = GUICtrlCreateButton("Подтвердить", 30, 90, 130, 20) ; активная кнопка "Подтвердить"
GUISetState()
While 1
$iMsg = GUIGetMsg()
Select
Case $iMsg = $GUI_EVENT_CLOSE
ExitLoop
Case $iMsg = $idButton1
$sData = GUICtrlRead($idCombo_2) ; в $sData записывается то что мы выбрали в выпадающем окне
DirCreate ( $sData & "Garmin" ) ; содается папка по пути который мы выбрали в выпадающем окне
RunWait ($sData & "\Garmin\gmt.exe \Garmin\gmapsupp.IMG")
Exit
EndSelect
WEnd
Exit
EndFunc ;==>_Main
И вот в этой строке
Код:
RunWait ($sData & "\Garmin\gmt.exe \Garmin\gmapsupp.IMG")
У меня затык, мне нужно что бы gmapsupp.IMG открывался в gmt.exe, если я делаю так
Код:
RunWait ("\Garmin\gmt.exe \Garmin\gmapsupp.IMG")
То все работает, но скрипт должен лежать рядом с папкой Garmin, что мне не подходит т.к. путь будет постоянно меняться, в справке ответа не нашел, подскажите что я неправильно делаю?