C#调用windows api示例

这是运行结果:Api函数是构筑Windws应用程序的基石,每一种Windows应用程序开发工具,它提 供的底层函数都间接或直接地调用了Windows API函数,同时为了实现功能

大家好,又见面了,我是全栈君,今天给大家准备了Idea注册码。

全栈程序员社区此处内容已经被作者隐藏,请输入验证码查看内容
验证码:
请关注本站微信公众号,回复“验证码”,获取验证码。在微信里搜索“全栈程序员社区”或者“www_javaforall_cn”或者微信扫描右侧二维码都可以关注本站微信公众号。

这是运行结果:

hovertree

 

Api函数是构筑Windws应用程序的基石,每一种Windows应用程序开发工具,它提 
供的底层函数都间接或直接地调用了Windows API函数,同时为了实现功能扩 
展,一般也都提供了调用WindowsAPI函数的接口, 也就是说具备调用动态连接 
库的能力。Visual C#和其它开发工具一样也能够调用动态链接库的API函 
数。.NET框架本身提供了这样一种服务,允许受管辖的代码调用动态链接库中实 
现的非受管辖函数,包括操作系统提供的Windows API函数。它能够定位和调用输 
出函数,根据需要,组织其各个参数(整型、字符串类型、数组、和结构等等)跨 
越互操作边界。 

参考:http://hovertree.com/h/bjaf/tc63n4t2.htm

using System;
using System.Runtime.InteropServices;
using System.Windows.Forms;

namespace HoverTreeWinForm
{
    public partial class FormHewenqi : Form
    {
        /// <summary>
        /// http://hovertree.com/h/bjaf/v4y0b2l6.htm
        /// </summary>
        /// <param name="h"></param>
        /// <param name="m"></param>
        /// <param name="c"></param>
        /// <param name="type"></param>
        /// <returns></returns>

        [DllImport("User32.dll")]
        public static extern int MessageBox(int h, string m, string c, int type);
        public FormHewenqi()
        {
            InitializeComponent();
        }

        private void button_hewenqi_Click(object sender, EventArgs e)
        {
            MessageBox(0, "Hello Win32 API HoverTree", "何问起网", 4);
        }

        private void linkLabel_help_LinkClicked(object sender, LinkLabelLinkClickedEventArgs e)
        {
            System.Diagnostics.Process.Start("http://hovertree.com/h/bjaf/v4y0b2l6.htm");
        }
    }
}

转载自:http://hovertree.com/h/bjaf/psjdasa2.htm

源码下载:http://pan.baidu.com/s/1bnPPgL5

http://roucheng.cnblogs.com/

上面的示例,弹出信息框窗口并没有指定父窗口句柄,所以弹出后,不用关掉就可以操作主窗体,比如你可以多次点击按钮弹出多个信息框。如果要弹出模式对话框,需先获取当前窗体的句柄,请参考:http://hovertree.com/h/bjaf/8vw6i2yr.htm

模式对话框演示:  http://pan.baidu.com/s/1bnNN2b1 密码: dq8u

源码下载:https://github.com/shangyuxian/HoverTree

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/120657.html原文链接:https://javaforall.net

赞 (0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 新人学习EJB!ejb到底是什么?[通俗易懂]

    1. 我们不禁要问,什么是”服务集群”?什么是”企业级开发”? 既然说了EJB是为了”服务集群”和”企业级开发”,那么,总得说说什么是所谓的”服务集群”和”企业级开发”吧!这个问题其实挺关键的,因为J2EE中并没有说明白,也没有具体的指标或者事例告诉广大程序员什么时候用EJB什么时候不用。于是大家都产生一些联想,认为EJB”分布式运算”指得是”负载均衡”提高系统的运行效率

    2022年4月5日
  • 2015第14周一

    2015第14周一

    2021年9月4日
  • des的加密运算法则_des加密算法例题详解

    des的加密运算法则_des加密算法例题详解一、加密算法的分类1.对称加解密算法a.通信双方同时掌握一个密钥,加密解密都是由一个密钥完成的(即加密密钥等于解密密钥,加解密密钥可以相互推倒出来)。b.双方通信前共同拟定一个密钥,不对第三方公开。c.不具有个体原子性,一个密钥被共享,泄漏几率增大2.公私钥加解密算法a.通信双方掌握不同的密钥,不同方向的加解密由不同的密钥完成。二、对称加密算法的代表—-DES加密算法原理:该算法是一个利用56…

    2022年10月25日
  • 课程实验 【八路抢答器】

    课程实验 【八路抢答器】基于外部中断课程实验【八路抢答器】#defineucharunsignedchar#defineuintunsignedintsbitLED_main=P3^6;sbitKey=P3^0;ucharcodetabie[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f};ucharmain_go=0;//主线voidInit_E…

    2022年10月20日
  • mysql bulkupdate_django_bulk_update源码分析

    mysql bulkupdate_django_bulk_update源码分析##django_bulk_update源码分析这个第三方插件的体量几乎只相当于工作时两三天的代码量了,是一个比较容易开始进行源代码阅读的模块,阅读完这个代码对自定义的进行django拓展也是一个相当好的借鉴###django_bulk_update文件结构django_bulk_update在被调用时实际只有四个文件,分别是1.\_\_init__.py2.helper.py3.man…

    2022年10月29日

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号