问题描述
我正在Windows上的Visual Studio 2019中使用librdkafka.redist NuGet软件包v1.50。
我实际上将librdkafka producer.cpp示例代码复制/粘贴到我的空C ++项目中,只更改了一行,如下所示:
#include <librdkafka/rdkafkacpp.h>
我还修改了build / native / librdkafka.redist.targets,将“ librdkafka.lib”的出现替换为“ librdkafkacpp.lib”,因为我使用的是C ++。
在所有情况下,命令行参数均为“ 127.0.0.1 test”。我在本地运行Kafka,主题是“测试”。
通过此设置,项目作为发布可执行文件的构建和运行就很好。我可以键入要生成的字符串,然后将它们生成以进行主题测试。
如果我切换到调试配置(32或64位,没关系),程序就可以很好地构建,但是在运行它时,它会在尝试调用时崩溃:
conf->set("bootstrap.servers",brokers,errstr)
当崩溃发生时,经纪人确实是“ 127.0.0.1”。
这是在致电后立即出现的
RdKafka::Conf* conf = RdKafka::Conf::create(RdKafka::Conf::CONF_GLOBAL);
我不希望将插入 librdkafkacpp代码,但是在运行调试可执行文件时使其真正正常运行会很好。
我还证明,即使不在调试器下运行调试可执行文件,该调试可执行文件也会失败。它在64位exe中因该错误而崩溃。
Unhandled exception at 0x00007FF917F8C3F9 (msvcr120.dll) in KafkaFun.exe: 0xC0000005: Access violation reading location 0x0000002D4A150000.
这是32位exe中的错误:
Unhandled exception at 0x0100F41C (msvcr120.dll) in KafkaFun.exe: 0xC0000005: Access violation reading location 0xCD2BC8B0.
当我构建调试可执行文件时,显然存在着严重的错误。你知道是什么问题吗?
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)