读书人

怎么让C# 控制台程序关闭按钮无效

发布时间: 2012-03-15 11:50:38 作者: rapoo

如何让C# 控制台程序关闭按钮无效
我主要是想当用户点击控制台程序的右上角时,控制台程序不关闭,必须输入指定的字符,控制台才关闭。请高手帮忙!

[解决办法]
用FindWindow查找控制台窗口,用找到后的窗体句柄调用GetSystemMenu,然后调用RemoveMenu把关闭窗体移除后关闭控钮就灰到不可用了.
[解决办法]
Private Shared SC_CLOSE As Integer = &HF060
Private Shared MF_BYCOMMAND As Integer = &H0

<DllImport( "USER32.DLL ")> _
Private Shared Function _
GetSystemMenu(ByVal argWnd As IntPtr, ByVal argRevert As Integer) As IntPtr
End Function

<DllImport( "USER32.DLL ")> _
Private Shared Function _
RemoveMenu(ByVal argMenu As IntPtr, ByVal argPosition As Integer, ByVal wFlags As Integer) As Integer
End Function

调用:
Dim aoMenu As IntPtr = GetSystemMenu(Me.Handle, 0)
RemoveMenu(aoMenu, SC_CLOSE, MF_BYCOMMAND)

读书人网 >C#

热点推荐