2017-02-11 6 views
3

일부 응용 프로그램의 모든 하위 트리 요소를 캡처하려고합니다. 모든 요소를 ​​가져 오는 컴퓨터가 있지만 요소의 절반 (예 : 자식 요소) 를 찾을 수 없다.Windows UI 자동화 - 모든 하위 트리 요소를 캡처하지 않음

FindAll(TreeScope.Subtree, Condition.TrueCondition); 

내가 마이크로 소프트 .NET 프레임 워크 4.5 설치를 시도했지만 문제가 무엇인지 행운

? UI 자동화가 다른 컴퓨터에서 다르게 작동하는 이유는 무엇입니까? UI 자동화가 모든 하위 요소를 가져 오지 못하게하는 클라이언트 컴퓨터에는 무엇이 누락 되었습니까?

클라이언트 컴퓨터에도 Microsoft .NET Framework 4.5 SDK이 필요합니까? 시스템 구성 :

개발자 기계 (작업 파인)

운영 체제 : 윈도우 7 프로페셔널

개발 앱 : 비주얼 스튜디오 2012 프로페셔널

.NET 프레임 워크 : 4.5.2

,

.NET 프레임 워크 SDK : 4.5

클라이언트 컴퓨터는 : 윈도우 7 프로페셔널

.NET 프레임 워크 :

운영 체제를 (자식 요소를 가져올 수 없습니다) : 4.5

.NET Framework SDK : NA

개발자 컴퓨터에는 추가 소프트웨어가 설치되어 있지 않으며 Framework 및 Framework SDK도 Visual Studio 2012에서만 설치되었습니다. 요소를 가져올

코드 나는 마우스 위치에있는 요소를 가져 오기 위해 노력하고있어, 간단하다 : 문제가 존재하는 이유

System.Windows.Point _location = new System.Windows.Point(Cursor.Position.X,Cursor.Position.Y); 

AutomationElement _ele = AutomationElement.FromPoint(_location); 

답변

0

모르겠다을하지만 난 이미 테스트 응용 프로그램에서 본 그 때로 상위 노드를 선택하고 클릭하여 자동화를 통해 볼 수 있도록 하위 노드를 확장해야합니다.

그래서 할 수있는 일은 노드를 선택하고 클릭하여 노드 노드를 검색하기 전에 노드를 확장하는 사용자 정의 찾기 메소드를 만드는 것입니다.

+0

대부분의 경우 (컴퓨터) 확장 가능한 필드뿐만 아니라 보이는 자식 요소 (상태 표시 줄의 레이블 또는 그리드 내부의 요소)도 액세스 할 수 없습니다. 닷넷 프레임 워크 4.5를 설치하려고했지만 행운이 없다. –

+0

우리는 이미 4.5 버전에서 4.6.2 버전까지 .NET의 모든 버전을 사용해 보았습니다. 모든 개발자 머신 (VS가 설치되어있는 곳)에서는 잘 작동하고 있으며, 환경 차이는 무엇입니까? –

+0

사용자 계정 권한과 다를 수 있습니까? 어쩌면 관리자 모드에서 테스트를 실행해야합니다 ... – DLDR