Node.js 使用electronjs将目录从外部驱动器复制到本地文件夹的最佳方法?

Node.js 使用electronjs将目录从外部驱动器复制到本地文件夹的最佳方法?,node.js,electron,fs,child-process,fs-extra,Node.js,Electron,Fs,Child Process,Fs Extra,只是想知道是否有人试图将目录从外部驱动器(通过USB连接)复制到本地文件夹 我使用ElectronJS,因此我可以使用我的JavaScript、HTML/CSS技能创建桌面应用程序,而不用使用C语言。(即C#或C++)有了ElectronJS,就不用担心太多了 以下是我迄今为止尝试过的事情列表: 基本fs.copyFile(初始使用copyFile,然后在目录中循环以复制所有文件) 虽然在我输入fs时Visual Studio代码将moveSync作为一个建议,但fs.moveSync不是

只是想知道是否有人试图将目录从外部驱动器(通过USB连接)复制到本地文件夹

我使用ElectronJS,因此我可以使用我的JavaScript、HTML/CSS技能创建桌面应用程序,而不用使用C语言。(即C#或C++)有了ElectronJS,就不用担心太多了

以下是我迄今为止尝试过的事情列表:

  • 基本fs.copyFile(初始使用copyFile,然后在目录中循环以复制所有文件)

虽然在我输入fs时Visual Studio代码将moveSync作为一个建议,但fs.moveSync不是一个函数。(ctrl+空格)

  • 使用子进程函数使用命令行复制文件。 代码是:

然后与布朗塞里菲捆绑在一起。然后将Bundle.js导入html文件,单击按钮即可调用测试函数。我知道现在的命令是ipconfig,这只是用来查看是否可以执行命令。可能是因为未定义process.exec

  • 使用节点hid节点模块从外部驱动器读取和传输数据
此模块中公开的函数也被报告为未定义。我考虑这个用例的时间更长了,我认为一个简单的复制过程就足够了,因为可以像文件浏览器中的任何其他文件夹一样访问外部驱动器

不幸的是,所有这些都失败了,我花了一天的大部分时间寻找替代模块和/或解决方案

提前感谢您,因为我们将非常感谢您为我们提供的任何帮助

谢谢

Patrick

npm包应该能解决您的问题

它具有以下功能:

移动文件或目录,甚至跨设备移动


最后在我的preload.js中添加了以下内容:

window.require = require;
它目前可以使用,但将被贬值。
现在我将使用此方法,并在必要时进行其他更新。

请澄清为什么您尝试的所有方法都失败了(通过回答您的问题)
fs.copyFile()
是最可移植的,除非您试图访问受操作系统保护的位置,否则应该不会有问题。因此,错误消息将很有帮助。另外,向我们展示您使用的代码。谢谢@编辑完成了。你在哪里执行这段代码?在渲染器中执行的代码无法访问模块,除非您使用nodeIntegration:truepreloadscript我正在使用nodeIntegration:true并且我正在使用Browserify将我的JavaScript代码捆绑到bundle.js中。然后在我的html中引用此文件。i、 e.
也尝试过,但结果与fs相似。即未定义功能。在electron项目中使用Browserify是不是一种迂回的方式和后门来处理node js是正确的方式?你用electron remote尝试过吗?electron remove根据
 var process = require('child_process')

 window.test = function(){
 process.exec('ipconfig', function(err, stdout, stderr){
     if(err){
         console.log(err);
     }else{
         console.log(stdout)
     }
 })
}
window.require = require;