zhangyuang / node-ffi-rs

Implement ffi in Node.js by Rust and NAPI
MIT License
191 stars 7 forks source link

open Windows系统动态库user32.dll #37

Closed zgpio closed 6 months ago

zgpio commented 6 months ago

如果字符串指定完整路径,则函数仅搜索模块的该路径。

如果字符串指定相对路径或模块名称而不指定路径,则函数使用标准搜索策略来查找模块。

zhangyuang commented 6 months ago

没有看懂你的问题

zgpio commented 6 months ago

没有看懂你的问题 就是open打开库必须要使用绝对路径,不支持比方说user32.dll这种系统库名称

zhangyuang commented 6 months ago

open有两种调用方式,传入具体的字符串则根据绝对路径或相对路径进行搜索。如果传入空字符串则加载c系统基础库,但是这个只在linux上试验过,windows上你可以试试。看readme open方法介绍

zgpio commented 6 months ago

open有两种调用方式,传入具体的字符串则根据绝对路径或相对路径进行搜索。如果传入空字符串则加载c系统基础库,但是这个只在linux上试验过,windows上你可以试试。看readme open方法介绍

其实想像napiffi 那样 open('user32.dll') ,会自动找到系统路径中的user32库

zhangyuang commented 6 months ago

mark

zgpio commented 6 months ago

mark

还有个问题, BOOL GetWindowRect( [in] HWND hWnd, [out] LPRECT lpRect ); https://learn.microsoft.com/zh-cn/windows/win32/api/winuser/nf-winuser-getwindowrect

像这种函数可以调用吗

zhangyuang commented 6 months ago

使用指针类型来进行调用

zhangyuang commented 6 months ago

open有两种调用方式,传入具体的字符串则根据绝对路径或相对路径进行搜索。如果传入空字符串则加载c系统基础库,但是这个只在linux上试验过,windows上你可以试试。看readme open方法介绍

其实想像napiffi 那样 open('user32.dll') ,会自动找到系统路径中的user32库

1.0.76试试

zgpio commented 6 months ago
open({
  library: "user32", // key
  path: "user32.dll", // path
});

十分感谢,可以了