в приложении Windows, я хочу, чтобы появилась консоль, которая могла или не могла отображать данные из самого приложения, но также может использоваться для ввода в дополнительной информации, или изменений значений без необходимости самого приложения (это 50% утилита 50% отладка)Приложение Windows C# (winform), как отображать консоль на разных потоках, и закрывать отдельно
теперь некоторые из вопросов, которые я прибыл в
- закрывая консоль закрывает приложение
- , если консоль запущена ING-то (в ожидание подсказки) окно не может запустить
- же для оконных работают, если его работа консоль не может запустить
здесь является немного коды работы с консолью
namespace Kproject
{
public partial class KGUI : Form
{
public KGUI()
{
InitializeComponent();
}
[DllImport("kernel32.dll", SetLastError = true)]
[return: MarshalAs(UnmanagedType.Bool)]
static extern bool AllocConsole();
private void Form_Keypress(object sender, KeyPressEventArgs e)
{
switch (e.KeyChar)
{
case 'c':
AllocConsole();
ConsoleCode();
break;
case 'b':
Console.Beep(2000, 100);
break;
case 'v':
string s = Console.ReadLine();
Console.WriteLine(s);
break;
default:
Console.Beep(6000, 50);
break;
}
}
private void ConsoleCode()
{
string s = "";
while(s != "exit"){
s = Console.ReadLine();
switch (s)
{
case "c1":
/*
* do task
*/
break;
case "c2":
/*
* do task
*/
break;
case "c3":
/*
* do task
*/
break;
default:
Console.Beep(100, 300);
break;
}
}
}
}
Включение c приведет к поднимет консоль и заблокирует использование приложения до тех пор, пока не будет напечатан выход, поэтому я хотел бы просто сидеть тихо в спине, пока он не понадобится, или для его закрытия, без необходимости закрывать вся программа
Как я могу запустить консоль без ее противоречия с приложением и решить проблемы, отмеченные ранее.
Хорошо, вы забыли задать вопрос, хотя ... – tnw
и теперь он имеет один. – Kaylee
Возможно, вам гораздо лучше не использовать настоящую консоль, а создать новую форму, на которой есть только текстовое поле (возможно, одно для отображения вывода и одно для ввода), которое вы используете вместо консоли. – Servy