kihlh / hmc-win32

HMC Easier Access to System APIs 简化连接winapi的过程的node c++模块
https://kihlh.gitbook.io/hmc/
MIT License
74 stars 10 forks source link
windows

HMC-win32: 更加轻松的连接系统API

系统环境 系统环境 系统环境 系统环境

You are currently viewing the Chinese version of the introduction. You can click 【README】 to view the English version of this README.

img

帮助

我们提供了多份编程语言帮助文档 可供了解api的调用,但是他可能更新时间不及时,因为api非常多,需要编写文档是个不小的工程,hmc使用的是 TypeScript 编写的 并且他预带了一份类型声明 可以让您在主流的 ide编辑器 中显示类型 以及用法

代码参考性 : CPP 代码已经分离为独立 模块详见 hmc-module

相关的链接 :

Help: 【编程帮助】 NPM: 【hmc-win32】 【hmc-autoit】 Source: 【c++源代码】 【AutoitX】 【重构版】

子集 (Subset)

autoit:hmc-autoit 【npm】 【源代码】

hmc-autoit 是hmc的子集 他包含了一些列调用 autoitX api的函数,并且和hmc的优点一样,不需要再次编译和ffi魔法


我为什么要使用这个模块?

为您总结了几种功能的分类

installation

npm i hmc-win32

How to call

let HMC = require("hmc-win32");
console.log("App:Admin=>",HMC.isAdmin())
//App:Admin=> true

console.log("SystemIdleTime=>",HMC.getSystemIdleTime())
//SystemIdleTime=> 25

console.log("escapeEnvVariable=>",HMC.escapeEnvVariable("%AppData%\hmc-win32"))
//escapeEnvVariable=> C:\Users\...\AppData\Roaming\hmc-win32

console.log("Clipboard=>",setClipboardFilePaths(["D:/1.jpg"]),HMC.getClipboardFilePaths())
//Clipboard=> true , ["D:/1.jpg"]

In TypeScript using the

import  HMC = require("hmc-win32");

功能概览

窗口操作


进程控制


状态栏


系统操作


电源控制


注册表编辑


键盘鼠标USB


文件链接/快捷方式


WebView2


变量环境(Environment)


网络 (net)


API中间层


其他

重新构建

HMC所有API采用winapi+nodeapi实现,因此无需重新编译(允许运行在node8以上环境 node6.14.2 需要自行使用esbuld编译),如果您需要对源代码进行修改请使用node-gyp rebuild 进行编译,这需要有一定的C/C++基础,编译工具使用node-gyp即可,需要使用到的工具如下:

一些常见问题

风险告知