Страница: 1 | 2 | 3 |
Вопрос: FindWindow
Добавлено: 21.09.09 14:56
Автор вопроса:
Winand | Web-сайт:
Можно ли найти окно, не зная его заголовок? он к сожаленью изменяется
Ответы
Всего ответов: 35
Номер ответа: 1
Автор ответа: Winand
Вопросов: 87
Ответов: 2795
Web-сайт:
Профиль | | #1
Добавлено: 21.09.09 14:58
Нужно передать данные через WM_COPYDATA
В принципе можно воспользоваться протоколом UDP, но не хочу ни контрол winsock, ни многокилобайтный код его заменяющий
Номер ответа: 2
Автор ответа: EROS
Вопросов: 58
Ответов: 4255
Профиль | | #2
Добавлено: 21.09.09 15:26
Если я не ошибаюсь там можно искать двумя путями.. либо по заголовку, либо по классу окна.. если класс уникальный в пределах родителя то можно найти..
Номер ответа: 3
Автор ответа: Winand
Вопросов: 87
Ответов: 2795
Web-сайт:
Профиль | | #3
Добавлено: 21.09.09 16:37
Ага, я почитал на мсдн. Выходит, что нужно создать некое dummy-окно, с уникальным классом, а потом ему отправлять WM_COPYDATA.
А вот вопрос насчет UDP. Как узнать какой порт можно использовать. У меня есть пример, там используется 8888 без всяких проверок, но его ж наверное уже кто-то может использовать
Номер ответа: 4
Автор ответа: Arvitaly
ICQ: 301746136
Вопросов: 28
Ответов: 549
Web-сайт:
Профиль | | #4
Добавлено: 21.09.09 16:50
Мб список всех открытых посмотреть?
Номер ответа: 5
Автор ответа: EROS
Вопросов: 58
Ответов: 4255
Профиль | | #5
Добавлено: 21.09.09 16:56
Если порт занят то ты не сможешь его открыть для прослушивания.. получишь исключение...
Номер ответа: 6
Автор ответа: Artyom
Разработчик
Вопросов: 130
Ответов: 6602
Профиль | | #6
Добавлено: 21.09.09 18:52
Обмен между приожениями можно также через Named Pipes делать
Номер ответа: 7
Автор ответа: Winand
Вопросов: 87
Ответов: 2795
Web-сайт:
Профиль | | #7
Добавлено: 21.09.09 19:08
Тоже интересно, однако
http://support.microsoft.com/kb/177696
сервер ждет подключения в цикле, это как-то не совсем эффективно
Номер ответа: 8
Автор ответа: Artyom
Разработчик
Вопросов: 130
Ответов: 6602
Профиль | | #8
Добавлено: 21.09.09 19:14
Видимо потому что в VB6 есть некоторые сложности с реализацией многопоточности
Номер ответа: 9
Автор ответа: EROS
Вопросов: 58
Ответов: 4255
Профиль | | #9
Добавлено: 21.09.09 19:43
красиво так получилось... очень тонко и изысканно...
опустить VB6 ниже городской канализации )))))
Номер ответа: 10
Автор ответа: Winand
Вопросов: 87
Ответов: 2795
Web-сайт:
Профиль | | #10
Добавлено: 21.09.09 20:07
Ах так да) Я-то вообще не уверен, что под венду стоит писать программы.
Вот скажите, на кой хрен тут многопоточность? Лишнее усложнение. SendMessage-WM_COPYDATA намного логичнее. Только я пока туплю с передачей строки, она рубится наполовину
Номер ответа: 11
Автор ответа: Artyom
Разработчик
Вопросов: 130
Ответов: 6602
Профиль | | #11
Добавлено: 21.09.09 20:11
Стоит уточнить что в VB6 есть также некоторые сложности с реализацией сабклассинга
Номер ответа: 12
Автор ответа: Winand
Вопросов: 87
Ответов: 2795
Web-сайт:
Профиль | | #12
Добавлено: 21.09.09 20:38
писать на VB6 в современном мире - тупо. Здесь даже дизайнер форм тормозит на Win7) Другое дело, что из-за vb6 возникают сложности, которые интересно преодолеть. Это похоже на легкую форму мазохизма, пожалуй) Вот бы всё-таки прекратить этим заниматься и перейти в полной мере на чистый без дотнета с++.
Номер ответа: 13
Автор ответа: Winand
Вопросов: 87
Ответов: 2795
Web-сайт:
Профиль | | #13
Добавлено: 21.09.09 20:56
м, сабклассинг в данном случае человечен) если нажать стоп - ничего не падает. Только видимо созданное createwindow окно остается
Номер ответа: 14
Автор ответа: VβÐUηìt
Вопросов: 246
Ответов: 3333
Web-сайт:
Профиль | | #14
Добавлено: 21.09.09 21:01
На VB6 я реализовывал многопоточность. Вообще говоря, это не так тупо, как говорят. Релизовывают они сами (те кто говорят) это тупо. Просто нужно еще и COM на жопу навешать, и поковырять, а не тупо CreateThread вызывать. Все это можно сунуть в класс и пользоваться наздоровье без вылетов и с норм. отладкой. Только в каком потоке находишься вася не показывает, а так все хорошо. Код создания потока примерно такой:
PS: Топики про то, что COM устарел, VB6 г**но, дотнет рулит, простыни Бранда про правоту мелкомягких и т.п. весьма предсказуемы ))) И вообще, спорить не собираюсь, ибо жутко лень по 500 кругу спорить.
Номер ответа: 15
Автор ответа: Smith
ICQ: adamis@list.ru
Вопросов: 153
Ответов: 3632
Профиль | | #15
Добавлено: 21.09.09 21:25
Ничего не поделаешь, дотнэтчики вечно слетаются на темы вб6 и зудят о том, что он дерьмо.
Какбудто ктото этого незнает.