我有一个电子应用程序,当我构建它进行分发时,实际的应用程序代码和构建文件夹位于app.asar文件中。在应用运行时,我必须将app.asar中的某些文件复制到用户的计算机上,无论用户选择何处,并使用代码进行修改。
问题在于,每当复制文件时,该文件将变为只读状态,因此无法对其进行写入。有什么办法解决吗?
答案 0 :(得分:1)
我也遇到了这个问题,我认为问题是只有某些fs
方法被移植到了asar
才能很好地工作。根据{{3}}
借助Electron中的特殊补丁,
fs.readFile
和require
之类的Node API将asar
存档视为虚拟目录,并将其中的文件视为文件系统中的普通文件。
因此,我认为解决方案是使用asar
从fs.readFile
手动复制文件的内容,然后将其转储到所需的文件中。我今天将尝试使用此方法,并希望发布包含一些代码的更新。