节点打印机.node不是一个有效的Win32应用程序。

5

我为我的Angular应用程序开发了一个Node API。我的Node应用程序使用node-printer包打印由Node生成的PDF文件,但是当我尝试使用nodemon运行我的应用程序时,出现了错误。

node printer.node 不是一个有效的Win32应用程序

另一台机器上的相同应用程序没有任何错误,两台计算机都是X64位架构。

我还尝试安装了Node JS 32位版本,但仍然出现相同的错误。


分享你的代码 - mehta-rohan
3个回答

11

这对我有用,以如下方式安装打印机:

npm install printer --build-from-source

这对我来说有效(node 12.x.x & printer (tojocky/node-printer 0.4.0)) - DennyHiu

0
经过多次尝试,我已经删除了一个应用程序中的 node_modules 文件夹,并通过执行 npm install 命令重新安装所有模块来解决问题。

并不是真正的解决方案。 - francojay

0

你好,让我来介绍一下2022年我的网站上发生了什么。

如果你要在Electron应用程序中使用npm install printer,那么你正在使用一个被Electron视为本地模块的模块。

由于Electron具有与您用于安装打印机的给定Node.js二进制文件不同的应用程序二进制接口(ABI),因此我们需要为Electron重新构建本地模块(在这种情况下是打印机)。

欲了解更多详细信息,请查看this

  1. 首先,在您的项目中安装electron-rebuild。npm i electron-rebuild

  2. 第二,使用例如npm i printer安装本地模块

  3. 第三,在安装本地模块后,执行./node_modules/.bin/electron-rebuild以重新构建本地模块。


删除 node_modules 并重新安装不会解决问题。 - Chuang JY

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接