WMutong 最近的时间轴更新
WMutong

WMutong

这个人很懒,什么也没留下
🏢  程序员
V2EX 第 295657 号会员,加入于 2018-03-01 18:14:46 +08:00
这个人很懒,什么也没留下
朋友们有什么想要用的 pc 端的小工具吗
分享创造  •  WMutong  •  229 天前  •  最后回复来自 WMutong
6
electron 运行 报错, spawn \electron.exe EACCES
Electron  •  WMutong  •  2022-08-12 14:49:08 PM  •  最后回复来自 WMutong
1
electron 生产环境通过 cross-env 设置 NODE_ENV 失败
Electron  •  WMutong  •  2022-08-03 07:02:32 AM  •  最后回复来自 kongkx
5
v 社的大佬们,咨询个 pc chrome 浏览器主页被篡改的问题
问与答  •  WMutong  •  2020-09-04 15:50:56 PM  •  最后回复来自 WMutong
3
一个关于 function(){}()的问题,大神们谁能帮我讲解下,谢谢
程序员  •  WMutong  •  2018-03-09 20:07:06 PM  •  最后回复来自 vincenttone
20
WMutong 最近回复了
229 天前
回复了 WMutong 创建的主题 分享创造 朋友们有什么想要用的 pc 端的小工具吗
@Ccf 跳过限速策略是吧
229 天前
回复了 WMutong 创建的主题 分享创造 朋友们有什么想要用的 pc 端的小工具吗
@easymbol 目前计划是做一个平台作为容器,由用户或者其他人提一些点子和需要使用的小工具,由我来开发,这个小工具的所有权 3-7 分,后期由这个工具产生的所有广告或者付费收益 3-7 分成。目前计划是这样的,所以想提前接收点意见看看送第三者的角度来说认为这种模式可不可行
229 天前
回复了 WMutong 创建的主题 分享创造 朋友们有什么想要用的 pc 端的小工具吗
@mineralsalt 感谢提供的参考,之前确实不知道有这个工具,我下载看了,其实有相同之处也有不同之处
233 天前
回复了 keaidian 创建的主题 程序员 你们外卖一顿 平均多少呀
北京 20-30
找到了解决方案,在此记录,如果有遇到相同问题的朋友可以借鉴:

*packager.json*
...
"build": {
...
"afterSign": "./build_resource/afterSign.js",
...
}
...
*/packager.json*

*afterSign.js*
const fs = require('fs')
const path = require('path');
const asar = require('asar');
const JavaScriptObfuscator = require('javascript-obfuscator'); //使用 javascript-obfuscator 代码混淆

//获取指定文件夹下排除指定类型的文件
function getFiles(dirpath, exclude){
function getFiles_(dir, arr){
const stat = fs.statSync(dir);
if(stat.isDirectory()){
const dirs = fs.readdirSync(dir);
dirs.forEach(value => {
let extname = path.extname(value);

if(exclude.includes(extname)) arr.push(path.join(dir,value));
if(extname == "" && exclude.includes(value)) getFiles_(path.join(dir,value), arr);
})
}
else if(stat.isFile()){
//文件
if(exclude.includes(dir)) arr.push(dir);
}
};
let arrs = [];
getFiles_(dirpath, arrs);
return arrs;
}

exports.default = async ({appOutDir, packager}) => {
try{
const asarPath = path.join(packager.getResourcesDir(appOutDir), 'app.asar');
let appPath = path.join(packager.getResourcesDir(appOutDir), 'app');

if(fs.existsSync(asarPath)){
//如果存在 asar 压缩包
asar.extractAll(asarPath, appPath);
}

// 替换文件内容
let fileArrs = getFiles(appPath, ["app", "assets", "js", ".js"]);

console.log("等待加密文件:", fileArrs)
for(let i = 0;i < fileArrs.length;i++){
let con = fs.readFileSync(fileArrs[i],'utf8');

console.log("当前加密文件:", fileArrs[i])
let obfuscationResult = JavaScriptObfuscator.obfuscate(con, {
compact: true,
debugProtection: true,
disableConsoleOutput: true,
numbersToExpressions: true,
simplify: true,
stringArrayShuffle: true,
splitStrings: true,
stringArrayThreshold: 1
});
fs.writeFileSync(fileArrs[i], obfuscationResult.getObfuscatedCode());
}

// console.log('asar content replacement completed.');
// if(fs.existsSync(asarPath)){
// fs.unlinkSync(asarPath);
// console.log('delete the original asar.');
// }
// await asar.createPackage(appPath, asarPath);
// fs.rmdirSync(appPath,{recursive:true});
// console.log('create new asar.');
}catch(err){
console.error(err);
}
}

*/afterSign.js*
找到了解决方案,在此记录,如果有遇到相同问题的朋友可以借鉴:

*packager.json*
...
"build": {
...

...
}
...
*/packager.json*
2022-08-12 14:49:08 +08:00
回复了 WMutong 创建的主题 Electron electron 运行 报错, spawn \electron.exe EACCES
找到解决办法了。
淦,我都要被自己气笑了,一直在尝试如何在安装依赖的阶段给 npm 管理员权限。
其实,只要使用管理员权限启动命令行就可以了。。。

但是这个问题出现的原因,有朋友们知道吗
2020-09-04 15:50:56 +08:00
回复了 WMutong 创建的主题 问与答 v 社的大佬们,咨询个 pc chrome 浏览器主页被篡改的问题
@renmu123 这个我还真没有看,但是快捷方式我应该是重新创建过
@DL9412 现在用的火绒,不是太喜欢用 360,虽然 360 挺好用的,哈哈
2020-09-03 16:18:27 +08:00
回复了 Cielsky 创建的主题 问与答 你们都用百度网盘存什么阿
转存 --> 下载 || 转存 --> 吃灰
关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   950 人在线   最高记录 6543   ·     Select Language
创意工作者们的社区
World is powered by solitude
VERSION: 3.9.8.5 · 19ms · UTC 21:13 · PVG 05:13 · LAX 14:13 · JFK 17:13
Developed with CodeLauncher
♥ Do have faith in what you're doing.