programing

계속하려면 아무 키나 누르십시오.

minimums 2023. 4. 8. 08:17
반응형

계속하려면 아무 키나 누르십시오.

마이크로소프트의 문서에 따르면read-host사용자가 입력을 입력하고 Enter 키를 눌러 계속할 수 있습니다.계속하려면 아무 키나 누르십시오. (잠깐만...)열쇠는 어디 있어?!

이 일을 해낼 방법이 있을까요?뭐랄까read-char?

저는 "단일 문자 입력"과 "파워셸 입력"을 검색해 보았지만 별로 운이 따르지 않았습니다.그리고 몇 가지 스택 오버플로우 질문이 유용하게 사용되었습니다.read-host"아무 키나 누르세요"에는 효과가 없습니다.". "

이게 제가 쓰는 거예요.

Write-Host -NoNewLine 'Press any key to continue...';
$null = $Host.UI.RawUI.ReadKey('NoEcho,IncludeKeyDown');

MSDOS를 에뮬레이트하기 위한 작은 Powershell 함수를 만들었습니다.pausePowershell ISE를 실행하고 있는지 ISE 이외의지를 처리합니다.(ReadKeypowershell ISE에서는 동작하지 않습니다).Powershell ISE를 실행할 때 이 함수는 Windows를 엽니다.MessageBox이것은 때때로 혼란스러울 수 있습니다.왜냐하면MessageBox항상 주목을 받는 것은 아닙니다.어쨌든, 이렇게 하자.

사용방법:pause "Press any key to continue"

함수 정의:

Function pause ($message)
{
    # Check if running Powershell ISE
    if ($psISE)
    {
        Add-Type -AssemblyName System.Windows.Forms
        [System.Windows.Forms.MessageBox]::Show("$message")
    }
    else
    {
        Write-Host "$message" -ForegroundColor Yellow
        $x = $host.ui.RawUI.ReadKey("NoEcho,IncludeKeyDown")
    }
}

를 체크해 주세요.ReadKey()의 메서드System.Console.NET 클래스그 정도면 충분할 것 같아요.

http://msdn.microsoft.com/en-us/library/system.console.readkey(v=vs.110).aspx

예:

Write-Host -Object ('The key that was pressed was: {0}' -f [System.Console]::ReadKey().Key.ToString());

언급URL : https://stackoverflow.com/questions/20886243/press-any-key-to-continue

반응형