PowerShell을 통해 실행 중인 애플리케이션을 어떻게 활성 창으로 설정할 수 있나요?

PowerShell을 통해 실행 중인 애플리케이션을 어떻게 활성 창으로 설정할 수 있나요?

바탕화면의 스크린샷을 찍으려면이 조각, 내 신청서가 캡처된 이미지에 있는지 확인하고 싶습니다.

해당 코드가 분당 실행될 때 내 애플리케이션이 다른 애플리케이션보다 먼저 실행될 것이라고 어떻게 확신할 수 있습니까? 코드는 PowerShell 조각이므로 스크린샷을 찍을 때 응용 프로그램을 일시적으로 활성화하기 위해 코드와 혼합할 생각이었습니다.

답변1

무엇을 시도해 보셨나요?

코드는 어디에 있나요?

어떤 오류가 있습니까?

기본 PowerShell은 GUI 관리 도구로 설계되지 않았습니다. 그렇게 할 수 있지만 이를 수행할 수 있는 기본 제공 cmdlet은 없습니다.

둘 중 하나에 기대야 해SendKeys, .NET 또는 타사부가 기능 또는 도구.

간단한메모장SendKeys의 예: (응용 프로그램이 최소화되지 않은 한)... 따라서 메모장을 시작하고 다른 응용 프로그램을 클릭하여 전경으로 울린 다음 아래 코드를 실행하면 메모장이 전경으로 연결됩니다.

[void] [System.Reflection.Assembly]::LoadWithPartialName("'Microsoft.VisualBasic") 
[Microsoft.VisualBasic.Interaction]::AppActivate((Get-Process -Name notepad).MainWindowTitle)

… 최소화하면 작동하지 않습니다. 최소화된 창을 복원하려면 더 많은 코드가 필요합니다. 그건 너에게 숙제로 남겨두겠다.

관련 정보