Папка выбирается и не сохраняется в настройках Topic is solved

Помощь в написании скриптов
marusa122
Posts: 135
Joined: 22 Mar 2023, 07:48

Папка выбирается и не сохраняется в настройках

22 Apr 2023, 04:12

Здравствуйте. Есть скрипт. Основной код:

Code: Select all

Tab:
Run, D/Все папки/Папка1
Return
Но перед этим открывается форма для выбора расположения этой Папки1 (если в стартовом Msgbox на вопрос "Вы хотите изменить настройки запуска?" ответить "Да").
И вот с этой формой для настройки запуска проблема. Она не сохраняет расположение папки.
При нажатии на кнопку с многоточием открывается окно "Обзор папок". Выбирается папка, нажимается "ОК". Но расположение этой папки не появляется в форме. При нажатии кнопки "Сохранить" в AppLauncher.ini появляется вот такой текст:

Code: Select all

[Settings]
FolderToRun=
Соответственно, основной код после нажатия кнопки "Начать работу" не запускается (хотя должен открывать выбранную папку). В чем может быть проблема?
Весь код скрипта:

Code: Select all

MsgBox, 4, Программа1, Вы хотите изменить настройки запуска?, 5
Sleep, 1000
Send, {TAB}{SPACE}
IfMsgBox Yes
{
; Читаем сохранённые настройки из файла AppLauncher.ini
IniRead, viFolder, AppLauncher.ini, Settings, FolderToRun, %A_Space%

; Создаём окно с подписями, текстовыми полями и кнопками
Gui, New

Gui, Add, Text  , XM   Y+M  W60  R1, Папка:
Gui, Add, Edit  , X+10 YP   W180 R1 vEd_Folder,   %viFolder%
Gui, Add, Button, X+0  YP   W20  R1 vBt_Folder gOnButtonFolder, ...


Gui, Add, Button, XM   Y+M W270 R3 vBt_Run  gOnButtonRun , Начать работу
Gui, Add, Button, XM   Y+M W130 R1 vBt_Save gOnButtonSave, Сохранить
Gui, Add, Button, X+10 YP  W130 R1 vBt_Exit gOnButtonExit, Выйти

Gui, Show,, App Launcher
Return

; При нажатии Esc, закрытии окна или нажатии кнопки Exit скрипт завершается.
GuiEscape:
GuiClose:
OnButtonExit:
	ExitApp

; При нажатии Save значения из текстовых полей сохраняются в файл настроек AppLauncher.ini
OnButtonSave:
	Gui, Submit, NoHide
	IniWrite, %Ed_Folder% , AppLauncher.ini, Settings, FolderToRun
	SoundPlay, *64
	ToolTip, Saved!
	Sleep 1000
	ToolTip
	Return

; При нажатии кнопки с многоточием открываем окно выбора папки
OnButtonFolder:
	FileSelectFolder, OutputVar,, 3
	If (ErrorLevel == 0)
		GuiControl, Text, Ed_Folder, %vOutFolder%
	Return

; При нажатии кнопки Start запускаем папку из указанного расположения
OnButtonRun:
	Gui, Submit
	Run, %Ed_Folder%
	Return
}
else
{
    IniRead, viFolder, AppLauncher.ini, Settings, FolderToRun, %A_Space%
	Run, %viFolder%
	Return
}
garry
Posts: 3795
Joined: 22 Dec 2013, 12:50

Re: Папка выбирается и не сохраняется в настройках  Topic is solved

22 Apr 2023, 11:49

Code: Select all

;- Папка выбирается и не сохраняется в настройках 
;- https://www.autohotkey.com/boards/viewtopic.php?f=47&t=116356

RSSINI=%A_scriptdir%\AppLauncher.ini
ifnotexist,%rssini%
	IniWrite,calc  , %rssini% ,Settings, FolderToRun
IniRead,iFolder, %rssini%,Settings, FolderToRun
	

msgbox, 262147, Список программ, Вы хотите изменить настройки запуска?`nчерез 5 секунд автоматически выбирается "Нет", 5   ;- стартовый MsgBox
;-
IfMsgBox Yes        ; если в стартовом MsgBox выбрано Да
 gosub,CASE1
IfMsgbox Cancel
 exitapp 
if case1<>1
 gosub,CASE2
return 
;-------------------------------------------------
CASE1:
case1=1 
Gui, Add, Text  , XM   Y+M  W60  R1, Папка:
Gui, Add, Edit  , X+10 YP   W180 R1 vEd_Folder,   %iFolder%
Gui, Add, Button, X+0  YP   W20  R1 vBt_Folder gOnButtonFolder, ...
Gui, Add, Button, XM   Y+M W270 R3 vBt_Run  gOnButtonRun , Начать работу
Gui, Add, Button, XM   Y+M W130 R1 vBt_Save gOnButtonSave, Сохранить
Gui, Add, Button, X+10 YP  W130 R1 vBt_Exit gOnButtonExit, Выйти
Gui, Show,, App Launcher
Return
;-----------
; При нажатии Esc, закрытии окна или нажатии кнопки Exit скрипт завершается.
GuiEscape:
GuiClose:
OnButtonExit:
ExitApp
;------------------------------
; При нажатии Save значения из текстовых полей сохраняются в файл настроек AppLauncher.ini
OnButtonSave:
	Gui, Submit, NoHide
	IniWrite, %Ed_Folder% ,%rssini%, Settings, FolderToRun
	SoundPlay, *64
	ToolTip, Saved!
	Sleep 1000
	ToolTip
Return
; При нажатии кнопки с многоточием открываем окно выбора папки
OnButtonFolder:
	FileSelectFolder,Var,3,%a_scriptdir%,
	If (ErrorLevel == 0)
		GuiControl,, Ed_Folder, %var%
	gosub,onbuttonsave	
Return
; При нажатии кнопки Start запускаем папку из указанного расположения
OnButtonRun:
	Gui, Submit,nohide
	try Run, %Ed_Folder%
exitapp	
;====================================================================================	
CASE2:
    IniRead, viFolder,%rssini%, Settings, FolderToRun
	try Run, %viFolder%
exitapp	
;====================================================================================	

Return to “Помощь”

Who is online

Users browsing this forum: No registered users and 13 guests