c# spy++ 예제

최근에 데스크톱 응용 프로그램에서 몇 가지 낮은 수준의 UI 자동화를 수행하기 위해 C # P / 호출 메커니즘으로 작업했습니다. 지정된 컨트롤 창의 경우 모든 자식 컨트롤 창의 핸들을 가져오는 도우미 기능이 필요했습니다. 예를 들어 아래 이미지에서 더미 WinForm 응용 프로그램이 있습니다. 양식에는 4개의 자식 창이 있습니다(패널 컨트롤이 색칠되어 볼 수 있음). Spy++ 도구는 WinForm의 핸들이 611150이고 네 자식의 핸들이 111142, 121112, 1210CA 및 1C104C임을 보여줍니다. 콘솔 앱은 프로그래밍 방식으로 자식을 얻는 결과를 보여줍니다. 이 메서드는 부모 요소에서 모든 자식 요소를 가져옵니다.: 예를 들어 창(부모)에서 텍스트 상자(자식)의 핸들을 얻을 수 있습니다. 이 문서에서는 C#을 사용하여 다른 프로그램을 제어, 사용자 지정 및 확장하는 방법에 대해 다겠습니다. 예제 시나리오로 우리는 사용자 지정 기능으로 기본 Windows 프로그램 메모장을 확장 할 것입니다. 이 튜토리얼에서 나는 메모장에 몇 가지 텍스트를 보내드립니다 – 그것은 단지 예이지만,이 방법은 모든 프로그램에 대해 작동합니다. 기본적으로 프로세스에서 창의 핸들을 얻은 다음 FindWindowEx를 사용하여 자녀의 핸들 (텍스트 상자)을 가져옵니다.

마지막으로 해당 자식에게 텍스트를 보냅니다. 그리고 그게 다야. 마이크로 소프트 스파이 ++ 윈도우 파인더 도구의 완전한 재 생성. 나는 내 창 파인더를 실용적 으로 만들기 위해 가까운 장래에 다른 기사를 쓸 계획이다. 샘플 코드가 모든 독자에게 도움이 되기를 바랍니다. “모방은 아첨의 진지한 형태”라고합니다. 나는 마이크로 소프트 엔지니어에 대한 큰 존경을 가지고 내 데모 응용 프로그램은 저렴한 모방하지만 일이 정기적으로 완전히 문서화 Win32 API를 사용하여 수행 할 수있는 방법을 보여주는 효과적인 하나가 아니라 는 것을 바랍니다. 이 루틴은 “검색 창” 대화 상자를 시작합니다.

대화 상자는 사용자가 “확인” 또는 “취소” 단추를 클릭할 때까지 반환되지 않는 모달 대화 상자입니다. 그런 다음 SearchWindowDialogproc 대화 상자 proc가 대화 상자에 대한 메시지 처리를 대신합니다. 창 찾기 기능 외에도 대화 상자는 본질적으로 매우 간단하며 대부분의 메시지를 시스템에서 제공하는 기본 대화 상자로 남깁니다. 이 작업은 사용자가 WM_COMMAND 메시지가 SearchWindowDialogC로 전송되는 시점에 황소 눈 이미지의 왼쪽 마우스 버튼을 누를 때만 시작됩니다 . – 우리는 조작 할 프로그램을 알아야할.

 
Mobile Site

Follow Us On Facebook Follow Us On Twitter Follow Us On Google + Follow Us On LinkedIn Follow Us On You Tube Copyright 2019 © All Rights Reserved. Powered by - ARE Network Solutions