• 控制台——对WIN32 API的使用(user32.dll)


    Win32 API概念:即为Microsoft 32位平台的应用程序编程接口(Application Programming Interface)。所有在Win32平台上运行的应用程序都可以调用这些函数。

    Win32 API作用:应用程序可以充分挖掘Windows的32位操作系统的潜力。 Mircrosoft的所有32位平台都支持统一的API,包括函数、结构、消息、宏及接口。使用 Win32 API不但可以开发出在各种平台上都能成功运行的应用程序,而且也可以充分利用每个平台特有的功能和属性。

    Win32 API分:1、窗口管理 2、窗口通用控制 3、Shell特性 4、图形设备接口 5、系统服务 6、国际特性 7、网络服务 
     
    Win32 API使用:C#中使用DllImport关键字引入包含非托管方法的 DLL 的名称。例如user32.dll。
     
    user32.dll概念:user32.dll是Windows用户界面相关应用程序接口,用于包括Windows处理,基本用户界面等特性,如创建窗口和发送消息。
     
    通过案例演示如何使用user32.dll关闭“MyLove”这个程序,首先引入命名空间
    1 using System.Windows.Forms;
    2 using System.Runtime.InteropServices;

    通过DllImport引入user32.dll,这是核心代码

     1 [DllImport("User32.dll", EntryPoint = "FindWindow")]
     2 private static extern int FindWindow(string lpClassName, string lpWindowName);
     3 private static void CloseWin()
     4 {
     5     const int WM_CLOSE = 0x10;   //关闭
     6     const uint WM_DESTROY = 0x02;
     7     const uint WM_QUIT = 0x12;
     8     const int BM_CLICK = 0xF5;  //单击
     9     IntPtr Window_Handle = (IntPtr)FindWindow(null, "MyLove");//查找所有的窗体,看看想查找的句柄是否存在,Microsoft Word  句柄              
    10     if (Window_Handle == IntPtr.Zero)   //如果没有查找到相应的句柄
    11     {
    12         MessageBox.Show("没有找到窗体");
    13     }
    14     else    //查找到相应的句柄
    15     {
    16         SendMessage(Window_Handle, WM_CLOSE, 0, 0);   //关闭窗体
    17     }
    18 }

    控制台住函数入口处进行调用

    1 static void Main(string[] args)
    2 {
    3     Console.Title = "关闭其他窗体";
    4     CloseWin();
    5 }
     
     
     
  • 相关阅读:
    asp.net 文件下载
    net 数据库连接详解 相当经典啊
    取值:webconfig中的key
    通过监听的端口查找本机进程和服务思路
    以系统服务运行某个程序
    测底根除Windows流氓软件开机自动运行
    使用Wireshark在主机上抓取远程主机的数据流量
    记录Windows远程登录日志
    证书不匹配发出告警的解决方法
    WPS office云同步图标彻底删除方法
  • 原文地址:https://www.cnblogs.com/wuqiuxue/p/7667593.html
Copyright © 2020-2023  润新知