이 C# 코드를 EXE 파일로 컴파일하고 Windows 명령 셸에서 실행하면 잘 실행됩니다. 프롬프트를 출력하고, 일부 사용자 입력에 대해 동일한 줄에서 대기 한 다음 해당 입력을 반향합니다. PowerShell v3 셸에서 실행하면 정상적으로 실행됩니다. 그러나 PowerShell ISE V3에서이 동일한 EXE 파일을 실행하면 Write
의 출력이 절대로 나오지 않고 ReadLine
에 중단됩니다. (가 나중에 WriteLine
하였다 경우 제쳐두고, 그것은 Write
출력을 방출한다.)PowerShell ISE가이 C# 프로그램에서 멈춘 이유는 무엇입니까?
namespace ConsoleApplication1
{
class Program
{
static void Main(string[] args)
{
System.Console.Write("invisible prompt: ");
var s = System.Console.ReadLine();
System.Console.WriteLine("echo " + s);
}
}
}
이는 ISE의 버그 나 작동하도록 조절하는 몇 가지 특성이있다 ...?
관련성이 있지만 Powershell에서 특정 문제를 구현할 수있는 * Keyboard Polling *이라고도합니다. 아마도 Console.ReadLine()이 폴링을 사용하여 Powershell로 인해 호출되었을 때 충돌을 야기했을 수 있습니다. – Greg