C#调用windows api示例
这是运行结果:
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(, "Hello Win32 API HoverTree", "何问起网", );
} 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
C#调用windows api示例的更多相关文章
- C#调用Windows API(示例:显示任务管理器里的程序名称)
作为初学者来说,在C#中使用API确是一件令人头疼的问题. 在使用API之前你必须知道如何在C#中使用结构.类型转换.安全/不安全代码,可控/不可控代码等许多知识. 在.Net Framework S ...
- C#调用windows API的一些方法
使用C#调用windows API(从其它地方总结来的,以备查询) C#调用windows API也可以叫做C#如何直接调用非托管代码,通常有2种方法: 1. 直接调用从 DLL 导出的函数. 2. ...
- VBS调用Windows API函数
Demon's Blog 忘记了,喜欢一个人的感觉 Demon's Blog » 程序设计 » VBS调用Windows API函数 « 用VBS修改Windows用户密码 在VB中创建和使用 ...
- C#调用Windows API函数截图
界面如下: 下面放了一个PictureBox 首先是声明函数: //这里是调用 Windows API函数来进行截图 //首先导入库文件 [System.Runtime.InteropServices ...
- 【转】用C#调用Windows API向指定窗口发送
一.调用Windows API. C#下调用Windows API方法如下: 1.引入命名空间:using System.Runtime.InteropServices; 2.引用需要使用的方法,格式 ...
- C#中调用Windows API的要点 .
介绍 API(Application Programming Interface),我想大家不会陌生,它是我们Windows编程的常客,虽然基于.Net平台的C#有了强大的类库,但是,我们还是不能否认 ...
- c# 判断窗体是否永在最前(TopMost),调用windows API
许多程序都可以把自身的窗体设为最前显示状态,这个可以参考博客c#让窗体永在最前 调用windows api 将窗体设为topmost.那么如何判断桌面上的一个窗体是否为最前显示状态呢,不光是自己的程序 ...
- c#让窗体永在最前 调用windows api 将窗体设为topmost
有时候应用程序需要将一个窗体始终位于屏幕的最前面,即使切换到其它窗体也能看到该窗体,这样的窗体就叫做TopMost窗体. 用C#制作TopMost窗体之前,首先要了解如何声明SetWindowPos函 ...
- 善于 调用Windows API
前一段时间看见别人做的一个自动填写信息并且点击登录的程序,觉得很有意思. 其实就是在程序中调用Windows的API,那么如何调用,下面就做个简单的介绍. 写的简单粗暴, 不喜轻喷. 0.首先引入名称 ...
随机推荐
- callable object与新增的function相关 C++11中万能的可调用类型声明std::function<...>
在c++11中,一个callable object(可调用对象)可以是函数指针.lambda表达式.重载()的某类对象.bind包裹的某对象等等,有时需要统一管理一些这几类对象,新增的function ...
- 使用 Python SimpleHTTPServer 快速共享文件
近期,想着从一个服务器 向另一个服务器传输文件,但是对其知之甚少,就从别人那里知道一种方法,使用 Python SimpleHTTPServer 快速共享文件. 直接运行:python -m Simp ...
- UICollectionView瀑布流的实现原理(转)
http://ios.jobbole.com/85689/ 和使用 UIScollView 创刊一个瀑布流是一样的方式 7cc829d3gw1f4nq2oc09zj20j00hvq90.jpg 我的 ...
- 提高 Android 代码质量的4个工具
在这篇文章中,我将通过不同的自动化工具如CheckStyle,FindBugs,PMD以及Android Lint来介绍(如何)提高你的安卓代码质量.通过自动化的方式检查你的代码非常有用,尤其当你在一 ...
- iOS 实现快速切换主题详细教程(附上源码)
前言 iOS 实现主题切换,相信在未来的app里也是会频繁出现的,尽管现在只是出现在主流的APP,如(QQ.新浪微博.酷狗音乐.网易云音乐等),但是现在是看颜值.追求个性的年代,所以根据用户喜好自定义 ...
- Oracle 数据库表同步方法浅议
总结一下Oracle数据库表级别的复制同步 一.通过触发器进行表的复制 原理,是监听表上都某一字段进行的DML操作,然后得到DML操作的数据,重新在另一个表上执行DML操作. 优点: 简单,编写一个触 ...
- “HTTPS”安全在哪里?
背景 最近基于兴趣学学习了下 HTTPS 相关的知识,在此记录下学习心得. 在上网获取信息的过程中,我们接触最多的信息加密传输方式也莫过于 HTTPS 了.每当访问一个站点,浏览器的地址栏中出现绿色图 ...
- mac或linux下xampp的mysql配置
在mac 下安装好xampp后,需要在终端命令行操作时,比如输入:mysql -u root -p,未正确配置前不会出现想要的输入密码提示,而是会提示: command not found 原来当你输 ...
- (笔记)Linux内核学习(八)之定时器和时间管理
一 内核中的时间观念 内核在硬件的帮助下计算和管理时间.硬件为内核提供一个系统定时器用以计算流逝的时间.系 统定时器以某种频率自行触发,产生时钟中断,进入内核时钟中断处理程序中进行处理. 墙上时间和系 ...
- js多线程?
http://www.cnblogs.com/o--ok/archive/2012/11/04/JS.html http://blog.csdn.net/nx8823520/article/detai ...