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

  #7  
Старый 18.12.2008, 18:21
Silvester
Новичок
Регистрация: 17.12.2008
Сообщений: 5
Провел на форуме:
12805

Репутация: 0
По умолчанию

Цитата:
Сообщение от neprovad  
Приведите очередность действий от и до. В духе - Открыли конфигуратор-Новая конфигурация-...
1. Открыли конфигуратор, меню "Конфигурация" - "Открыть конфигурацию".
2. Команда контекстного меню корневого объекта метаданных в дереве - "Открыть модуль приложения".

Собственно, и всё. Открывшееся окно имеет ClassNN "V8MDILocalFrame1", если держать курсор мыши над его заголовком. Если держать курсор мыши над текстом самого редактора, ClassNN - "V8Window3". Я не уверен, что цифры в конце ClassNN постоянны. Например, если создать текстовый документ, то второй ClassNN будет уже "V8Window4". (Для определения ClassNN я использовал инструмент AU3_Spy.exe.)

Далее. Пишем скрипт на AutoHotkey:
Код:
#IfWinActive ahk_class V8TopLevelFrame

F12::
OutputVar =

; Буква "А" везде означает активное окно.

;Определяет, на каком контроле (элементе управления) указанного окна находится фокус ввода.
ControlGetFocus, OutputVar, A
MsgBox %OutputVar% ; выдаёт "V8Window3"

; Считывает информацию о контроле, в данном случае - Hwnd
ControlGet, OutputVar, Hwnd,, V8Window3, A
MsgBox %OutputVar% ; выдаёт что-то типа "0x2103cc", похоже на правду

; Считывает текст из контрола
ControlGetText, OutputVar, V8Window3, A
MsgBox %OutputVar% ; выдаёт пустую строку, типа текста нет (это неправда)

; Читает текст указанного окна
WinGetText, OutputVar, A
MsgBox, %OutputVar% ; выдаёт заголовок окна типа "Конфигурация: Модуль приложения"
Вобщем, достать текст не выходит. Просмотрите код - он очень простой и прокомментирован.
Собственно, я не прошу написать рабочий скрипт на AutoHotkey.
Я лишь прошу ответить на вопрос: получится ли выдрать текст из этого "V8Window3", например, на Си, используя Win API?
Если да, то какие API и как нужно задействовать?
Может, есть ещё какие-то способы получить этот текст программно?
Примечание: программа Kleptomania этот текст читает, но там совсем другая технология.

Вобщем, если не лень, я прошу вас попробовать практически написать что-то на Си или ещё на чём-то. Советы ProTeuS понятны, но чтобы ими воспользоваться, у меня просто не хватит квалификации. Кроме того, не факт, что эти советы сработают, т.к., как я уже говорил 1С v8 - это чёрный ящик ещё тот. Здесь нужна рука опытного хакера, потому я так "по-наглому" и прошу, поймите пожалуйста правильно . На данном этапе меня интересует сама возможность подобного действия. Если эта возможность оправдается (в чём я не совсем уверен), тогда уже можно будет подумать, как это прикрутить к моим потребностям и всё такое...
 
Ответить с цитированием