Имя пользователя:
Пароль:
 

Показать сообщение отдельно

Старожил


Сообщения: 186
Благодарности: 4

Профиль | Отправить PM | Цитировать


А как быть, если я создаю inputbox, в нем по умолчанию язык станет русским. Как поменять на английский?
Если так:

Код: Выделить весь код
_WinAPI_SetKeyboardLayout($hWnd, $Eng) 
inputbox(1,1)
то невозможно правильно указать $hWnd. Если так:
Код: Выделить весь код
inputbox(1,1)
_WinAPI_SetKeyboardLayout($hWnd, $Eng)
то сначала исчезнет инпутбокс...

Попробовал поменять так:

читать дальше »
Код: Выделить весь код
#include <File.au3>
; Декларируем константы
Global $Rus = 0x0419 
Global $Eng = 0x0409 
Global $Chn = 0x0804
Global $InputBoxTitle = "InputBox"

; код файла, который запустим
$Code='#Include <WinAPIEx.au3>' & @CRLF & _
'Global $Rus = 0x0419' & @CRLF & _
'Global $Eng = 0x0409' & @CRLF & _
'Global $Chn = 0x0804 '& @CRLF & _
'Global $InputBoxTitle = "InputBox"'& @CRLF & _
'WinWait ($InputBoxTitle)'& @CRLF & _
'Global $hWnd = WinGetHandle($InputBoxTitle, "")'& @CRLF & _
'$def_lang = _WinAPI_GetKeyboardLayout($hWnd)'& @CRLF & _
'_WinAPI_SetKeyboardLayout($hWnd, $Eng)'
'WinSetTitle($hWnd,"","123321")' ; это чтобы знать, что $hWnd найден верно


$FilePath=@DesktopDir & "\ChangeLang.au3"
_FileCreate( $FilePath) ; создаем файл
FileWrite( $FilePath,$Code) ; пишем туда $code
ShellExecute($FilePath) ; запускаем его, по идее он должен дождаться окна с заголовком "InputBox" и поменять там язык на английский
inputbox($InputBoxTitle,1)
FileDelete ($FilePath) ; удаляем файл

но что-то не меняется, а ошибки не вижу.

Отправлено: 17:54, 08-11-2009 | #5