AccessibleObjectFromWindow

Discussion in 'С/С++, C#, Rust, Swift, Go, Java, Perl, Ruby' started by St0nX, 17 Sep 2010.

  1. St0nX

    St0nX Elder - Старейшина

    Joined:
    19 May 2007
    Messages:
    257
    Likes Received:
    46
    Reputations:
    0
    PHP:
    //hWnd - хендл элемента
    IAccessibleiWnd;
    VARIANT idChl;
    VariantInit(&idChl);
    VARIANT varResult;
    AccessibleObjectFromWindow(hWnd0IID_IAccessible, (LPVOID*)&iWnd);
    iWnd->get_accRole(idChl,&varResult);
    printf("Role = %d\n\r",varResult.lVal);
    Видимо, я что то недопонял из MSDN. Перебираю различные элементы формы, но на выходе получаю всегда значение 9. :confused:
     
  2. St0nX

    St0nX Elder - Старейшина

    Joined:
    19 May 2007
    Messages:
    257
    Likes Received:
    46
    Reputations:
    0
    Совсем никто ничего не знает? :(
     
  3. Redeemer

    Redeemer Member

    Joined:
    3 Jul 2010
    Messages:
    203
    Likes Received:
    24
    Reputations:
    1
    Code:
    ROLE_SYSTEM_WINDOW	
    The object represents the window frame, which contains child objects such as a title bar, client, and other objects of a window.
    Что в принципе логично. Вы уверены что программа, которую вы перебираете поддерживает эти возможности?
     
  4. St0nX

    St0nX Elder - Старейшина

    Joined:
    19 May 2007
    Messages:
    257
    Likes Received:
    46
    Reputations:
    0
    Чесно говоря не уверен. Это обычный Outlook который ставится в месте с пакетом Office.
     
  5. Redeemer

    Redeemer Member

    Joined:
    3 Jul 2010
    Messages:
    203
    Likes Received:
    24
    Reputations:
    1
    Попробуйте на ворде или экселе провернуть, они точно поддерживают. Хотя и аутглюк должен.
     
  6. Redeemer

    Redeemer Member

    Joined:
    3 Jul 2010
    Messages:
    203
    Likes Received:
    24
    Reputations:
    1
    И кстати в MSDN по этому поводу есть пример, попробуйте повторить его