您的位置:首页 > 其它

使用API屏蔽掉控制台应用程序的关闭按钮[转]

2009-05-17 16:56 369 查看
using System;

using System.Diagnostics;

using System.Runtime.InteropServices;

namespace ConsoleApplication3

{

class Program

{

[DllImport("user32.dll", EntryPoint = "FindWindow")]

extern static IntPtr FindWindow(string lpClassName, string lpWindowName);

[DllImport("user32.dll", EntryPoint = "GetSystemMenu")]

extern static IntPtr GetSystemMenu(IntPtr hWnd, IntPtr bRevert);

[DllImport("user32.dll", EntryPoint = "RemoveMenu")]

extern static IntPtr RemoveMenu(IntPtr hMenu, uint uPosition, uint uFlags);

static void closebtn()

{

IntPtr windowHandle = FindWindow(null, Process.GetCurrentProcess().MainModule.FileName);

IntPtr closeMenu = GetSystemMenu(windowHandle, IntPtr.Zero);

uint SC_CLOSE = 0xF060;

RemoveMenu(closeMenu, SC_CLOSE, 0x0);

}

static void Main(string[] args)

{

closebtn();

Console.WriteLine("Starting...");

Console.Read();

}

}

}



内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: