Что нового

[Данные, строки] iniRead не считывает данные при вызове из функции

firstoxe

Новичок
Сообщения
14
Репутация
0
Код:
iniRead

Сразу пример:
1: Отдельно запускаю этот скрипт. Всё считывает и показывает.
Код:
$load_pixel_config = @ScriptDir & "\Config\ScreenSize\1920x1080.ini"
Local $qq[47]
For $mm=1 to 46 Step 1
$qq[$mm-1] = IniRead($load_pixel_config,"set",$mm-1,"")
MsgBox("","",$qq[$mm-1])
Next

2: Аналогичен первому, только вызывается как функция из другого скрипта. Результат: ничего не считывается.Всегда ставит значение default
Почему?
 

Kasper

Знающий
Сообщения
70
Репутация
8
Re: [Данные, строки] iniRead отказывается работать

Возможно вы не правильно возвращаете значение с функции
 
Автор
F

firstoxe

Новичок
Сообщения
14
Репутация
0
Re: [Данные, строки] iniRead отказывается работать

Kasper сказал(а):
Возможно вы не правильно возвращаете значение с функции
Возврат значений не используется. Внутри функции помещаю
Код:
MsgBox

во время цикла.
Результат = пустота
 

InnI

AutoIT Гуру
Сообщения
4,922
Репутация
1,432
Re: [Данные, строки] iniRead отказывается работать

firstoxe
как функция из другого скрипта
А тот скрипт, случайно, не в другой папке лежит?
Проверьте наличие файла из той функции
Код:
MsgBox("", "", FileExists(@ScriptDir & "\Config\ScreenSize\1920x1080.ini"))
 
Автор
F

firstoxe

Новичок
Сообщения
14
Репутация
0
Re: [Данные, строки] iniRead отказывается работать

InnI сказал(а):
firstoxe
как функция из другого скрипта
А тот скрипт, случайно, не в другой папке лежит?
Проверьте наличие файла из той функции
Код:
MsgBox("", "", FileExists(@ScriptDir & "\Config\ScreenSize\1920x1080.ini"))
нет, всё в одной папке

То бишь:
Код:
$load_pixel_config = @ScriptDir & "\Config\ScreenSize\1920x1080.ini"
Local $qq[47]
For $mm=1 to 46 Step 1
$qq[$mm-1] = IniRead($load_pixel_config,"set",$mm-1,"")
MsgBox("","",$qq[$mm-1])
Next

так работает

а так нет:
1 файл содержит
Код:
#include <2.au3>
_start_script(@ScriptDir & "\Config\ScreenSize\" & $sizee & ".ini")

2:
Код:
Func _start_script($size_ecran)
For $mm=1 to 46 Step 1
$qq[$mm-1] = IniRead($size_ecran,"qq",$mm-1,"")
msgbox("","",$qq[$mm-1])
Next
WEnd

EndFunc

То есть при таком использовании, он не считывает данные из ini
 

InnI

AutoIT Гуру
Сообщения
4,922
Репутация
1,432
Re: [Данные, строки] iniRead отказывается работать

Другими словами, в "2.au3" у вас находится функция _start_script(), а запускаете вы "1.au3" с прописанным #include.
А откуда вы берёте $sizee для передачи в функцию?

И ещё раз повторю: добавьте в функцию проверку на существование ini-файла. Пригодится.
 

Yashied

Модератор
Команда форума
Глобальный модератор
Сообщения
5,379
Репутация
2,724
Re: [Данные, строки] iniRead отказывается работать

Какого !@#$% мы тут должны угадывать что и где у вас там не так. Выкладывайте два рабочих (!) скрипта или я закрою тему. Кстати

Предупреждение За нарушение правил форума (пункт Б.5):
Имя темы должно нести смысловую нагрузку (отражать суть вопроса/проблемы)
Правильно сформулированное название темы привлекает больше внимания, и шансы получить конкретный ответ увеличиваются.


Данные правила могут пополняться локальными правилами раздела.
Как правильно называть темы

"[Данные, строки] iniRead отказывается работать" - это неприемлемое название темы, переименуйте тему иначе она будет закрыта, а вам возможно будет выдан бан на несколько дней.

С уважением, ваш Модератор.
 
Автор
F

firstoxe

Новичок
Сообщения
14
Репутация
0
вот: 2 кода
1:
Код:
#include <ButtonConstants.au3>
#include <ComboConstants.au3>
#include <EditConstants.au3>
#include <GUIConstantsEx.au3>
#include <ProgressConstants.au3>
#include <WindowsConstants.au3>
#include <GuiComboBox.au3>

#include <array.au3>
#include <file.au3>
#include <FileOperations.au3>
#include <MsgBoxConstants.au3>

#include <body.au3>
;~ #include <foot.au3>
#Region ### START Koda GUI section ### Form=C:\Users\oO\Desktop\autoit coda\Forms\Head.kxf
$Form1 = GUICreate("1", 419, 170, 784, 262)
$Group1 = GUICtrlCreateGroup("", 0, 0, 193, 41)
$Combo1 = GUICtrlCreateCombo("", 8, 16, 177, 25, BitOR($CBS_DROPDOWN,$CBS_AUTOHSCROLL))
GUICtrlCreateGroup("", -99, -99, 1, 1)
$Group2 = GUICtrlCreateGroup("Управление", 0, 40, 193, 129)
$Button1 = GUICtrlCreateButton("Старт", 8, 56, 75, 25)
$Button2 = GUICtrlCreateButton("Пауза", 104, 56, 75, 25)
$Button3 = GUICtrlCreateButton("Стоп", 8, 88, 75, 25)
$Button4 = GUICtrlCreateButton("Выход", 104, 88, 75, 25)
$Group3 = GUICtrlCreateGroup("Прогресс: ", 8, 120, 177, 41)
$Progress1 = GUICtrlCreateProgress(16, 136, 158, 17)
GUICtrlCreateGroup("", -99, -99, 1, 1)
GUICtrlCreateGroup("", -99, -99, 1, 1)
$Group4 = GUICtrlCreateGroup("Статистика:", 192, 0, 225, 169)
Global $Edit1 = GUICtrlCreateEdit("", 201, 17, 209, 145)
GUICtrlSetData(-1, "Edit1")
GUICtrlCreateGroup("", -99, -99, 1, 1)
GUISetState(@SW_SHOW)
#EndRegion ### END Koda GUI section ###

GUICtrlSetData($Group1,"Ваш: " & @DesktopWidth & "x" & @DesktopHeight)

$sPath = @ScriptDir & "\Config\ScreenSize"
$sFileList = _FO_FileSearch($sPath, '*.ini', True, 0, 3, 1)



$zapcombo =""
For $i=1 to $sFileList[0] Step 1
$zapcombo = $zapcombo & $sFileList[$i] & "|"
Next
GUICtrlSetData($Combo1,$zapcombo)
;~ _GUICtrlComboBoxEx_SetCurSel()
While 1
	$nMsg = GUIGetMsg()
	Switch $nMsg
		Case $GUI_EVENT_CLOSE
			Exit
		Case $Button1
			$sizee = GUICtrlRead($Combo1)
			_start_script(@ScriptDir & "\Config\ScreenSize\" & $sizee & ".ini")
		Case $Button4
			Exit
		Case $Button2
			_Update_statistic(1,1,1,1,1,1,1)
		Case $Combo1
			$sComboRead = GUICtrlRead($Combo1)
	EndSwitch
WEnd

Func _Update_statistic($kubit,$kubit_nada,$quark,$quark_nada,$vremarabot,$popitok,$neudach)
	GUICtrlSetData($Edit1,"Завершение работы скрипта: " & @HOUR & ":" & @MIN & ":" & @SEC & "   " & @MDAY & ":" & @MON & ":" & @YEAR)
	GUICtrlSetData($Edit1,@CRLF, 1)
	GUICtrlSetData($Edit1,"Потрачено кубита: " & $Kubit & " из: " & $Kubit_nada, 1)
	GUICtrlSetData($Edit1,@CRLF, 1)
	GUICtrlSetData($Edit1,"Нужно было кварка: " & $quark_nada & " получили: " & $quark, 1)
	GUICtrlSetData($Edit1,@CRLF, 1)
	GUICtrlSetData($Edit1,"Всего попыток: " & $popitok & " из них успешных: " & $popitok - $neudach, 1)
	GUICtrlSetData($Edit1,@CRLF, 1)
	GUICtrlSetData($Edit1,$vremaraboti, 1)
EndFunc


вот 2:
Код:
Global $hwnd  ; дескриптор окна
Global $quark[46] ; массив кварков
Global $waitime = 0
Global $VarCheckPix
Global $popitki = 0
Global $neudachi = 0
Global $vremaraboti = 0
Global $Active_Charge_quark = 2608990427 ; хеш активной части вкладки зарядки тел энерг
Global $Kubit_Decrase = 0 ; Сколько потратили кубита
Global $Kubit_Max = 0 ;Сколько можно тратить
Global $quark_need = 0 ;Сколько надо кварка
Global $quark_have = 0 ;Сколько получили кварка
Global $VIP_have = 0 ;Уровень випа
Global $hash_Ugol_knopli_Lepton = 775604326 ; хэш код кнопки нахождения кнопки лептон
Global $hash_knopka_sobrat = 186153415 ; хэш код кнопки нахождения кнопки собрать
Global $hash_Ugol_knopli_Sobrat = 350136515
Global $quark_see ; число кварка с воронок
Global $min_sbor_qvark1 = 12 ; если удалось определить, что 1 воронка
Global $min_sbor_qvark2 = 25 ; если удалось определить, что 2 воронки
Global $min_sbor_qvark3 = 37 ; если удалось определить, что 3 воронки
Global $etap_chek_kvark = 0 ; количество воронок: -1 =0; 0=1; 1=2; 2=3
Global $bag_skripta_hash = 3900199012
Global $vrema_zapuska
;~ Global $razreshenie_ekrana

Func _start_script($size_ecran)

For $mm=1 to 46 Step 1
$quark[$mm-1] = IniRead($size_ecran,"quark",$mm-1,"")
Next
$vrema_zapuska = @HOUR & "." & @MIN & "." & @SEC & " - " & @MDAY & "." & @MON & "." & @YEAR
$waitime = 0
IF WinExists("BlueStacks App Player")=1 THEN
	$hwnd = WinGetHandle("BlueStacks App Player")
	WinMove($hwnd,"",0,0)
	Opt("PixelCoordMode", 2)
Else
	_Exit()
EndIf
_Resource_quark_need() ;спрашиваем сколько кварка надо?
_Resource_kubit_max()  ;спрашиваем сколько тратить кубита
_Switch_Vip() ;узнает уровень випа
_inicializacia_hasha()

While 1
If ($quark_need > $quark_have) And ($Kubit_Decrase < $Kubit_Max) Then
_Start_script_farm_quark()
Else
 _Write_file("Предел достигнут")
 ExitLoop
EndIf
WEnd

EndFunc
Func _Start_script_farm_quark()
	ControlClick ($hwnd, "", "", "left", 1, 244, 58) ;активация вкладки зарядки
	Sleep(200)
	$vremaraboti += 200
	$waitime = 0
	While _Proverka_hasha(212,54,280,67,$Active_Charge_quark,"активация вкладки тел. энергия") = 0
		_pause()
	WEnd

	$waitime = 0
	While _Proverka_hasha(308,484,344,512,$hash_Ugol_knopli_Lepton,"кнопка лептон") = 0
		_pause()
	WEnd
$waitime = 0
	ControlClick ($hwnd, "", "", "left", 1, 403, 521) ;кнопка Лептон
	$Kubit_Decrase = $Kubit_Decrase + 20000 - (2000 * $VIP_have)
	Sleep(1100)
	$vremaraboti += 1100

	WinActivate($hwnd)
	Sleep(100)
	$vremaraboti += 100
	$VarCheckPix = PixelChecksum(485,512,529,535,1,$hwnd,0) ;снимаем хэш кварков
	_chek_kvark1() ; чекаем хэщ кварков
	$sobrat_kvark = 0

	if $quark_see = 0 Then ;если кварк равен 0 то собираем
		_sbor_kvarka() ; если 0, то собираем, елси нет, идём дальше по функциям
		$sobrat_kvark = 1
	EndIf

	While $sobrat_kvark = 0
		If $etap_chek_kvark = 0 Then
			If $min_sbor_qvark1 > $quark_see Then
				_zaradka_vorot()
				$sobrat_kvark = 0
			Else
				_sbor_kvarka()
				$sobrat_kvark = 1
			EndIf
		EndIf
		If $etap_chek_kvark = 1 Then
			If $min_sbor_qvark2 > $quark_see Then
				_zaradka_vorot()
				$sobrat_kvark = 0
			Else
				_sbor_kvarka()
				$sobrat_kvark = 1
			EndIf
		EndIf
		If $etap_chek_kvark = 2 Then
			If $min_sbor_qvark3 > $quark_see Then
				_zaradka_vorot()
				$sobrat_kvark = 0
			Else
				_sbor_kvarka()
				$sobrat_kvark = 1
			EndIf
		EndIf
		if $etap_chek_kvark = -1 Then
			_sbor_kvarka()
		EndIf
	WEnd
EndFunc

Func _Write_file($nada_zapisat)
	$hFile = FileOpen(@ScriptDir & "\logs\" & $vrema_zapuska & ".txt", 1)
	If $hFile = -1 Then
		MsgBox(4096, "Ошибка", "Невозможно открыть файл.")
		Exit
	EndIf
	FileWriteLine($hFile, $nada_zapisat)
	FileClose($hFile)
EndFunc

Func _Exit()
	_Write_file("Завершение работы скрипта: " & @HOUR & ":" & @MIN & ":" & @SEC & "   " & @MDAY & ":" & @MON & ":" & @YEAR)
	_Write_file("Потрачено кубита: " & $Kubit_Decrase & " из: " & $Kubit_Max)
	_Write_file("Нужно было кварка: " & $quark_need & " получили: " & $quark_have)
	_Write_file("Всего попыток: " & $popitki & " из них успешных: " & $popitki - $neudachi)
	_Write_file($vremaraboti)
	Exit
EndFunc

Func _Switch_Vip()
	if MsgBox(4+32+256,"Уровень VIP","Есть VIP7?")=6 Then
		$VIP_have = 2
	ElseIf MsgBox(4+32+256,"Уровень VIP","Есть VIP3?")=6 Then
		$VIP_have = 1
	Else
		$VIP_have = 0
   _write_file("Уровень випа установлен:" & $Vip_have)
	EndIf
EndFunc

Func _Resource_quark_need()
Local $sPattern = '[^\d]'
$quark_need = InputBox("Кварк","Сколько надо кварка?(пример: 2000), 0 или Отмена - сколько получится",0," M")
if StringRegExp($quark_need, $sPattern) = 1 Then
	_Resource_quark_need()
	Return
ElseIf $quark_need = 0 Then
$quark_need = 999999999
EndIf
if $quark_need = 999999999 Then
    _write_file("Нужно собрать кварка:" & "сколько получится")
 Else
	_write_file("Нужно собрать кварка:" & $quark_need)
EndIf
EndFunc

Func _Resource_kubit_max()
Local $sPattern = '[^\d]'
$Kubit_Max = InputBox("Кубиты","Сколько тратим кубитов?(пример: 5000000), 0 или Отмена - на всё что есть!",0," M")
if StringRegExp($Kubit_Max, $sPattern) = 1 Then
	_Resource_kubit_max()
	Return
ElseIf $Kubit_Max = 0 Then
$Kubit_Max = 999999999
EndIf
if $quark_need = 999999999 Then
    _write_file("Нужно собрать кубита:" & "сколько получится")
 Else
	_write_file("Нужно собрать кубита:" & $Kubit_Max)
EndIf
EndFunc

Func _Pause()
	Sleep(2000)
	$waitime += 2
	TrayTip("Произошла ошибка!","Время ожидания: "& $waitime & " секунд(ы)",1000,3)
	if $waitime > 60 Then
		MsgBox("","Ошибка скрипта","Скрипт остановлен!")
		_Exit()
	EndIf
EndFunc

Func _chek_kvark1()
Local $ii=0

$quark_see = 99

While $ii <> 46 ; узнаем хэш
	if $quark[$ii] = $VarCheckPix Then
		$quark_see = $ii
	EndIf
	$ii += 1
WEnd
_Write_file("1 этап проверки кварка. Обнаружено кварка:" & $quark_see)
if $ii = 46 and $quark_see = 99 Then
	$waitime = 0
	_Write_file("1 этап проверки кварка. Обнаружено кварка:" & $quark_see)
	While $quark_see = 99
		_chek_kvark2()
	WEnd
EndIf
_Proverka_kol_voronok()
EndFunc

Func _chek_kvark2()
Local $ii=0
_Pause()
WinActivate($hwnd)
Sleep(100)
$vremaraboti += 100
$VarCheckPix = PixelChecksum(485,512,529,535,1,$hwnd,0) ;снимаем хэш кварков
While $ii <> 46 ; узнаем хэш
	if $quark[$ii] = $VarCheckPix Then
		$quark_see = $ii
	EndIf
	$ii += 1
WEnd
If $quark_see = 99 Then
	If $VarCheckPix = $bag_skripta_hash Then
		ControlClick ($hwnd, "", "", "left", 1, 403, 521) ;кнопка Лептон
		$Kubit_Decrase = $Kubit_Decrase + 20000 - (2000 * $VIP_have)
		Sleep(1100)
		$vremaraboti += 1100
		_chek_kvark1()
	else

	_Write_file("2 этап проверки кварка не прошёл")
	MsgBox("","Ошибка","Не найден хэш кварка - " & $VarCheckPix)
	_exit()
	EndIf
EndIf
_Proverka_kol_voronok()
EndFunc

Func _Proverka_hasha($xx1,$yy1,$xx2,$yy2,$hashneed,$zapis_v_file)
	Local $hashpix
	WinActivate($hwnd)
	Sleep(100)
	$vremaraboti += 100
	$hashpix = PixelChecksum($xx1,$yy1,$xx2,$yy2,1,$hwnd,0) ;Если всё хорошо, то выходим из функции
;~ MsgBox("",$hashpix,$hashneed)
	If 	$hashpix = $hashneed Then
	Return 1
	_Write_file($zapis_v_file & " координаты: X1=" & $xx1 & " Y1=" & $yy1 & " X2=" & $xx2 & " Y2=" & $yy2 & " - Успешно!")
	Else
	Return 0
	_Write_file($zapis_v_file & ". Снятый хэш:" & $hashpix & ". Нужный хэш:" & $hashneed & " Ошибка!!!")
	EndIf
EndFunc

Func _inicializacia_hasha()
;~ MsgBox("","",$load_pixel_config)
;~ $a=IniReadSection(@ScriptDir & "\Config\ScreenSize\" & @DesktopWidth & "x" & @DesktopHeight & ".ini","quark")
;~ MsgBox("","",$a[0][1])

;~ MsgBox("","",$quark[0])
;~ MsgBox("","",$quark[1])
;#################################################################################################################################################################################
; old
;~ $quark[0]="1746408090"
;~ $quark[1]="3517969084"
;~ $quark[2]="1614942599"             ;не заметил появление с одной воронкой
;~ $quark[3]="2437614790"
;~ $quark[4]="1292373996"
;~ $quark[5]="1188958984"				;не заметил появление с одной воронкой только 3 воронки
;~ $quark[6]="2359367429"
;~ $quark[7]="2409298619"
;~ $quark[8]="2099452411"				;не заметил появление с одной воронкой
;~ $quark[9]="1042683762"
;~ $quark[10]="2795775375"
;~ $quark[11]="434315984"				;не заметил появление с одной воронкой
;~ $quark[12]="1771975226"
;~ $quark[13]="2662017358"
;~ $quark[14]="761080970"				;не заметил появление с одной воронкой
;~ $quark[15]="3255448453"
;~ $quark[16]="2534618144"
;~ $quark[17]="3436126648"
;~ $quark[18]="3704697679"
;~ $quark[19]="718548773"
;~ $quark[20]="892814411"
;~ $quark[21]="2825339276"
;~ $quark[22]="4162998518"
;~ $quark[23]="759056394"
;~ $quark[24]="3152104262"
;~ $quark[25]="1352487489"
;~ $quark[26]="631657180"
;~ $quark[27]="1533165684"
;~ $quark[28]="1801736715"
;~ $quark[29]="3109572065"
;~ $quark[30]="1715486602"
;~ $quark[31]="3648011467"
;~ $quark[32]="691686453"
;~ $quark[33]="1581728585"
;~ $quark[34]="3974776453"
;~ $quark[35]="2175159680"
;~ $quark[36]="1454329371"
;~ $quark[37]="2355837875"
;~ $quark[38]="2624408906"
;~ $quark[39]="3932244256"
;~ $quark[40]="2414362355"
;~ $quark[41]="3731570131"
;~ $quark[42]="2401584941"
;~ $quark[43]="183647370"
;~ $quark[44]=""; выпадение не возможно
;~ $quark[45]="" ;хуй выбьешь
;максимальный скачёк с одной воронкой =8
;#################################################################################################################################################################################
EndFunc

Func _sbor_kvarka()
	$waitime = 0
	While _Proverka_hasha(564,524,595,548,$hash_Ugol_knopli_Sobrat,"кнопка собрать") = 0
		_pause()
	WEnd
	ControlClick ($hwnd, "", "", "left", 1, 477, 511) ;Собрать
	Sleep(4200)
	$vremaraboti += 4200
	_Write_file("Кварк собран! Кол-во воронок: " & $etap_chek_kvark +1 & " кварка: " & $quark_see)
   If $quark_see > 0 Then
	 $popitki += 1
	 $quark_have += $quark_see
  Else
	 $popitki += 1
     $neudachi += 1
  EndIf
EndFunc

Func _zaradka_vorot()
	$waitime = 0
	While _Proverka_hasha(564,524,595,548,$hash_Ugol_knopli_Sobrat,"кнопка собрать для зарядки") = 0
		_pause()
	WEnd
	ControlClick ($hwnd, "", "", "left", 1, 834, 334) ;зарядить
	$Kubit_Decrase = $Kubit_Decrase + 2000 - (200 * $VIP_have)
	Sleep(900)
	$vremaraboti += 900
	WinActivate($hwnd)
	Sleep(100)
	$vremaraboti += 100
	$VarCheckPix = PixelChecksum(485,512,529,535,1,$hwnd,0) ;снимаем хэш кварков
	_chek_kvark1()
EndFunc

Func _Proverka_kol_voronok()
If $quark_see = 1 Then
	$etap_chek_kvark = 0
EndIf
If ($quark_see > 30 or $quark_see = 29) And $etap_chek_kvark < 2 Then
	$etap_chek_kvark = 2
EndIf
If ($quark_see = 2 or $quark_see = 5 or $quark_see = 8 or $quark_see = 11 or $quark_see = 14 or $quark_see > 15) And $etap_chek_kvark < 1 Then
	$etap_chek_kvark = 1
EndIf
If $quark_see < 16 And $etap_chek_kvark = -1 Then
	$etap_chek_kvark = 0
EndIf
If $quark_see = 0 Then
	$etap_chek_kvark = -1
EndIf
_Write_file("чек:" & $etap_chek_kvark)
EndFunc


При запуске, в комбобоксе выбираю конфиг с расширением экрана, считываю данные и заполняю массив.
Ну и раз на то пошло...
Код:
_GUICtrlComboBoxEx_SetCurSel
используя здесь же эту функцию, ругается, что данной функции не существует.

вот содержание ини файла 1920x1080.ini
Код:
[quark]
0=1746408090
1=3517969084
2=1614942599           
3=2437614790
4=1292373996
5=1188958984				
6=2359367429
7=2409298619
8=2099452411		
9=1042683762
10=2795775375
11=434315984		
12=1771975226
13=2662017358
14=761080970			
15=3255448453
16=2534618144
17=3436126648
18=3704697679
19=718548773
20=892814411
21=2825339276
22=4162998518
23=759056394
24=3152104262
25=1352487489
26=631657180
27=1533165684
28=1801736715
29=3109572065
30=1715486602
31=3648011467
32=691686453
33=1581728585
34=3974776453
35=2175159680
36=1454329371
37=2355837875
38=2624408906
39=3932244256
40=2414362355
41=3731570131
42=2401584941
43=183647370
44=0
45=0


Добавлено:
Сообщение автоматически объединено:

InnI сказал(а):
firstoxe
как функция из другого скрипта
А тот скрипт, случайно, не в другой папке лежит?
Проверьте наличие файла из той функции
Код:
MsgBox("", "", FileExists(@ScriptDir & "\Config\ScreenSize\1920x1080.ini"))
и всё же проверил, файл находит. А работать нет
 

uritalex

Новичок
Сообщения
197
Репутация
3
А теперь проверьте так:
Код:
$sizee = 1920x1080
MsgBox("", "", FileExists(@ScriptDir & "\Config\ScreenSize\" & $sizee & ".ini"))

И я б заменил названия файла с 1920x1080 на 1920_1080
 

CreatoR

Must AutoIt!
Команда форума
Администратор
Сообщения
8,671
Репутация
2,481
firstoxe
Что возвращает GUICtrlRead($Combo1)?
В списке Combo у вас имя файла с расширением, или без? Подозреваю что с расширением, отсюда и проблема.

[?]
ругается, что данной функции не существует.
Нужно подключать #include <GUIComboBoxEx.au3>.
 
Автор
F

firstoxe

Новичок
Сообщения
14
Репутация
0
uritalex сказал(а):
А теперь проверьте так:
Код:
$sizee = 1920x1080
MsgBox("", "", FileExists(@ScriptDir & "\Config\ScreenSize\" & $sizee & ".ini"))

И я б заменил названия файла с 1920x1080 на 1920_1080
во первых:
Код:
$sizee = "1920x1080"

во вторых помогло. Но не вижу разницы.. я комбобокс заполняю именами файлов, которые найдены в
Код:
@ScriptDir & "\Config\ScreenSize\



Добавлено:
Сообщение автоматически объединено:

Код:
(@ScriptDir & "\Config\ScreenSize\1920x1080.ini")

равносильно
Код:
$sizee = GUICtrlRead($Combo1)
			_start_script(@ScriptDir & "\Config\ScreenSize\" & $sizee & ".ini")



Добавлено:
Сообщение автоматически объединено:

CreatoR сказал(а):
firstoxe
Что возвращает GUICtrlRead($Combo1)?
В списке Combo у вас имя файла с расширением, или без? Подозреваю что с расширением, отсюда и проблема.

[?]
ругается, что данной функции не существует.
Нужно подключать #include <GUIComboBoxEx.au3>.
оно возвращает 1920x1080
и расширение файла я дописываю
file search ищет все файлы с расширением ini и записывает в переменную только имя файла. После по этой переменной заполняется combobox
 

uritalex

Новичок
Сообщения
197
Репутация
3
Пока писал уже появился ответ :smile: Ладно если попробовать записать
Код:
_start_script(@ScriptDir & "\Config\ScreenSize\" & $sizee & ".ini")
таким образом :
Код:
$DirFile = @ScriptDir & "\Config\ScreenSize\"
_start_script($DirFile & $sizee & ".ini")

То что получаете переменной $sizee проверьте через ConsoleWrite для подстраховки
Что всунуто сюда: _FO_FileSearc ??? где эта функция
 
Автор
F

firstoxe

Новичок
Сообщения
14
Репутация
0
uritalex сказал(а):
Пока писал уже появился ответ :smile: Ладно если попробовать записать
Код:
_start_script(@ScriptDir & "\Config\ScreenSize\" & $sizee & ".ini")
таким образом :
Код:
$DirFile = @ScriptDir & "\Config\ScreenSize\"
_start_script($DirFile & $sizee & ".ini")

То что получаете переменной $sizee проверьте через ConsoleWrite для подстраховки
В этом нет смысла. Весь прикол в
Код:
$sizee = GUICtrlRead($Combo1)

то есть $sizee не равен почему то 1920x1080, хотя они оба имеют значение 1920x1080
 

Вложения

  • FileOperations.au3
    48.5 КБ · Просмотры: 3

uritalex

Новичок
Сообщения
197
Репутация
3
Покажите что даст
Код:
$sizee = GUICtrlRead($Combo1)
ConsoleWrite("Мой любимый размер: " & $sizee & @CRLF)
            _start_script(@ScriptDir & "\Config\ScreenSize\" & $sizee & ".ini")

А по чему не использовать
Код:
_FileListToArray(@ScriptDir & "\Config\ScreenSize\", '*.ini', 1)
Для обработки списка файлов?
 
Автор
F

firstoxe

Новичок
Сообщения
14
Репутация
0
uritalex сказал(а):
Покажите что даст
Код:
$sizee = GUICtrlRead($Combo1)
ConsoleWrite("Мой любимый размер: " & $sizee & @CRLF)
            _start_script(@ScriptDir & "\Config\ScreenSize\" & $sizee & ".ini")

А по чему не использовать
Код:
_FileListToArray(@ScriptDir & "\Config\ScreenSize\", '*.ini', 1)
Для обработки списка файлов?

Код:
Мой любимый размер: 
1920x1080

а
Код:
_FileListToArray(@ScriptDir & "\Config\ScreenSize\", '*.ini', 1)
выдает пустоту, да и разница?
 

uritalex

Новичок
Сообщения
197
Репутация
3
Все же попробуйте так:
Код:
$sizee = GUICtrlRead($Combo1)
$DirFile = @ScriptDir & "\Config\ScreenSize\" & $sizee
_start_script($DirFile & ".ini")
 

uritalex

Новичок
Сообщения
197
Репутация
3
Как вариант можно посмотреть отработает ли такое:
Код:
_start_script(@ScriptDir & "\Config\ScreenSize\1920x1080.ini")
 
Автор
F

firstoxe

Новичок
Сообщения
14
Репутация
0
uritalex сказал(а):
Как вариант можно посмотреть отработает ли такое:
Код:
_start_script(@ScriptDir & "\Config\ScreenSize\1920x1080.ini")
Да, такое отработает, писал же выше, данные взятые из комбобокса почему то не равны данным зенесенными руками
 

uritalex

Новичок
Сообщения
197
Репутация
3
символ "х" в какой раскладке руками набирали? попробуйте его заменить на что то более универсальное на "_"
Это последнее что может на ум мне прийти :(
 
Верх