powered by simpleCommunicator - 2.0.54     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / MOBILedit!
27 сообщений из 27, показаны все 2 страниц
MOBILedit!
    #37424432
Ципихович Эндрю
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Здравствуйте, вопрос такой, открываю прогу MOBILedit!, как затем программно нажать кнопку Активировать позже, (хендл окна узнал) и раскрыть папку подключенные устройства??

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
54.
55.
56.
57.
58.
59.
60.
61.
62.
63.
64.
65.
66.
67.
68.
69.
70.
71.
72.
73.
74.
75.
76.
77.
78.
79.
80.
81.
82.
83.
84.
85.
86.
87.
88.
Option Explicit

Public TargetName As String
Public TargetHwnd As Long

Public Const GWL_STYLE = - 16 
Public Const WS_DISABLED = &H8000000
Public Const WS_CANCELMODE = &H1F
Public Const WM_CLOSE = &H10

Public Declare Function EnumWindows Lib "user32" ( _
                                    ByVal lpEnumFunc As Long, _
                                    ByVal lParam As Long) As Long

Declare Function GetWindowText Lib "user32" Alias "GetWindowTextA" ( _
                               ByVal hWnd As Long, _
                               ByVal lpString As String, _
                               ByVal cch As Long) As Long

Declare Function IsWindow Lib "user32" ( _
                          ByVal hWnd As Long) As Long

Declare Function GetWindowLong Lib "user32" Alias "GetWindowLongA" ( _
                               ByVal hWnd As Long, _
                               ByVal nIndex As Long) As Long

Declare Function PostMessage Lib "user32" Alias "PostMessageA" ( _
                             ByVal hWnd As Long, _
                             ByVal wMsg As Long, _
                             ByVal wParam As Long, _
                             ByVal lParam As Long) As Long

Sub MOBILedit_программа_для_сотовых_телефонов()

    Dim MOBILedit As Variant
    Dim HWND_программы As Long

    If Tasks.Exists(Name:="MOBILedit!") = False Then
        MOBILedit = Shell(PathName:= _
                          "D:\Program Files\MOBILedit!\MOBILedit!.exe", WindowStyle:=vbNormalFocus)
    End If

    TargetName = "Активация MOBILedit!"
    'Examine the window names
    'Проверьте имена окон
    EnumWindows AddressOf WindowEnumerator,  0 
    'See if we got an HWND
    'Смотрите, если мы получили HWND
    HWND_программы = TargetHwnd

    MsgBox$ HWND_программы

End Sub

Public Function WindowEnumerator(ByVal app_hwnd As Long, _
                                 ByVal lParam As Long) As Long

'Return WindowEnumerator = False to stop the enumeration
'Возвращаем WindowEnumerator = False, чтобы остановить перечисление

    Dim buf As String *  256 
    Dim Title As String
    Dim Length As Long

    'Get the windows title
    'Получить заголовок окна
    'Length - длина
    Length = GetWindowText(app_hwnd, buf, Len(buf))
    'Title - название
    Title = Left$(buf, Length)

    'If Length <> 0 Or Len(Title) <> 0 Then
    'MsgBox$ Title & " - " & Length
    'End If

    'See if the title contains the target
    'Смотрите, если заголовок содержит целевые
    If InStr(Title, TargetName) >  0  Then
        'Save the HWND and end the enumeration
        'Сохранить HWND и конец перечисления
        TargetHwnd = app_hwnd
        WindowEnumerator = False
    Else
        'Continue the enumeration
        'Продолжить перечисление
        WindowEnumerator = True
    End If

End Function
...
Рейтинг: 0 / 0
MOBILedit!
    #37424596
Ципихович Эндрю
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
нажимаю на кнопку да не на ту
Код: plaintext
1.
2.
3.
4.
'Ищем кнопку на панели
WbdButton = FindWindowEx(WndWind,  0 , "Button", vbNullString)
'Здесь нули, так как wMsg и wParam для клика не нужны
Call SendMessage(WbdButton, BM_CLICK,  0 ,  0 )
Как их все обойти???
Тут ещё горе, конструкция
Код: plaintext
1.
If Tasks.Exists(Name:="MOBILedit!") = False Then
промахивается, это чисто Вордовская штука, как в остальных???
...
Рейтинг: 0 / 0
MOBILedit!
    #37425850
majestic-mike
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Ципихович Эндрю,

В MSDN можете посмотреть информацию по функции

BOOL EnumChildWindows(
HWND hWndParent,
WNDENUMPROC lpEnumFunc,
LPARAM lParam
);

перебирает дочерние окна...

ну а идея такая и есть - обойти окна - в порядке их "родственных" отношений (родительское/дочернее) и как найдётся то "единственное" - отправить ему например уведомление о нажатии.

Используйте в своих изысканиях утилиту Spy++ - она очень поможет
...
Рейтинг: 0 / 0
MOBILedit!
    #37429613
Ципихович Эндрю
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
majestic-mike,
ап, не решил ещё, SPY++, не предлагать
...
Рейтинг: 0 / 0
MOBILedit!
    #37431714
Ципихович Эндрю
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
порылся в сети, примеры глянул, решил
A= SendMessage(Button1.hwnd, BM_CLICK, 0, 0&)
к своему коду прикрутить
то что было
Код: plaintext
1.
2.
3.
 If Tasks.Exists(Name:="MOBILedit!") = False Then
        MOBILedit = Shell(PathName:= _
                          "D:\Program Files\MOBILedit!\MOBILedit!.exe", WindowStyle:=vbNormalFocus)
    End If

пока заменил на

Код: plaintext
1.
MOBILedit = Shell(PathName:= _
                          "D:\Program Files\MOBILedit!\MOBILedit!.exe", WindowStyle:=vbNormalFocus)

выдало мне
Код: plaintext
MsgBox$ HWND_программы
Ноль, раньше все хорошо было, что не так стало, есть пример??
...
Рейтинг: 0 / 0
MOBILedit!
    #37432239
majestic-mike
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Ципихович Эндрю,

HWND_программы? Хэндлы окон есть только у окон, а у программ есть базовые адреса загрузки именуемые "экземпляром приложения" (Instance).

И опять же - сложно понять что вы собираетесь спросить... набор слов, а не постановка задачи... почему не хотите использовать Spy++? Лень матушка? или не ищете лёгких путей? Именно Spy++ - позволит вам определить идентификаторы, классы окон и даже хэндлы и их оконные процедуры - кучу полезной информации, которую просто необходимо использовать в отладке приложения - а все эти гадания на кофейной гуще и посты непонятного содержания - это не методы разработки, уж поверьте.
...
Рейтинг: 0 / 0
MOBILedit!
    #37433050
Ципихович Эндрю
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
majestic-mike,

почему не хотите использовать Spy++? - как вариант, попробую, ничего бы не было плохого если бы я узнал без Spy++?
...
Рейтинг: 0 / 0
MOBILedit!
    #37433404
Ципихович Эндрю
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
сегодня нормально хендл считает

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
54.
55.
56.
57.
58.
59.
60.
61.
62.
63.
64.
65.
66.
67.
68.
69.
70.
71.
72.
73.
74.
75.
76.
77.
78.
79.
80.
81.
82.
83.
84.
85.
86.
87.
88.
89.
90.
91.
92.
93.
94.
95.
96.
97.
98.
99.
100.
101.
102.
103.
104.
105.
106.
107.
108.
109.
110.
111.
112.
113.
114.
115.
116.
117.
118.
119.
120.
121.
122.
123.
124.
125.
126.
127.
Option Explicit

Public TargetName As String
Public TargetHwnd As Long

Public Const GWL_STYLE = - 16 
Public Const WS_DISABLED = &H8000000
Public Const WS_CANCELMODE = &H1F
Public Const WM_CLOSE = &H10

Public Declare Function EnumWindows Lib "user32" ( _
                                    ByVal lpEnumFunc As Long, _
                                    ByVal lParam As Long) As Long

Declare Function GetWindowText Lib "user32" Alias "GetWindowTextA" ( _
                               ByVal hWnd As Long, _
                               ByVal lpString As String, _
                               ByVal cch As Long) As Long

Declare Function IsWindow Lib "user32" ( _
                          ByVal hWnd As Long) As Long

Declare Function GetWindowLong Lib "user32" Alias "GetWindowLongA" ( _
                               ByVal hWnd As Long, _
                               ByVal nIndex As Long) As Long

Declare Function PostMessage Lib "user32" Alias "PostMessageA" ( _
                             ByVal hWnd As Long, _
                             ByVal wMsg As Long, _
                             ByVal wParam As Long, _
                             ByVal lParam As Long) As Long

Sub MOBILedit_программа_для_сотовых_телефонов()

    Dim MOBILedit As Variant
    Dim HWND_программы As Long

    Dim isProcessRun As Boolean
    Dim processName As String
    processName = "MOBILedit!.exe"

    Function_перебор_всех_запущенных_процессов isProcessRun, processName

    If isProcessRun = False Then
        MOBILedit = Shell(PathName:= _
                          "D:\Program Files\MOBILedit!\MOBILedit!.exe", WindowStyle:=vbNormalFocus)
    End If

    TargetName = "Активация MOBILedit!"
    'Examine the window names
    'Проверьте имена окон
    EnumWindows AddressOf WindowEnumerator,  0 
    'See if we got an HWND
    'Смотрите, если мы получили HWND
    HWND_программы = TargetHwnd

    MsgBox$ HWND_программы

End Sub

Public Function WindowEnumerator(ByVal app_hwnd As Long, _
                                 ByVal lParam As Long) As Long

'Return WindowEnumerator = False to stop the enumeration
'Возвращаем WindowEnumerator = False, чтобы остановить перечисление

    Dim buf As String *  256 
    Dim Title As String
    Dim Length As Long

    'Get the windows title
    'Получить заголовок окна
    'Length - длина
    Length = GetWindowText(app_hwnd, buf, Len(buf))
    'Title - название
    Title = Left$(buf, Length)

    'If Length <> 0 Or Len(Title) <> 0 Then
    'MsgBox$ Title & " - " & Length
    'End If

    'See if the title contains the target
    'Смотрите, если заголовок содержит целевые
    If InStr(Title, TargetName) >  0  Then
        'Save the HWND and end the enumeration
        'Сохранить HWND и конец перечисления
        TargetHwnd = app_hwnd
        WindowEnumerator = False

    Else

        'Continue the enumeration
        'Продолжить перечисление
        WindowEnumerator = True
    End If

End Function

Public Function Function_перебор_всех_запущенных_процессов(isProcessRun, processName)

'перебор всех запущенных процессов
    Dim objProcess As Variant

    Dim objWMIService As Variant
    Set objWMIService = GetObject("winmgmts:")

    Dim callProcess As Variant
    Set callProcess = objWMIService.ExecQuery("Select * from Win32_Process")

    'Dim Процесс As String
    'Dim ПроцессCount As Integer

    For Each objProcess In callProcess
        'Процесс = objProcess.Name
        'ПроцессCount = ПроцессCount + 1

        If UCase(objProcess.Name) = UCase(processName) Then
            isProcessRun = True
            Exit For
        End If
    Next

    'MsgBox$ "Количество запущенных процессов: " & ПроцессCount

    Set objWMIService = Nothing
    Set callProcess = Nothing

End Function


посчитал хендл окна 67710, подскажите как дальше пройтись по кнопкам окна и нажать кнопку Активировать позже
по поводу Spy++, качнул, поставил, не пойму что там можно понять
файл проглагаю
Ps как вы вкладываетесь в максимальный размер 150Kb??
...
Рейтинг: 0 / 0
MOBILedit!
    #37433406
Ципихович Эндрю
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
...
Рейтинг: 0 / 0
MOBILedit!
    #37435837
majestic-mike
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Ципихович Эндрю,

<хэндл_дочернего_окна> = GetDlgItem (<хэндл_родительского_окна>, <идентификатор_дочернего>);

собственно чтобы знать идентификаторы - я и советовал использовать Spy++

когда получишь хэндл нужного тебе окна можешь послать ему сообщение WM_COMMAND с кодом уведомления BN_CLICKED
...
Рейтинг: 0 / 0
MOBILedit!
    #37436975
Ципихович Эндрю
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
majestic-mike,
> и советовал использовать Spy++
предлагаете, чтобы закрыть окно пользоваться Spy++??
В настоящее время у меня две просьбы
1
нашёл прогу
Программа, которая решает все вопросы, связанные с управлением чужими окнами

Запустить, можно прямо в редакторе VB, а можно и скомпилировать
Появиться окно программы
Указатель мыши навести на заголовок интересующего окна
Нажать на клавиатуре кнопку CTRL
В программе появятся надписи - Имя, Хендл, Класс этого окна
Тоже и для кнопки
В ней на мой взгляд два изъяна
получаю в
Text2.Text = < 65968> - то есть первой цифры нет
в
Text1.Text = <WindName - то есть закрывающей > нет
Это нормально? Если нет, как исправить?
2
подскажите скрипт следующего, есть окно, известно только его заголовок
при помощи For Each обойти все окна(кнопки и др.) этого окна и выяснить их Имя, Хендл, Класс этого окна, координаты
Заранее спасибо
...
Рейтинг: 0 / 0
MOBILedit!
    #37436976
Ципихович Эндрю
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
сама программма, упомянутая в предыдущем посте
...
Рейтинг: 0 / 0
MOBILedit!
    #37439616
majestic-mike
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Ципихович Эндрю,

Похоже Вам очень нравится заниматься глупостями - два раза советовал вам скачать Spy++ - вы вместо него скачали какую то непонятну поделку и радуетесь как ребёнок. Может всё таки прислушаетесь к совету? там уже целиком и полностью он вам разрисует связи дочерних окон, их хэндлы, стили, классы, заголовки - да что угодно... и это не программа для "закрытия окна" - а программа для исследования - чтобы узнать какие параметры нужно передать в API вызовы FindWindow / GetDlgItem и прочие... хватит ерундой то страдать...
...
Рейтинг: 0 / 0
MOBILedit!
    #37439667
Фотография Игорь Горбонос
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Да не оскудеет земля русская
Вот уж воистину глаголет пословица! Всегда будет появлятся новичёк, который будет пытатся _донести_ что-то до Эндрю. Но
Эндрю светит другая путеводная звезда: "А Васька слушает, да есть." Или из более современного: "Хорошо быть линкором,
башню сорвало, ещё две остались." Но с другой стороны теплится надежна что Эндрю когда-то(здесь можно прочесть
вступление к "Звёздным войнам") образумится и станет программистом с большой буквы :)

P.S. Вообщем сори за словоблудство, если что можно удалить пост

Posted via ActualForum NNTP Server 1.4
...
Рейтинг: 0 / 0
MOBILedit!
    #37440565
Ципихович Эндрю
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
majestic-mike, зачем мне нужен Spy++??
Чтоб узнать, ну узнал я, что дальше?
При каждом окрытии проги MOBILedit! хендл другой, то есть Вы предлагаете открыть прогу MOBILedit!, потом шпиона, не забывайте там ещё в вопросе есть > и раскрыть папку подключенные устройства
Это похоже вообще недосягаемые дали
Что будет плохого, если я буду знать:
>скрипт следующего, есть окно, известно только его заголовок
>при помощи For Each обойти все окна(кнопки и др.) этого окна и выяснить их Имя, Хендл, >Класс этого окна, координаты
>Заранее спасибо
...
Рейтинг: 0 / 0
MOBILedit!
    #37440783
Ципихович Эндрю
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
то есть Вы мне упорно говорите, используй шпиона, с кармана его доставать каждый раз

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
Public Declare Function FindWindow Lib "user32" Alias "FindWindowA" ( _
ByVal lpClassName As String, _
ByVal lpWindowName As String) As Long

Private Declare Function FindWindowEx Lib "user32" Alias "FindWindowExA" ( _
ByVal hWnd1 As Long, _
ByVal hWnd2 As Long, _
ByVal lpsz1 As String, _
ByVal lpsz2 As String) As Long

Private Declare Function PostMessage Lib "user32" Alias "PostMessageA" ( _
ByVal hWnd As Long, _
ByVal wMsg As Long, _
ByVal wParam As Long, _
lParam As Any) As Long

Const WM_CLOSE = &H10    ' закрывает окно PostMessage

Sub Окна_кнопки()

MOBILeditLite = FindWindow(vbNullString, "MOBILedit! Lite")
MOBILeditActivation = FindWindow(vbNullString, "MOBILedit! Activation")
КнопкаActivate = FindWindowEx(MOBILeditActivation,  0 , vbNullString, "Activate!")
КнопкаActivateLater = FindWindowEx(MOBILeditActivation,  0 , vbNullString, "Activate Later")
PostMessage MOBILeditActivation, WM_CLOSE,  0 ,  0 


End Sub

закрыл это окно, но осадок остался, КнопкаActivate посчитал как 0, почему??
КнопкаActivateLater посчитал верно
И как же раскрыть папку подключенные устройства??? Какого шпиона, откуда доставать???
...
Рейтинг: 0 / 0
MOBILedit!
    #37440806
Ципихович Эндрю
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
делов, то КнопкаActivate = FindWindowEx(MOBILeditActivation, 0, vbNullString, "
Код: plaintext
&
Activate!")
Грёбаные амперсанды не только в Красном и белом, что за зажим??
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
Option Explicit

Private Declare Function FindWindowEx Lib "user32" Alias "FindWindowExA" ( _
                                      ByVal hWnd1 As Long, _
                                      ByVal hWnd2 As Long, _
                                      ByVal lpsz1 As String, _
                                      ByVal lpsz2 As String) As Long

Private Declare Function FindWindow Lib "user32" Alias "FindWindowA" ( _
                                    ByVal lpClassName As String, _
                                    ByVal lpWindowName As String) As Long

Private Declare Function GetWindowText Lib "user32" Alias "GetWindowTextA" ( _
                                       ByVal hwnd As Long, _
                                       ByVal lpString As String, _
                                       ByVal cch As Long) As Long

Dim tWnd As Long, bWnd As Long

Private Sub Form_Load()

    Dim Заголовок_окна As String
    Заголовок_окна = "MOBILedit! Activation"

    Dim MyStr As String
    tWnd = FindWindow(vbNullString, Заголовок_окна)

    If tWnd >  0  Then
        bWnd = FindWindowEx(tWnd, ByVal  0 &, vbNullString, vbNullString)
        Do
            bWnd = FindWindowEx(tWnd, bWnd, vbNullString, vbNullString)
            'Создаем буфер
            MyStr = String( 100 , Chr$( 0 ))
            'Определяем заголовок окна
            GetWindowText bWnd, MyStr,  100 
            Debug.Print "WinText: " + MyStr + " Cild Hwnd: " & str(bWnd)
        Loop While bWnd >  0 
    End If
    MsgBox$ "End"

End Sub

Пользуйтесь, и я если потеряю тетрадку буду знать где посмотреть

Итак последнее
>и раскрыть папку подключенные устройства??
Какого шпиона доставать?? +++?
...
Рейтинг: 0 / 0
MOBILedit!
    #37441007
Ципихович Эндрю
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
кстати, если прогнать код с предыдущего поста, то получаем в интермедии
WinText: Cild Hwnd: 198940
WinText: xtpBarTop Cild Hwnd: 67882
WinText: xtpBarBottom Cild Hwnd: 67884
WinText: xtpBarLeft Cild Hwnd: 67886
WinText: xtpBarRight Cild Hwnd: 67888
WinText: Cild Hwnd: 264504
WinText: Cild Hwnd: 330042
WinText: Cild Hwnd: 133430
WinText: Cild Hwnd: 592188
WinText: Cild Hwnd: 19203834
WinText: Cild Hwnd: 198984
WinText: Cild Hwnd: 133378
WinText: Cild Hwnd: 13174530
WinText: Cild Hwnd: 198496
WinText: Cild Hwnd: 133326
WinText: Cild Hwnd: 133334
WinText: Cild Hwnd: 133358
WinText: Cild Hwnd: 67936
WinText: Cild Hwnd: 67940
WinText: Cild Hwnd: 67944
WinText: Cild Hwnd: 67950
WinText: Cild Hwnd: 67954
WinText: Cild Hwnd: 67958
WinText: Cild Hwnd: 67966
WinText: Cild Hwnd: 67982
WinText: Cild Hwnd: 68004
WinText: Cild Hwnd: 0

но чтобы раскрыть папку этой проги подключенные устройства, то есть Коннектед Девайс
в отчёте в интермедии на сей счёт ничего нет, или я не вижу?? или бесполезно её там искать?
...
Рейтинг: 0 / 0
MOBILedit!
    #37441010
Ципихович Эндрю
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
также хотел спросить если прогнать код с поста от вчера, 21:30, окна MOBILedit! Activation то получаем в интермедии

WinText: Cild Hwnd: 133518
WinText: Cild Hwnd: 133524
WinText: Cild Hwnd: 133522
WinText: Cild Hwnd: 133520
WinText: Cild Hwnd: 133526
WinText: Cild Hwnd: 788890
WinText: Cild Hwnd: 133494
WinText: &Import From Activation File... Cild Hwnd: 133496
WinText: &Buy Now... Cild Hwnd: 330210
WinText: &Activate! Cild Hwnd: 133490
WinText: Activate Later Cild Hwnd: 133492
WinText: Help... Cild Hwnd: 133480
WinText: Activation Data Cild Hwnd: 133482
WinText: - Cild Hwnd: 133484
WinText: - Cild Hwnd: 133486
WinText: - Cild Hwnd: 133488
WinText: - Cild Hwnd: 133470
WinText: Name: Cild Hwnd: 133476
WinText: Company: Cild Hwnd: 133478
WinText: Cild Hwnd: 133472
WinText: Make sure you entered all the data correctly - the Name, Company and Key must be entered in the exa Cild Hwnd: 133474
WinText: Key: Cild Hwnd: 526824
WinText: Cild Hwnd: 0
Там на окне всего семь полей, как из отчета в интермедии узнать где хендлы полей??
Можно как то усовершенствовать макрос из поста от вчера, 21:30, чтобы выводилась информация о полях? Как?
Спасибо
...
Рейтинг: 0 / 0
MOBILedit!
    #37441157
majestic-mike
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Ципихович Эндрю,

Вы даже не представляете что за глупость вы делаете... и упорно не хотите слушать меня... над вами даже Игорь посмеялся - а вы и не задумались... для тех кто с трудом достигает просветления - в десятый раз вам говорю - Вы заниметесь ерундой (очень хочется написать это в капсе - да боюсь забанят).

И так - FindWindow - хорошая очень функция, но глупая - пока вы передаёте в первом параметре Null-строку - она ищет окна только по их заголовку и достаточно только случайно создать окно с таким же заголовком по которому вы ищете - и вся ваша идея поломается. Вам нужно знать название класса главного окна. Как его узнать? касается про "доставать шпиона из карманов" - я не знаю что вы имели в виду, но лучше оставьте вашего шпиона там где он и находится, а запустите утилиту Spy++. Она чётко и ясно даст вам информацию о названии класса окон и их числовых идентификаторах - и тогда необходимость в той глупости о которой вы твердите "хэндлы меняются - что делать" - она отпадает. Потому что - один единственный вызов FindWindow - с параметрами <название класса главного окна приложения> и <заголовок главного окна приложения> - дас вам хэндл главного окна... затем (уже забыв о FindWindow/FindWindowEx навсегда) вызываете GetDlgItem для <хэндл главного окна приложения>, <идентификатор дочернего элемента>. Это то что я пытаюсь вам рассказать - идентификатор дочернего элемента - всегда постоянный, а хэндл - меняется при каждом новом запуске. Идентификаторы вы можете посмотреть с помощью Spy++. Что касается "раскрыть папку" - я не понимаю о чём идёт речь, если это ListView - ему нужно послать соответствующее сообщение, вот и всё... если ComboBox - то другое...

имеющие уши - да услышат
...
Рейтинг: 0 / 0
MOBILedit!
    #37441227
Фотография Игорь Горбонос
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
> Автор: Ципихович Эндрю
> И как же раскрыть папку подключенные устройства??? Какого шпиона, откуда доставать???


Шпион вот , а доставать как всегда из
интернета.

Этим шпионом смотришь какие соощения идут дереву, после чего формируешь у себя такие и посылаешь.

Posted via ActualForum NNTP Server 1.4
...
Рейтинг: 0 / 0
MOBILedit!
    #37441245
Фотография Игорь Горбонос
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
OFF> Автор: Игорь Горбонос
> Шпион вот,

Она такая умная стала в версии 2.0, просто хавайся! Все подсказки для сообщений, параметры можно выбирать мышкой из
списка, не ипсользуемые параметры так и пишет - not used! В предыдущей версии(которая шла с исходниками) нужно было
самому писать строку параметров, выискивать значения нужных констант и т.д. и т.п.


Posted via ActualForum NNTP Server 1.4
...
Рейтинг: 0 / 0
MOBILedit!
    #37442147
Ципихович Эндрю
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
majestic-mike, спасибо Вам за ответ и за науку, под Шпионом я подразумеваю Spy++
Не смотря ни на что к советам я прислушиваюсь
Итак я удостоверился, что данная прога не запущена, что файл проги - экзешник на месте, запустил её кодом
MOBILedit = Shell(PathName:= _
"D:\Program Files\MOBILedit!\MOBILedit!.exe", WindowStyle:=vbNormalFocus)
Мои действия дальше, каков код???
Заранее спасибо
...
Рейтинг: 0 / 0
MOBILedit!
    #37442185
majestic-mike
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Ципихович Эндрю,

глупо разговаривать в таком контексте... в общем просто скажи где скачать этот MobileEdit и что с ним нужно сделать - только постарайся это сделать поконкретней, а уж я распишу тебе что нужно сделать...
...
Рейтинг: 0 / 0
MOBILedit!
    #37442192
Ципихович Эндрю
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
majestic-mike, вот это поворот, спасибо завтра выложу
...
Рейтинг: 0 / 0
MOBILedit!
    #37442314
Ципихович Эндрю
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
по поводу Шпиона, не понял, качнул поставил в списке программ его нет, где он? как им пользоваться? Настоящий Шнион!
...
Рейтинг: 0 / 0
MOBILedit!
    #37442805
Ципихович Эндрю
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
вот ссылка: http://files.mail.ru/ZIQ4BU
Что касается, что надо сделать - всё тоже, что указано в вопросе
...
Рейтинг: 0 / 0
27 сообщений из 27, показаны все 2 страниц
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / MOBILedit!
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]