У меня есть консольное wpf-приложение со следующим классом приложений:
public partial class App : Application
{
[DllImport("kernel32.dll", SetLastError = true)]
static extern bool AttachConsole(uint dwProcessId);
[DllImport("kernel32.dll", SetLastError = true)]
static extern bool FreeConsole();
const uint ATTACH_PARENT_PROCESS = 0x0ffffffff;
protected override void OnStartup(StartupEventArgs e)
{
base.OnStartup(e);
AttachConsole(ATTACH_PARENT_PROCESS);
Console.WriteLine("test1");
FreeConsole();
System.Environment.Exit(0);
}
}
Когда я запускаю его из консоли, появляется текст «test1», но затем курсор консоли просто мигает, и приглашение не появляется, пока я не нажму Enter. Я удалил оператор StartupURI.
Как заставить приложение вести себя как консольное приложение и вернуться к запросу после выполнения? (Windows 7 32 бит).