2 ashu

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

Несмотря на подробные комментарии, дилетанту корректно поправить скрипт довольно трудно. Как пример, кусок кода:

PHP код:
ShowHideKaraoke:
    
IfWinExistahk_class vanBascoPlayerClass
    
{
        If (
KarShow <> 1)
        {
            
WinShowavc_control.ahk
            KarShow 
:= 1
        
}
        
WinGetTitleKarTitleahk_class vanBascoPlayerClass
        
if (karperv <> KarTitle)
        {
            
karprev := KarTitle
            StringReplace
KarTitleKarTitle, %kardel%, , All
            StringReplace
KarTitleKarTitle_, %A_Space%, All
            StringReplace
KarTitleKarTitle, =, `r`nAll
            GuiControl
TextMyRed, %KarTitle%
        }
    }
    Else
    {
        If (
KarShow 1)
        {
            
WinHideavc_control.ahk
            KarShow 
0
        
}
    }
    return 
Вроде, понятно - караоке. Движемся дальше :

PHP код:
StartWinAmp:
    
IfWinNotExist, %karaoke%
    {
        ; 
Не нашли активного karaoke player
        IfWinNotExist, ahk_class Winamp v1.x
        {
            ; Не нашли активного KMPlayer'
а
            
Работаем с WinAmpом запускаем проигрывание музыки
            SendMessage
0x400,, 104,, ahk_class %winampid% ; проверка воспроизведения
            
If ErrorLevel если не воспроизводитсято...
                
PostMessage0x11140045,,, ahk_class %winampid% ; включить воспроизведение
        
}
    } 
Ну, вроде бы выясняем "что это было?!" - караоке ли, просто ли винамп и чего делать дальше...
Однако ж следом безо всякого китайского предупреждения -

PHP код:
наверняка было выключениепоэтому проверяем подключение к Инету
инициируем новый цикл проверки Интернета через 1 секунду
    
If (oncheckonline <> 1)
        
SetTimerCheckInternet, -1000, -1
    Process
ExistCamGrabber.exe
    
If (ErrorLevel != 0)
    {
        
CDSSendMessage("STOP""CamGrabber") ; Пытаемся завершить процесс
        Sleep
10000
    

При чем там интернет, при чем CamGrabber?.. (кстати, у меня нет даже уверенности, что разбиение на смысловые блоки я здесь правильно сделал, не говоря уже о синтаксисе...)

М.б. есть смысл соорудить набор из элементарных скриптов, каждый из которых отвечает за отдельную задачу - тогда и автора не станут теребить каждый раз тюнингом под индивидуальные задачи, да и ламерам в этом вопросе проще будет освоить процесс подгонки?

Впрочем и ликбез в этой теме тоже будет безусловно, полезен многим...