Win32Net 1.2.0
.NET 5.0
.NET Core 3.1
.NET Framework 4.0
There is a newer version of this package available.
See the version list below for details.
See the version list below for details.
dotnet add package Win32Net --version 1.2.0
NuGet\Install-Package Win32Net -Version 1.2.0
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="Win32Net" Version="1.2.0" />
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add Win32Net --version 1.2.0
The NuGet Team does not provide support for this client. Please contact its maintainers for support.
#r "nuget: Win32Net, 1.2.0"
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
// Install Win32Net as a Cake Addin
#addin nuget:?package=Win32Net&version=1.2.0
// Install Win32Net as a Cake Tool
#tool nuget:?package=Win32Net&version=1.2.0
The NuGet Team does not provide support for this client. Please contact its maintainers for support.
介绍
Win32API的.NET下封装,包含
1: 常用win32的API的net封装
2:鼠标、键盘、热键hook钩子模块,
3:模拟键盘输入文字(支持各种字符文字、不同语言的文字)、模拟鼠标点击移动滚动等操作
4:延迟函数Delay方法
5.系统硬件信息
版本更新
v1.0.1
添加net40;net45;net48,暂时移除net6框架
v1.2.0
1.添加netcoreapp3.1;net6.0-windows框架支持;
2.增加Shell的API
3.增加系统硬件信息,CPU、内存使用率
安装教程
- Nuget搜索win32net,安装即可
使用说明
各种常用api
Win32命名空间下包含各种常用api,如:win32.User32.GetDesktopWindow()//获取桌面窗口句柄;
鼠标键盘钩子
Win32.Hooks,命名空间下包含鼠标键盘热荐的钩子相关类。
例如鼠标钩子:
Win32.Hooks.MouseHook mouseHook = new Hooks.MouseHook();//实例化鼠标钩子对象
mouseHook.LeftDown += MouseHook_LeftDown;//鼠标左键按下的事件监听回调方法
mouseHook.Start();//开始监听
mouseHook.Stop();//停止监听
Win32.Input.Keyboard.KeyDown(System.Windows.Forms.Keys.Enter);//按回车键
Win32.Input.Mouse.LeftClick(150, 100);//鼠标左键单击
Win32.Input.Wait.Delay(1500);//延迟1500毫秒
Win32.Input.Keyboard.Type("输入文字1234abc");//模拟输入文字,支持各种语言文字字符
全局快捷键注册
//WPF 窗口句柄
//IntPtr hwnd = new WindowInteropHelper(WPFWindow对象).Handle;
//winform 窗口句柄
IntPtr hwnd = this.Handle;
//实例化热键对象,需要一个句柄,用于接收消息
Win32.Hooks.SystemHotKey systemHotKey = new Win32.Hooks.SystemHotKey(hwnd);
//热键id,要求唯一
int hotKeyId = 5000;
//注册Alt+Q快捷键
systemHotKey.AddHotKey(hotKeyId, Win32.KeyModifiers.Alt, Keys.Q,
() =>
{
MessageBox.Show("你按了Alt+Q快捷键");
}
);
//注册ESC快捷键
systemHotKey.AddHotKey(hotKeyId + 1, Win32.KeyModifiers.None, Keys.Escape,
() =>
{
this.Close();
}
);
系统硬件信息
SystemInfo systemInfo = new SystemInfo();
richTextBox1.AppendText("操作系统:" + systemInfo.operatingSystem.Caption + "\n");
richTextBox1.AppendText("系统ID:" + systemInfo.operatingSystem.SerialNumber + "\n");
richTextBox1.AppendText("操作系统平台:" + systemInfo.operatingSystem.OSLevel + "\n");
richTextBox1.AppendText("系统安装时间:" + systemInfo.operatingSystem.InstallDate + "\n");
richTextBox1.AppendText("系统最近启动时间:" + systemInfo.operatingSystem.LastBootUpTime + "\n");
richTextBox1.AppendText("系统时间:" + systemInfo.operatingSystem.LocalDateTime + "\n");
richTextBox1.AppendText("CPU:" + systemInfo.processor.Name + "\n");
richTextBox1.AppendText("CPU厂商:" + systemInfo.processor.Manufacturer + "\n");
richTextBox1.AppendText("CPU序列号:" + systemInfo.processor.SerialNumber + "\n");
richTextBox1.AppendText("物理内存:" + systemInfo.memory.TotalPhysicalMemory + "\n");
// CPU使用率,一个回调,1秒一次,可取消
SystemInfo.CpuUsageOnChanged
// 内存使用率,需要自己间隔一定时间获取,如200毫秒
Win32.SystemInfo.MemoryUsage + "%";
Product | Versions |
---|---|
.NET | net5.0 net5.0-windows net5.0-windows7.0 net6.0 net6.0-android net6.0-ios net6.0-maccatalyst net6.0-macos net6.0-tvos net6.0-windows net6.0-windows7.0 net7.0 net7.0-android net7.0-ios net7.0-maccatalyst net7.0-macos net7.0-tvos net7.0-windows net7.0-windows7.0 |
.NET Core | netcoreapp3.1 |
.NET Framework | net40 net403 net45 net451 net452 net46 net461 net462 net463 net47 net471 net472 net48 net481 |
Compatible target framework(s)
Additional computed target framework(s)
Learn more about Target Frameworks and .NET Standard.
-
.NETCoreApp 3.1
- System.Management (>= 6.0.0)
-
.NETFramework 4.0
- No dependencies.
-
.NETFramework 4.5
- No dependencies.
-
.NETFramework 4.6.1
- No dependencies.
-
.NETFramework 4.8
- No dependencies.
-
net5.0-windows7.0
- System.Management (>= 6.0.0)
-
net6.0-windows7.0
- System.Management (>= 6.0.0)
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.