From 9372e83bd8b5666b231e9c0af9591d3b2fe87d7d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=89=8B=E7=93=9C=E4=B8=80=E5=8D=81=E9=9B=AA?= Date: Thu, 29 May 2025 14:39:09 +0800 Subject: [PATCH] =?UTF-8?q?feat:=20nativeLoader=E5=8A=9F=E8=83=BD=E9=A2=84?= =?UTF-8?q?=E5=A4=87?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/framework/napcat.ts | 6 ++++++ src/framework/nativeLoader.cjs | 26 ++++++++++++++++++++++++++ vite.config.ts | 1 + 3 files changed, 33 insertions(+) create mode 100644 src/framework/nativeLoader.cjs diff --git a/src/framework/napcat.ts b/src/framework/napcat.ts index 8a8282ee..82f5e7e3 100644 --- a/src/framework/napcat.ts +++ b/src/framework/napcat.ts @@ -48,6 +48,12 @@ export async function NCoreInitFramework( }); } //直到登录成功后,执行下一步 + // const selfInfo = { + // uid: 'u_FUSS0_x06S_9Tf4na_WpUg', + // uin: '3684714082', + // nick: '', + // online: true + // } const selfInfo = await new Promise((resolveSelfInfo) => { const loginListener = new NodeIKernelLoginListener(); loginListener.onQRCodeLoginSucceed = async (loginResult) => { diff --git a/src/framework/nativeLoader.cjs b/src/framework/nativeLoader.cjs new file mode 100644 index 00000000..3122ee36 --- /dev/null +++ b/src/framework/nativeLoader.cjs @@ -0,0 +1,26 @@ +const fs = require('fs'); +const path = require('path'); + +async function initializeNapCat(session, loginService) { + //const logFile = path.join(currentPath, 'napcat.log'); + + console.log('[NapCat] [Info] 开始初始化NapCat'); + + //fs.writeFileSync(logFile, '', { flag: 'w' }); + + //fs.writeFileSync(logFile, '[NapCat] [Info] NapCat 初始化成功\n', { flag: 'a' }); + + try { + const currentPath = path.dirname(__filename); + const { NCoreInitFramework } = await import('file://' + path.join(currentPath, './napcat.mjs')); + await NCoreInitFramework(session, loginService, (callback) => { callback(); }); + + } catch (error) { + console.log('[NapCat] [Error] 初始化NapCat', error); + //fs.writeFileSync(logFile, `[NapCat] [Error] 初始化NapCat失败: ${error.message}\n`, { flag: 'a' }); + } +} + +module.exports = { + initializeNapCat: initializeNapCat +}; \ No newline at end of file diff --git a/vite.config.ts b/vite.config.ts index d2565857..92ac954c 100644 --- a/vite.config.ts +++ b/vite.config.ts @@ -53,6 +53,7 @@ const FrameworkBaseConfigPlugin: PluginOption[] = [ { src: './napcat.webui/dist/', dest: 'dist/static/', flatten: false }, { src: './src/framework/liteloader.cjs', dest: 'dist' }, { src: './src/framework/napcat.cjs', dest: 'dist' }, + { src: './src/framework/nativeLoader.cjs', dest: 'dist' }, { src: './src/framework/preload.cjs', dest: 'dist' }, { src: './src/framework/renderer.js', dest: 'dist' }, { src: './package.json', dest: 'dist' },