发布网友 发布时间:2022-04-26 12:30
共3个回答
热心网友 时间:2022-06-28 06:59
1、C#如何实现Windows API?
你这句话让人难以理解,你是想编WindowsAPI?那是不可能了。既然叫WindowsAPI,那就是给你用的,不是让你编的,这是一;WindowsAPI主要做一些操作系统底层或者对硬件的操作,托管代码无法越级直接操作,除非库中提供了接口。
如果是要应用WidnowsAPI,那么就照2楼的算个用法例子。至于你到底想调什么样的API,你还得查很多文档,包括哪个dll里有哪些函数之类,都要知道
2、API主要应用,用到较多,或较实用的功能有哪些?
这个就不好回答了,主要是看你需求中的功能,如果依靠库中提供的代码无法实现的功能,就可以考虑从WindowsAPI下手。但是C#的库已经相当全面了,例如上面youz的这个例子,其实完全可以使用System.Windows.Forms.Message来实现,不必非要使用WindowsAPI。
热心网友 时间:2022-06-28 07:00
// 这是在C#中调用API之前的声明。声明之后就可以直接使用了
using System.Runtime.InteropServices;
[DllImport("user32", EntryPoint="SendMessage")]
public static extern int SendMessage(
IntPtr hWnd, // 要接收消息的那个窗口的句柄
int wMsg, // 消息的标识符
int wParam,
int lParam
);
// 声明API的参数,具体参数值可查看WINUSER.H文件
const int EM_GETLINECOUNT = 0x00BA;
// 获取文本的行数
int linecnt = SendMessage(this.richTextBox1.Handle, EM_GETLINECOUNT, 0, 0);
热心网友 时间:2022-06-28 07:00
一切都是 API 实现的 包括.net框架!