Показать сообщение отдельно
  #2  
Старый 05.08.2015, 16:49
Аватар для Thrasher
Thrasher Thrasher вне форума
Illuminati
 
Регистрация: 06.03.2008
Адрес: Крым, г. Симферополь
Сообщения: 348
Репутация: 8808
По умолчанию

Вся проблема в том, что нельзя сравнивать переменные. Только регистры.

Код:
    mov CurrThID, rv(GetCurrentThreadId)
    mov ThID, rv(GetWindowThreadProcessId, ebx, NULL)
    mov ebx, 0
    push eax
    push ecx
    mov  eax, CurrThID
    mov ecx, ThID
      .if CurrThID == ThID
        mov ebx, rv(GetFocus)
        pop ecx
        pop eax
        .else
       pop eax
       pop ecx 
           .if rv(AttachThreadInput, CurrThID, ThID, TRUE)
            mov ebx, rv(GetFocus)
            invoke AttachThreadInput, CurrThID, ThID, FALSE
            .endif
        .endif
  .endif
  ret
GetFocusedWindow endp
__________________
Хорошо написанная программа не требует документации
ICQ 9-184-668.
Ответить с цитированием