Модераторы: diadiavova, gambit
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Проблема с хэндлом окошка, тупит GetWindow в VB.NET2008 
:(
    Опции темы
Insect
Дата 19.1.2009, 23:28 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 28
Регистрация: 7.4.2008
Где: Н.Н.

Репутация: нет
Всего: нет



Практически без изменений перенёс код из VB6 в VB.NET2008. 
При вызове апишки GetWindow обнаруживаются странные значения, не понятно к чему относящиеся, и код соответственно не работает...
Помогите кто чем может...


Код

Private Function DLHFindWin(ByVal frm As Form, ByVal WinTitle As String, ByVal CaseSensitive As Boolean) As Long



        Dim lngx As Long, lngLen As Long
        Dim lngStyle As Long, strCaption As String
        lngx = apiGetDesktopWindow()
        lngx = apiGetWindow(lngx, 5)
        Do While Not lngx = 0
            strCaption = fGetCaption(lngx)
            If Len(strCaption) > 0 Then
                lngStyle = apiGetWindowLong(lngx, mcGWLSTYLE)
              
                If lngStyle And mcWSVISIBLE Then
                   
                    If InStr(strCaption, WinTitle) Then
                 
                        DLHFindWin = lngx
                        Exit Do
                    Else
                        DLHFindWin = 0
                    End If
              
                End If
            End If
            lngx = apiGetWindow(lngx, mcGWHWNDNEXT)
        Loop

    End Function



    Private Function fGetCaption(ByVal hwnd As Long)
        Dim strBuffer As String
        Dim intCount As Integer
        strBuffer = Microsoft.VisualBasic.StrDup$(256, " ")

        intCount = apiGetWindowText(hwnd, strBuffer, 255)
        If intCount > 0 Then
            fGetCaption = Microsoft.VisualBasic.Left$(strBuffer, intCount)
        End If
    End Function

PM MAIL ICQ   Вверх
popzow
Дата 22.1.2009, 13:46 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 55
Регистрация: 21.11.2006

Репутация: нет
Всего: нет



ссылка чем мог, тем помог smile 
PM MAIL   Вверх
Pilger
Дата 22.1.2009, 18:26 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 257
Регистрация: 10.5.2008
Где: Германия

Репутация: нет
Всего: нет



Если тебе надо получить хэндл окна по его тексту, то смотри тут:
http://forum.vingrad.ru/forum/topic-222145...y1592338/0.html


--------------------
Ein Leben nach der Schleife existiert, nur wenn die Schleife terminiert.
PM MAIL ICQ   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума VB .NET
diadiavova
  • Прежде чем задать вопрос, воспользуйтесь поиском: возможно Ваш вопрос уже обсуждался и на него был получен ответ.
  • Если такой же вопрос не найден, не стоит задавать свой вопрос в любую тему, создайте новую.
  • Заголовок темы должен отображать ее суть.
  • Содержание поста должно описывать проблему понятно, но в то же время, по возможности, лаконично. Сначала следует описать суть вопроса, потом можно привести пример кода, не вынуждайте других участников угадывать в чем Ваша проблема - телепатов здесь нет.
  • Будьте взаимно вежливы и дружелюбны.
  • При оформлении сообщений используйте форматирование, примеры кода заключайте в теги [CODE=vbnet][/CODE].
  • Также ознакомьтесь с общими правилами, действующими на всем форуме.
  • Если вопрос решен, не забывайте помечать тему решенной(вверху темы есть ссылка). Кроме того, если Вы хотите отблагодарить участников, оказавших помощь в решении, можно повысить им репутацию, в случае, если у Вас менее 100 сообщений в форуме и функция изменения репутации Вам недоступна, можете написать сюда.
  • Общие вопросы по программированию на платформе .NET обсуждаются здесь.
  • Литература по VB .NET обсуждается здесь.

Если Вам помогли и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, diadiavova.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | VB .NET | Следующая тема »


 




[ Время генерации скрипта: 0.0566 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.