由于“错误 LNK2028:无法解析的令牌...”,我无法编译解决方案

2023-11-23

我有一个用 C++ 编写的 dll 和一个用 Visual C++ 编写的 exe。

我将 dll 中的函数声明为:

string __declspec( dllexport ) ConfigureHAT(T_STRING pathFile);

在 exe 项目中,我包含所有头文件和 dll 文件。

我在dll中调用该函数:

string ret = ConfigureHAT("file.txt");

当编译可执行项目时,它会失败并出现以下错误:

1>HATdllTester.obj:错误LNK2028:无法解析的令牌(0A000317)“类 std::basic_string,类 std::allocator > __cdeclConfigureHAT(类 std::basic_string,类 std::分配器>)" (?配置HAT@@$$FYA?AV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@V12@@Z) 在函数“private: void __clrcall”中引用 HATdllTester::mainWindow::buttonConfigure_Click(类 System::Object ^,类 System::EventArgs ^)" (?buttonConfigure_Click@mainWindow@HATdllTester@@$$FA$AAMXP$AAVObject@System@@P$AAVEventArgs@4@@Z)

1>AssemblyInfo.obj:错误 LNK2028:无法解析的标记(0A000316)“类 std::basic_string,类 std::allocator > __cdeclConfigureHAT(类 std::basic_string,类 std::分配器>)" (?配置HAT@@$$FYA?AV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@V12@@Z) 在函数“private: void __clrcall”中引用 HATdllTester::mainWindow::buttonConfigure_Click(类 System::Object ^,类 System::EventArgs ^)" (?buttonConfigure_Click@mainWindow@HATdllTester@@$$FA$AAMXP$AAVObject@System@@P$AAVEventArgs@4@@Z)

1>AssemblyInfo.obj:错误LNK2019:无法解析的外部符号“类 std::basic_string,类 std::allocator > __cdeclConfigureHAT(类 std::basic_string,类 std::分配器>)" (?配置HAT@@$$FYA?AV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@V12@@Z) 在函数“private: void __clrcall”中引用 HATdllTester::mainWindow::buttonConfigure_Click(类 System::Object ^,类 System::EventArgs ^)" (?buttonConfigure_Click@mainWindow@HATdllTester@@$$FA$AAMXP$AAVObject@System@@P$AAVEventArgs@4@@Z)

1>HATdllTester.obj:错误 LNK2001:无法解析的外部符号“类 std::basic_string,类 std::allocator > __cdeclConfigureHAT(类 std::basic_string,类 std::分配器>)" (?配置HAT@@$$FYA?AV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@V12@@Z)

有谁能够帮助我? 我读了很多类似的消息,都有同样的错误,但没有人解决我的问题。

Thanks.

EDIT

最后,我解决了将dll项目中生成的.lib文件放入项目属性->链接器->输入->附加依赖项中的问题。


我会尝试更改 Visual Studio 项目配置。在“常规”>“公共语言运行时支持”集下/clr代替/clr:pure.

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

由于“错误 LNK2028:无法解析的令牌...”,我无法编译解决方案 的相关文章

  • 静态只读字符串数组

    我在我的 Web 应用程序中使用静态只读字符串数组 基本上数组有错误代码 我将所有类似的错误代码保存在一个数组中并检查该数组 而不是检查不同常量字符串中的每个错误代码 like public static readonly string m
  • 如何从 C# 中的 dataTable.Select( ) 查询中删除单引号?

    所以我有一个经销商名称列表 我正在我的数据表中搜索它们 问题是 一些傻瓜必须被命名为 Young s 这会导致错误 drs dtDealers Select DealerName dealerName 所以我尝试替换字符串 尽管它对我不起作
  • IdentityServer 4 对它的工作原理感到困惑

    我阅读和观看了很多有关 Identity Server 4 的内容 但我仍然对它有点困惑 因为似乎有很多移动部件 我现在明白这是一个单独的项目 它处理用户身份验证 我仍然不明白的是用户如何注册它 谁存储用户名 密码 我打算进行此设置 Rea
  • 如何在C(Linux)中的while循环中准确地睡眠?

    在 C 代码 Linux 操作系统 中 我需要在 while 循环内准确地休眠 比如说 10000 微秒 1000 次 我尝试过usleep nanosleep select pselect和其他一些方法 但没有成功 一旦大约 50 次 它
  • JNI 将 Char* 2D 数组传递给 JAVA 代码

    我想从 C 代码通过 JNI 层传递以下指针数组 char result MAXTEST MAXRESPONSE 12 12 8 3 29 70 5 2 42 42 在java代码中我写了以下声明 public static native
  • 如何填充 ToolStripComboBox?

    我发现它很难将数据绑定到ToolStripComboBox 好像没有这个ValueMember and DisplayMember特性 怎么绑定呢 访问toolstripcombobox中包装的组合框并访问其ValueMember Disp
  • 从客户端访问 DomainService 中的自定义对象

    我正在使用域服务从 Silverlight 客户端的数据库中获取数据 在DomainService1 cs中 我添加了以下内容 EnableClientAccess public class Product public int produ
  • 为什么可以通过ref参数修改readonly字段?

    考虑 class Foo private readonly string value public Foo Bar ref value private void Bar ref string value value hello world
  • 识别 Visual Studio 中的重载运算符 (c++)

    有没有办法使用 Visual Studio 快速直观地识别 C 中的重载运算符 在我看来 C 中的一大问题是不知道您正在使用的运算符是否已重载 Visual Studio 或某些第三方工具中是否有某些功能可以自动突出显示重载运算符或对重载运
  • 为什么这个二维指针表示法有效,而另一个则无效[重复]

    这个问题在这里已经有答案了 这里我编写了一段代码来打印 3x3 矩阵的对角线值之和 这里我必须将矩阵传递给函数 矩阵被传递给指针数组 代码可以工作 但问题是我必须编写参数的方式如下 int mat 3 以下导致程序崩溃 int mat 3
  • 等待 IAsyncResult 函数直至完成

    我需要创建等待 IAsyncResult 方法完成的机制 我怎样才能做到这一点 IAsyncResult result contactGroupServices BeginDeleteContact contactToRemove Uri
  • OpenGL:仅获取模板缓冲区而没有深度缓冲区?

    我想获取一个模板缓冲区 但如果可能的话 不要承受附加深度缓冲区的开销 因为我不会使用它 我发现的大多数资源表明 虽然模板缓冲区是可选的 例如 排除它以利于获得更高的深度缓冲区精度 但我还没有看到任何请求并成功获取仅 8 位模板缓冲区的代码
  • 将数组作为参数传递

    如果我们修改作为方法内参数传递的数组的内容 则修改是在参数的副本而不是原始参数上完成的 因此结果不可见 当我们调用具有引用类型参数的方法时 会发生什么过程 这是我想问的代码示例 using System namespace Value Re
  • 可访问性不一致:参数类型的可访问性低于方法

    我试图在两个表单之间传递一个对象 基本上是对当前登录用户的引用 目前 我在登录表单中有一些类似的内容 private ACTInterface oActInterface public void button1 Click object s
  • 使用 omp_set_num_threads() 将线程数设置为 2,但 omp_get_num_threads() 返回 1

    我有以下使用 OpenMP 的 C C 代码 int nProcessors omp get max threads if argv 4 NULL printf argv 4 s n argv 4 nProcessors atoi argv
  • 使用 C 在 OS X 中获取其他进程的 argv

    我想获得其他进程的argv 例如ps 我使用的是在 Intel 或 PowerPC 上运行的 Mac OS X 10 4 11 首先 我阅读了 ps 和 man kvm 的代码 然后编写了一些 C 代码 include
  • GCC 的“-Wl,option”和“-Xlinker option”语法之间有区别吗?

    我一直在查看一些配置文件 并且看到它们都被使用 尽管在不同的体系结构上 如果您在 Linux 机器上使用 GCC 将选项传递给链接器的两种语法之间有区别吗 据我所知 阅读 GCC 手册时 他们的解释几乎相同 From man gcc Xli
  • 如何减少具有多个单元的 PdfPTable 的内存消耗

    我正在使用 ITextSharp 创建一个 PDF 它由单个 PdfTable 组成 不幸的是 对于特定的数据集 由于创建了大量 PdfPCell 我遇到了内存不足异常 我已经分析了内存使用情况 我有近百万个单元格的 1 2 在这种情况下有
  • Objective-C / C 给出枚举默认值

    我在某处读到过关于给枚举默认值的内容 如下所示 typedef enum MarketNavigationTypeNone 0 MarketNavigationTypeHeirachy 1 MarketNavigationTypeMarke
  • 如何将十六进制字符串转换为无符号长整型?

    我有以下十六进制值 CString str str T FFF000 如何将其转换为unsigned long 您可以使用strtol作用于常规 C 字符串的函数 它使用指定的基数将字符串转换为 long long l strtol str

随机推荐

  • 引起原因:java.lang.IllegalStateException:没有为此提供程序指定值

    我试图从 github 导入一个项目 但它显示了此配置问题 有人可以建议我该怎么办吗 2019 09 06 19 23 53 953 thread 10 INFO e project sync GradleSyncState Gradle
  • 假设我有一组链接 我可以使用吗 div 代替 div
  • 通用 CRUD 控制器和视图

    我刚刚浏览了 ASP NET 的一些入门教程 并且对如何实现简单的 CRUD 管理应用程序有了一个不错的了解 是否有任何常用的模式来实现通用列表 创建 更新 删除操作 必须为每个模型构建脚手架 然后维护所有添加 编辑和列表视图和控制器 这似
  • Jspx 文件和条件注释

    我想使用 Spring 和 jspx 网页创建一个 Web 应用程序 我的问题是如何在 jspx 中添加 IE 的条件注释 他们似乎没有被解释 另外我希望我的网页是 HTML5 投诉 我尝试了一些方法 但在 IE9 中遇到不兼容问题 似乎无
  • cURL 错误 35 - 连接到 api.rkd.reuters.com 时出现未知 SSL 协议错误:443

    在开发机器 mac 上 通过 PHP 中的 cURL 连接到此没有问题 但在 Ubuntu 中 我收到此错误 我已经在本地计算机和 Amazon AWS 实例上尝试过 我用谷歌搜索了又搜索 但一直遇到砖墙 没有防火墙限制 这完全是个谜 ph
  • 如何使用 NumPy 数组的矢量化来使用 Geopy 库计算大型数据集的测地距离?

    我正在尝试从数据帧计算测地距离 该数据帧由四列纬度和经度数据组成 大约有 300 万行 我使用 apply lambda 方法来完成此任务 但花了 18 分钟才能完成任务 有没有办法将矢量化与 NumPy 数组结合使用来加速计算 谢谢您的回
  • AngularJS - html5Mode - 无法获取/登录

    Hi 使用 yeoman grunt 和 Bower 创建了一个 angularJS 应用程序 我已经为应用程序启用了 html5Mode 它的工作原理 但是 当我刷新页面 localhost 9000 登录 时 它说 Cannot GET
  • 将字符串写成螺旋状

    我最近参加了一家公司赞助的编程比赛 有一个问题我不明白 它问的是什么 这是问题 字符串 paypal 是更快 更安全的汇款方式 写在 从左上角开始 在正方形内顺时针旋转的螺旋图案 您可能希望以固定字体显示此图案以获得更好的易读性 P A Y
  • 在 Swift 中旋转数组

    在探索 Swift 中的算法时 无法在不使用 funcs 的情况下找到 Swift 中数组旋转的算法shiftLeft shiftRight C 有一个优雅的算法 时间复杂度为 O N Function to left rotate arr
  • 如何获取Android设备屏幕尺寸?

    我有两个分辨率相同的 Android 设备 Device1 gt 分辨率 480x800 对角线屏幕尺寸 gt 4 7 英寸 Device2 gt 分辨率 480x800 对角线屏幕尺寸 gt 4 0 英寸 如何找到设备对角线屏幕尺寸 以编
  • 如何在 Javascript 中比较字符串数组?

    我想看看两个字符串数组是否相等 Eg compare abc def def abc 应该返回true同样 compare abc def def ghi 应该返回false 做这个的最好方式是什么 JavaScript 没有 Set 或
  • 在tensorflow-gpu 中“未找到‘CXXABI_1.3.8’” - 从源安装

    我已经重新安装了Anaconda2 当 python c 导入张量流 时出现以下错误 ImportError home jj anaconda2 bin lib libstdc so 6 找不到版本 CXXABI 1 3 8 home jj
  • 使用子类参数重写子类方法?

    当子类重写时 如何强制基本方法采用相同的特定子类实例 i e abstract class Animal def mateWith that Animal class Cow extends Animal override def mate
  • 如何通过 Node.js 连接到 Postgres

    我发现自己试图创建一个 postgres 数据库 所以我安装了 postgres 并启动了一个服务器initdb usr local pgsql data 然后我开始了这个实例postgres D usr local pgsql data现
  • ASP.NET MVC2 中具有 SelectList 绑定的 ViewModel

    我正在尝试为名为 Product 的 Linq2SQL 实体实现一个编辑 ViewModel 它有一个链接到品牌列表的外键 目前我正在通过 ViewData 并使用 DropDownListFor 填充品牌列表 因此 div class e
  • M1 Mac 上的 Scrapy:MemoryError:无法为 ffi.callback() 分配写入+执行内存

    我是 scrapy 新手 最近开始在 M1 MacBook Air 上使用它 我遇到了一个问题 例如 当我尝试做这样的事情时 scrapy shell bbc com 它会返回我 MemoryError 无法为 ffi callback 分
  • Spark 中有哪些不同的联接类型?

    我查看了文档 它说支持以下连接类型 要执行的连接类型 默认内 必须是以下之一 内部 交叉 外部 完整 full outer 左 left outer 右 right outer 左半 左反 我看了看堆栈溢出答案关于 SQL 连接和最上面的几
  • 将字符串的 printf 填充 0

    有没有办法将 printf 中的空格字符替换为 0 填充字段宽度 使用的代码 printf 010s this 似乎不适用于字符串 确实 0flag 仅适用于数字转换 您必须手动执行此操作 int print padleftzeroes c
  • logback.xml 应该在 SBT/Scala 项目中的哪个项目目录中?

    我有一个 SBT Scala 项目 logback 似乎可以工作 但完全忽略了我的logback xml配置文件 我已放置在src main scala logback xml 它没有任何作用 它的正确位置是什么 任何人都可以发布一个 SB
  • 由于“错误 LNK2028:无法解析的令牌...”,我无法编译解决方案

    我有一个用 C 编写的 dll 和一个用 Visual C 编写的 exe 我将 dll 中的函数声明为 string declspec dllexport ConfigureHAT T STRING pathFile 在 exe 项目中