@cyanray 3个字节。。。。我当时没想到这里有问题。。。。。。啊啊应该就是这了、哇谢谢——以前的废稿又能用了好耶
(utf-8我一开始就换编码了的。。。后来把cmd的编码也换成utf-8了qvq)
xiling 发布的最新帖子
-
RE: mirai-cpp】string的api出错,但旁边用来测试的都正常
-
RE: mirai-cpp】string的api出错,但旁边用来测试的都正常
@xiling 好消息,它终于报错了!
0x00007FFCFC89D759 处(位于 RepeatMessage.exe 中)引发的异常: Microsoft C++ 异常: nlohmann::detail::type_error,位于内存位置 0x00000004DB5FC4A0 处。我是这样,
MessageChain msg=MessageChain().Plain(send.substr(0, 4));
jieshou.Reply(msg);
然后它终于报错的 -
RE: mirai-cpp】string的api出错,但旁边用来测试的都正常
@xiling 那里,,不是说水平不够读不懂详细文档,那个详细文档给的东西太少了,我的其他知识水平不够广
-
mirai-cpp】string的api出错,但旁边用来测试的都正常
一开始用的CString,写了好大一堆,一直出错我以为是CString的编码转换出了问题,然后这个”编码“一直搞不对了,我全删了单纯用string做,这次只写了一点点测试一下,结果一个substr都出问题,不报错的那种
服务器响应解析出错传不上图片了)
bot.On<GroupMessage>(
[](GroupMessage jieshou) {
string send = jieshou.MessageChain.GetPlainText();
string shuchu = "error";
if (send.substr(0, 4) == "名字") {
shuchu = "已识别";
在旁边的测试页可以正常运行(包括编码我都与这个一致了)
我让它直接回复 send没有出错,问题就在send.substr(0,4)==这里了
我读过好多遍详细文档了,水平太有限实在搞不定了是不是内部把string转成了别的东西,比如前后加了个引号之类的?这样我只要调一下字符串位置也就可以了(单纯由mirai-api-http的外表做的一点猜想)
-
RE: mirai-cpp】Cyan::MiraiBot没有成员SendMessageA
@stageguard 啊这个问题一般的程序员大佬解决不了吗......打扰sdk开发者。。。。什么的,,呃、我自己再试试吧、、
-
RE: mirai-cpp】Cyan::MiraiBot没有成员SendMessageA
@xiling 我直接把头文件里的这个重载给删掉了,然后能运行了,,但头文件的这个地方可能是管编码转换的还是什么,,,出了很奇怪的bug,还是想解决一下这个问题.......有没有大佬,救命aaaaaaaaqaq
-
RE: mirai-cpp】Cyan::MiraiBot没有成员SendMessageA
![L[NXE$P`VH9S1%IR_BMNNF.png
又出了另一个问题,搜了半天,试了半天........我又不行了;; -
mirai-cpp】Cyan::MiraiBot没有成员SendMessageA
一介学生,,目前只会cpp还很不精,这个实在弄不了了QAQ
官方API是这么说的啊....(总不能根据报错把这个宏取消掉...?)
如果有别的,在戳一戳事件发送消息的方法也可以........
戳一戳事件的成员里是确实没有sendmessage相关的东西,不过看到它是可以取得发送人id的,所以想试试......
大佬大佬QAQ 不知道上面给的信息全不全,但是拜托了——