PCCar.ru - Ваш автомобильный компьютер

PCCar.ru - Ваш автомобильный компьютер (http://pccar.ru/index.php)
-   АвтоЗвук (http://pccar.ru/forumdisplay.php?f=16)
-   -   сборка/тема foobar 2000 для CarPС (http://pccar.ru/showthread.php?t=19671)

seriousstas 16.02.2016 20:46

duzzy
Цитата:

Поэтому вопрос тебе как знатоку
Так не углублялся я-ж в эти дебри )) , знаю только то , с чем сталкиваюсь ,
но именно этот вопрос задавал на AHK форуме , там даже разрабы подключились... Вся проблема в том , что фокус наводится по классу имени окна , а класс окна можно брать только если навели фокус (а наводить уже некуда , если он поменялся) .. Замкнутый круг.

seriousstas 16.02.2016 20:52

Цитата:

Сообщение от duzzy (Сообщение 351887)
Нашел интересный сайт , думаю тебе тоже понравится.

Ага , что-то можно и в быту применить ..

duzzy 16.02.2016 21:50

Цитата:

Сообщение от seriousstas (Сообщение 351891)
duzzy

Так не углублялся я-ж в эти дебри )) , знаю только то , с чем сталкиваюсь ,
но именно этот вопрос задавал на AHK форуме , там даже разрабы подключились... Вся проблема в том , что фокус наводится по классу имени окна , а класс окна можно брать только если навели фокус (а наводить уже некуда , если он поменялся) .. Замкнутый круг.

))):)
Не смотри я наверно не так объяснил, я имел ввиду простое чтение класса окна из файла допустим settings.ini.
Т.е. вот
ControlFocus, uie_wsh_panel_mod_class6, ahk_class {E7076D1C-A7BF-4f39-B771-BCBE88F2A2A8}

считывание uie_wsh_panel_mod_class6 из файла settings.ini

например в settings.ini просто ручками писать...

[click_class]
click_class = uie_wsh_panel_mod_class6

а скрипт просто будет считывать этот параметр и все... и отпадает нужда в компиляции:smile2:

---------------------------
Я у тебя подсмотрел в скрипте space.ahk ты там параметры считывал из *.ini , вот и подумал а почему нет.;)

seriousstas 16.02.2016 22:17

Цитата:

и отпадает нужда в компиляции
Понял , надо подумать , хотя , если рука набита , то делов одна -две минуты :)
и не нужно каждый раз в ини лазать скрипту при запуске .

А ту тему я завел на форуме , что-б была возможность менять имя окна , если его меняет другая операционка ,но простого решения не нашлось ..

duzzy 16.02.2016 22:24

Цитата:

Сообщение от seriousstas (Сообщение 351898)
Понял , надо подумать , хотя , если рука набита , то делов одна -две минуты :)
и не нужно каждый раз в ини лазать .

А ту тему я завел на форуме , что-б была возможность менять имя окна , если его меняет другая операционка ,но простого решения не нашлось ..

Это то да, но мне кажется проще в ини одну цифру поменять:smile2:

Я уже сделал вроде)))... сейчас надо проверить еще))):big:

Решение да почитал геморойное)))... можно попробовать как zeremy делал у себя в сборке через

IniWrite, %foobar2000_ID%, settings.ini, foobar2000, HWID
WinGetClass, foobar2000_class, ahk_id %foobar2000_ID%
IniWrite, %foobar2000_class%, settings.ini, foobar2000, class

но тут другая проблема, нужно как то смотреть в каждую панель и брать из них данные вот это уже полная хрень получается:big:

---------------------------------

Вот простое решение без перекомпиляции на примере клика по плейлисту...

Код:

#NoTrayIcon
#SingleInstance ignore
SetControlDelay, 0
SetWorkingDir %A_ScriptDir%
IniRead, OutputVar, %A_ScriptDir%\settings.ini, playlist_class, playlist_class
ControlClick,%OutputVar%,ahk_class {E7076D1C-A7BF-4f39-B771-BCBE88F2A2A8},,
ExitApp

то что прописываем в ини файле ручками для того чтоб скрипт это прочитал...

[playlist_class]
playlist_class=uie_wsh_panel_mod_class5

:smile2:

seriousstas 17.02.2016 16:05

Цитата:

Вот простое решение без перекомпиляции на примере клика по плейлисту...
Да можно и так . Но фубар у нас итак "трудяга" . Думаю пока ему лишний раз к винту обращаться незачем :)
Фубар ведь сейчас сформирован по панелям . (следующая) Перекомпиляция будет , когда на JS панель перелазить будем .

sirota 17.02.2016 17:20

Перевелся на 10-ку....сборка работает без замечаний.

Помните были щелчки...и на 8.1 и на 10-ке....так вот...на десятке отключил оптику в винде и щелчки исчезли совсем...хотя на вынь 8.1 такой фокус не прокатывал.

duzzy 17.02.2016 17:38

Цитата:

Сообщение от seriousstas (Сообщение 351966)
Да можно и так . Но фубар у нас итак "трудяга" . Думаю пока ему лишний раз к винту обращаться незачем :)
Фубар ведь сейчас сформирован по панелям . (следующая) Перекомпиляция будет , когда на JS панель перелазить будем .

:) трудяга еще какой...
Ну не знаю это же просто чтение один раз за запуск:smile2:, я переделал... захотел поменять панели местами класс сменился и нужно опять компилить))) а тут просто одну цифру нужно поменять.

Я пока повременю с переходом на JS:big:, помнишь я писал что прокрутка в плейлисте странно работает на JS, оказалось что есть косяк... Марк уже фикс выпустил на JS... думаю что он что то лишнего убрал когда чистил код от WSH Панели)))

Вчера еще пробовал таймер в Ctrl переделать так и не понял как сделать, хотел так же сделать чтоб таймер из settings.ini читал цифру задержки которую я МПС-ом в settings.ini буду писать... но не вышло.
Непонятно почему но %Outputvar% SetTimer не принимает.

в таком виде...
...
SetWorkingDir %A_ScriptDir%
IniRead, OutputVar, %A_ScriptDir%\settings.ini, ctrl_timer, ctrl_timer
TimeWait := %OutputVar%
WinExist("ahk_exe foobar2000.exe")
Send {Ctrl Down}
SetTimer keyUp,-%TimeWait%
...
выдает ошибку или вообще не работает.

seriousstas 17.02.2016 19:36

Цитата:

Сообщение от 120705 (Сообщение 351993)
Огромное СПАСИБО :laugh2::yes4::pleasantry:

не за что :)

seriousstas 17.02.2016 19:39

duzzy
Цитата:

выдает ошибку или вообще не работает
Попробуй без лишней переменной :
Код:

SetWorkingDir %A_ScriptDir%
IniRead, TimeWait, %A_ScriptDir%\settings.ini, ctrl_timer, TimeWait
WinExist("ahk_exe foobar2000.exe")
Send {Ctrl Down}
SetTimer keyUp,-%TimeWait%
WinWaitClose
keyUp:
Send {Ctrl Up}
ExitApp

а это в ini :
Код:

[ctrl_timer]
TimeWait=15000

ну и не забудь settings.ini рядом со скриптом положить .

sirota
Цитата:

Перевелся на 10-ку....сборка работает без замечаний.
отлично ! :)


Часовой пояс GMT +4, время: 22:02.

Работает на vBulletin® версия 3.8.4.
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Перевод: zCarot