使用 Visual Studio 2019 为 CAPL 创建 dll 文件时遇到问题

问题描述

我正在尝试在 CAPL 中实现 AES-CMAC(128 位)计算。我使用 CryptoPP 创建了一个 C++ 代码(visual studio code 2019)。它正在正常工作。当我尝试为实现创建一个 dll 文件并将其包含在 CAPL 中时,在 CAPL 浏览器中看不到该函数

[![在此处输入图片描述][1]][1]

我构建了这段代码并将 dll 文件包含在 CAPL 中

[![在此处输入图片描述][2]][2]

有人知道我哪里出错了吗?

编辑:现在我在 GenerateMAC() 中对密钥和纯文本进行硬编码。一旦代码运行,我将使用传入函数的值。

解决方法

不幸的是,屏幕截图不再可用。

但这里有一些要点需要检查:

  • “CAPL-own”导出表 (CAPL_DLL_INFO) 中导出的函数是否正确?

  • CDLL 是否为正确的架构编译? CDLL 在 RuntimeKernel.exe 中加载和运行 - 这是(至少在 CanOE 12 之前)一个 32 位可执行文件。

还建议根据自己的需要扩展 CDLL 的示例配置(C:\Users\Public\Sample Configurations x.y.z\Programming\CAPLdll)。