Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / управление чужим окном / 25 сообщений из 33, страница 1 из 2
16.02.2008, 17:26
    #35137018
max_111
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
управление чужим окном
Необходимо в стандартном окне выбора файла указать путь к файлу и нажать кнопку "Открыть".
Подскажите как это сделать?

авторобсуждалось - в поиск
ничего нет подходящего
...
Рейтинг: 0 / 0
16.02.2008, 22:08
    #35137197
big-duke
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
управление чужим окном
Стандартное окно где ? В нотепаде ?
sendkeys, dde и т.д.
Или же пишите подробно. Что и зачем.
...
Рейтинг: 0 / 0
17.02.2008, 01:37
    #35137282
max_111
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
управление чужим окном
в ie на странице эмулирую клик по обьекту iput file, в открывшееся окно выбор файла мне нужно вставить путь к файлу и нажать кнопку сохранить.
...
Рейтинг: 0 / 0
17.02.2008, 15:55
    #35137609
max_111
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
управление чужим окном
up
...
Рейтинг: 0 / 0
17.02.2008, 16:35
    #35137640
max_111
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
управление чужим окном
вот попробывал что то слепить из примера, но не хочет
...
Рейтинг: 0 / 0
17.02.2008, 16:36
    #35137642
max_111
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
управление чужим окном
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
Private Declare Function SendMessage Lib "user32" Alias "SendMessageA" (ByVal hwnd As Long, ByVal wMsg As Long, ByVal wParam As Long, ByVal lParam As Any) As Long
Private 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 hWndParent As Long, ByVal hWndChildAfter As Long, ByVal lpClassName As String, ByVal lpWindowName As String)

Private Const WM_SETTEXT = &HC

Private Sub Command1_Click()
Dim lhWnd As Long
Dim Fhwnd As Long
Fhwnd = FindWindow(vbNullString, "Form1")
lhWnd = FindWindow(Fhwnd, Text1.hwnd)
SendMessage lhWnd, WM_SETTEXT,  0 , "Новый текст"
End Sub
...
Рейтинг: 0 / 0
18.02.2008, 09:14
    #35138142
big-duke
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
управление чужим окном
max_111в ie на странице эмулирую клик по обьекту iput file, в открывшееся окно выбор файла мне нужно вставить путь к файлу и нажать кнопку сохранить.
Зачем в IE эмулировать, если им можно управлять. Разместите его на форме и через DOM управляйте им.
...
Рейтинг: 0 / 0
18.02.2008, 10:05
    #35138243
Antonariy
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
управление чужим окном
max_111в ie на странице эмулирую клик по обьекту iput file, в открывшееся окно выбор файла мне нужно вставить путь к файлу и нажать кнопку сохранить.Это абсолютно лишнее.
Код: plaintext
document.getElementById("если есть").value="c:\file.txt"
...
Рейтинг: 0 / 0
18.02.2008, 10:14
    #35138279
big-duke
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
управление чужим окном
Разве input file разрешает так делать ? Так же можно все файлы с компа юзера утащить.
...
Рейтинг: 0 / 0
18.02.2008, 10:29
    #35138329
Antonariy
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
управление чужим окном
Хм, действительно не позволяет. Я был уверен, что нельзя лишь скрипту.
...
Рейтинг: 0 / 0
27.02.2008, 12:17
    #35157487
max_111
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
управление чужим окном
big-duke Разместите его на форме и через DOM управляйте им.
Это в смысле как?
...
Рейтинг: 0 / 0
27.02.2008, 22:42
    #35159356
big-duke
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
управление чужим окном
Размещаете на форме webbrowser и через его DOM управляете им.
...
Рейтинг: 0 / 0
28.02.2008, 01:13
    #35159465
max_111
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
управление чужим окном
big-dukeРазмещаете на форме webbrowser и через его DOM управляете им.

не представляю себе как это возможно...

может все таки поможете по первому посту авторНеобходимо в стандартном окне выбора файла указать путь к файлу и нажать кнопку "Открыть".
...
Рейтинг: 0 / 0
28.02.2008, 10:01
    #35159731
big-duke
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
управление чужим окном
...
Рейтинг: 0 / 0
28.02.2008, 17:38
    #35161364
max_111
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
управление чужим окном
То что я понял, это то, что вы пытаетесь обьяснить мне, что заполнить этот обьект невозможно и события клик у него нет. Ссылки ведут на HTML и JavaScript, но мне вроде это не надо...
Я спршивал о том как заполнить "текстовое поле" и нажать кнопку "открыть" програмно, на VB, а как мне показалось, вы пытаетесь мне обьяснить это на HTML и скриптах, код я тоже выложил выше, внем я могу определить окно по его названию, но вот обьект "текстовое поле" и кнопку "отправить" у меня определить не получается. Вот это я и хотел узнать.
...
Рейтинг: 0 / 0
28.02.2008, 17:51
    #35161421
Antonariy
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
управление чужим окном
Текстовые поля и кнопки в броузере - не окна , поэтому FindWindow и иже с ним не пройдут. Управление этими объектами осуществляется либо через DOM, либо (раз уж input file защищен) через тупое позиционирование курсора и
Код: plaintext
Private Declare Sub mouse_event Lib "user32" (ByVal dwFlags As Long, ByVal dx As Long, ByVal dy As Long, ByVal cButtons As Long, ByVal dwExtraInfo As Long) 
...
Рейтинг: 0 / 0
28.02.2008, 17:58
    #35161452
Antonariy
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
управление чужим окном
Блин, затупил. Диалог стандартный, так что FindWindow, EnumChildWindows, SendMessage + WM_SETTEXT и т.д.
...
Рейтинг: 0 / 0
28.02.2008, 18:18
    #35161518
max_111
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
управление чужим окном
Я это и спрашивал в первом посте. Наверно меня не поняли...
Вот я добился как найти окно "выбора файла", могу его переименовать, но к нужным оьбектам ну никак не въеду...
Вот проект прикрепил, может вам так будел легче мне деревянному объяснить...
...
Рейтинг: 0 / 0
29.02.2008, 11:32
    #35162673
Letter_D
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
управление чужим окном
В Form2:

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
Private Sub Command1_Click()
Dim lhWnd As Long
Dim Fhwnd As Long
Dim Fhwnd2 As Long
Fhwnd = FindWindow(vbNullString, "Выбор файла")
Fhwnd2 = FindWindowEx(Fhwnd,  0 , "ComboBoxEx32", vbNullString)
SendMessage Fhwnd2, WM_SETTEXT,  0 , ByVal "Новый текст"
End Sub
...
Рейтинг: 0 / 0
29.02.2008, 11:53
    #35162755
max_111
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
управление чужим окном
Спасибо.
А как вы узнали что к текстовому полю нужно обратится ComboBoxEx32 ?
...
Рейтинг: 0 / 0
29.02.2008, 12:00
    #35162782
Letter_D
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
управление чужим окном
Посмотрел класс нужного окна.
У меня, как и у многих здесь, для просмотра всех процессов и окон своя прибамбасина есть... :))
...
Рейтинг: 0 / 0
29.02.2008, 12:09
    #35162820
max_111
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
управление чужим окном
это типа SPY++ ?
вот для отправки текста используют WM_SETTEXT , а для того чтобы нажать кнопку что нужно отправить?
...
Рейтинг: 0 / 0
29.02.2008, 12:12
    #35162836
Letter_D
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
управление чужим окном
Const BM_CLICK = &HF5
...
Рейтинг: 0 / 0
29.02.2008, 12:15
    #35162851
max_111
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
управление чужим окном
Подскажите пожалуйста где можно узнать эти все "команды"(хотябы часть)?
...
Рейтинг: 0 / 0
29.02.2008, 13:35
    #35163174
max_111
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
управление чужим окном
Пытаюсь нажать на кнопку "открыть", но ругается что несовпадение типов

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
Dim lhWnd As Long
Dim Fhwnd As Long
Dim Fhwnd2 As Long
Fhwnd = FindWindow(vbNullString, "Выбор файла")
Fhwnd2 = FindWindowEx(Fhwnd,  0 , "ComboBoxEx32", vbNullString)
SendMessage Fhwnd2, WM_SETTEXT,  0 , ByVal "Текст"

lhWnd = FindWindowEx(Fhwnd,  0 , "Button", "Открыть")
SendMessage lhWnd, BM_CLICK,  0 ,  0 
подсвечивает
SendMessage lhWnd, BM_CLICK, 0, 0

Что я сделал не так?
...
Рейтинг: 0 / 0
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / управление чужим окном / 25 сообщений из 33, страница 1 из 2
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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