NapNeko / NapCatQQ

现代化的基于 NTQQ 的 Bot 协议端实现
https://napneko.github.io
Other
2.27k stars 158 forks source link

[BUG]方法3 BootWay03写入启动代码await报错 #330

Closed bianyuan456 closed 1 month ago

bianyuan456 commented 1 month ago

系统版本

windows 11

QQNT 版本

9.9.15-27597

NapCat 版本

2.2.31

OneBot 客户端

还没连接上

发生了什么?

按照BootWay03写入启动代码await报错,看一下3张图。 截图20240902012326 截图20240902012342 我是cmd下输入指令报错,但是没有具体的错误,然后试了一下双击QQ.exe出现弹窗报错,我记录下了错误代码,去搜了一下。

截图20240902012405 我去搜索了一下这个错误,await is only valid in async function 截图20240902012757 我的NTQQ运行过LiteLoaderQQNT 框架,是patch过的。能正常运行方法2/无头模式,也能正常运行方法1/作为LiteLoaderQQNT 框架的插件运行,但是我想试试 方法3/Only GUI 模式,但是遇到这个问题了。 我的电脑是没有安装NodeJS环境的!略懂javascript,写过uniapp的项目,但是看不大懂这些ts的项目。

如何复现

按照 https://napneko.github.io/zh-CN/guide/boot/only-gui/BootWay03 去操作就能复现

期望的结果?

应该能正常打开呀

NapCat 运行日志

No response

OneBot 客户端运行日志

No response

MliKiowa commented 1 month ago

不对only gui文档不完整 建议你不要玩

MliKiowa commented 1 month ago

他需要一个立即执行域包裹async函数 然后调用await import 文档现在是错的 如果想玩可以进官方群讨论

bianyuan456 commented 1 month ago

他需要一个立即执行域包裹async函数 然后调用await import 文档现在是错的 如果想玩可以进官方群讨论

感谢解答,我把index.js改成了https://napneko.github.io/zh-CN/guide/boot/shell/BootWay03 中的,包裹async的,还是出一样的错误。我这就进群讨论。

const path = require('path'); const CurrentPath = path.dirname(__filename) const hasNapcatParam = process.argv.includes('--enable-logging'); if (hasNapcatParam) { (async () => { await import("file://" + path.join(CurrentPath, './napcat/napcat.mjs')); })(); } else { require('./launcher.node').load('external_index', module); }

还是报错 PS C:\Program Files\Tencent\QQNT> [31896:0902/104010.767:ERROR:crashpad_client_win.cc(869)] not connected

但是直接打开QQ.exe能打开,不弹错误了,但是这样跟不该没啥区别呀。

MliKiowa commented 1 month ago
const path = require('path');
const CurrentPath = path.dirname(__filename)
    (async () => {
        await import("file://" + path.join(CurrentPath, './napcat/napcat.mjs'));
    })();
require('./launcher.node').load('external_index', module);
MliKiowa commented 1 month ago

然后安装napcat到 对应目录 启动就行

bianyuan456 commented 1 month ago

然后安装napcat到 对应目录 启动就行

谢谢,我这边还是报一样的错。path.dirname is not a function,是因为我没有装nodejs环境么?等作者有空了再看看吧,这个bug不着急。 下图是我改好了之后,先在终端运行,报一样的 错,然后我又直接双击QQ.exe打开,才显示 具体的错。index.js已经按上述修改了。 截图20240902152901