

Код: Выделить всё
Func _GUICtrlStatusBarSetTextEx($h_StatusBar, $s_Data = "", $i_Part = 0, $iCode = 0)
If Not IsHWnd($h_StatusBar) Then $h_StatusBar = HWnd($h_StatusBar)
If Not _IsClassName ($h_StatusBar, "msctls_statusbar32") Then Return SetError(-1, -1, False)
Local $ret = DllCall("Kernel32.dll", "int", "MultiByteToWideChar", _
"int", $iCode, "int", 0, _
"str", $s_Data, "int", -1, _
"ptr", 0, "int", 0)
If $ret[0]=0 Then Return SetError(-1, -1, 0)
Local $struct_String = DllStructCreate("byte[" & $ret[0]*2+2 & "]")
Local $sBuffer_pointer = DllStructGetPtr($struct_String)
Local $struct_MemMap
Local $Memory_pointer = _MemInit ($h_StatusBar, DllStructGetSize($struct_String), $struct_MemMap)
If @error Then
_MemFree ($struct_MemMap)
Return SetError(-1, -1, 0)
EndIf
$ret = DllCall("Kernel32.dll", "int", "MultiByteToWideChar", _
"int", $iCode, "int", 0, _
"str", $s_Data, "int", -1, _
"ptr", DllStructGetPtr($struct_String), "int", $ret[0])
If $ret[0]=0 Then
_MemFree ($struct_MemMap)
Return SetError(-1, -1, 0)
EndIf
_MemWrite ($struct_MemMap, $sBuffer_pointer)
If @error Then
_MemFree ($struct_MemMap)
Return SetError(-1, -1, 0)
EndIf
$ret = _SendMessage($h_StatusBar, $SB_SETTEXT+10, $i_Part, $Memory_pointer)
If @error Then
_MemFree ($struct_MemMap)
Return SetError(-1, -1, 0)
EndIf
_MemFree ($struct_MemMap)
Return $ret
EndFunc ;==>_GUICtrlStatusBarSetTextEx


Код: Выделить всё
$NotepadTitle = "[CLASS:Notepad]"
Run(@WindowsDir & "\Notepad.exe")
WinWait($NotepadTitle)
ControlSetText($NotepadTitle, "", "Edit1", "Просто текст с - ") ;Задаём текст с "-"
$EditText = ControlGetText($NotepadTitle, "", "Edit1")
Select
Case StringInStr($EditText, "+") And Not StringRegExp($EditText, "-|\?")
Action_Plus()
Case StringInStr($EditText, "-") And Not StringRegExp($EditText, "\+|\?")
Action_Minus()
Case StringInStr($EditText, "?") And Not StringRegExp($EditText, "\-|\+")
Action_Question()
EndSelect
;Просто закроем то что открыли
WinClose($NotepadTitle)
WinWaitClose($NotepadTitle, "", 1)
If WinActive("[CLASS:#32770]", "&") Then ControlClick("[CLASS:#32770]", "&", "Button2")
Func Action_Plus()
;Тут что-то делаем
MsgBox(0, "", "ПЛЮС")
EndFunc
Func Action_Minus()
;Тут делаем что-то другое
MsgBox(0, "", "МИНУС")
EndFunc
Func Action_Question()
;Тут делаем что-то другое
MsgBox(0, "", "ВОПРОС")
EndFunc
Можно конечно замутить аналог AdLib на CallBack, но для этого нужно знать версию AutoIT... а может все-таки "обновить"? 
Код: Выделить всё
send("^a")
Код: Выделить всё
$NotepadTitle = "[CLASS:Notepad]"
Run(@WindowsDir & "\Notepad.exe")
WinWait($NotepadTitle)
ControlSetText($NotepadTitle, "", "Edit1", "+" & @CRLF & "-" & @CRLF & "?")
$EditText = ControlGetText($NotepadTitle, "", "Edit1")
;Разделим весь текст из блокнота по строчкам, и заменим в каждой строчке по надобности
$SplitText = StringSplit($EditText, @CRLF)
$NewText = ""
For $i = 1 To UBound($SplitText)-1
If StringInStr($SplitText[$i], "+") Then
$SplitText[$i] = StringReplace($SplitText[$i], "+", "+ это плюс")
ElseIf StringInStr($SplitText[$i], "-") Then
$SplitText[$i] = StringReplace($SplitText[$i], "-", "- это минус")
ElseIf StringInStr($SplitText[$i], "?") Then
$SplitText[$i] = StringReplace($SplitText[$i], "?", "? это вопрос")
EndIf
$NewText &= $SplitText[$i] & @CRLF
Next
ControlSetText($NotepadTitle, "", "Edit1", $NewText)
MsgBox(0, "", "Сделано!")
;Просто закроем то что открыли
WinClose($NotepadTitle)
WinWaitClose($NotepadTitle, "", 1)
If WinActive("[CLASS:#32770]", "&") Then ControlClick("[CLASS:#32770]", "&", "Button2")
Код: Выделить всё
Func ShockWavePlayer_Installed()
Local $sObjRead = RegRead("HKCR\CLSID\{D27CDB6E-AE6D-11cf-96B8-444553540000}\ProgID", "")
Local $sFlashObj = ObjCreate($sObjRead)
If Not IsObj($sFlashObj) Then Return False
Return True
EndFunc