我有一个标准的Windows窗体应用程序,我需要一个解决方案来打开Windows窗体应用程序设置中的控制台.我想出了这个解决方案:
Public Class Win32
<DllImport("kernel32.dll")>
Public Shared Function AllocConsole() As Boolean
End Function
<DllImport("kernel32.dll")>
Public Shared Function FreeConsole() As Boolean
End Function
' ...
Win32.AllocConsole()
Console.WriteLine("Test")
Run Code Online (Sandbox Code Playgroud)
使用上面的P/Invoke函数,我可以打开一个控制台,而我的应用程序不是"控制台应用程序".
我现在遇到的问题是,当我关闭控制台窗口时,它退出我的程序并关闭所有窗体和Windows.有没有办法阻止用户关闭控制台窗口,或者在控制台窗口关闭时阻止程序退出?(我可以使用以编程方式关闭控制台Win32.FreeConsole().)
我现在有一个console application使用下图所示的设置.但是现在我希望打开多个表单,console所以我想知道我是否可以以某种方式打开多个表单或打开console一个Windows Forms Application

下面的代码行将每一行添加到列表框的每个索引中。
ListBox1.Items.AddRange(CType(TabControl1.SelectedTab.Controls.Item(0), RichTextBox).Lines)
Run Code Online (Sandbox Code Playgroud)
但是,如果我希望使用ScintillaNet DLL执行与下面的行相同的功能,那么这是可行的。我已经尝试使用 dll 进行同样的操作,但它并不完全相同。这是我测试的代码:
ListBox1.Items.AddRange(CType(TabControl1.SelectedTab.Controls.Item(0), ScintillaNet.Scintilla).Lines)
Run Code Online (Sandbox Code Playgroud)
很抱歉我问了这么愚蠢的问题,但我是 ScintillaNet DLL 的菜鸟。
任何帮助将不胜感激。