2

这是一个从帖子(链接)开始的新线程。

我已使用建议的 curl 库(链接)将 libcurl 构建到我的 dll 中。我在 libcurl_imp.lib 中链接并创建了用于调用 curl 方法的库例程。这一切都是一种享受——但只能在 64 位机器上使用?- 如果我尝试在 32 位 XP 机器上运行相同的 dll/二进制应用程序,它会立即转储。事实上,我所有的应用程序都中止了——它们没有引用我的新库例程,它们只是使用 dll。似乎因为我在我的 dll 中构建了 cURL 调用,所以它立即中止了生成的进程——我只是明白了——</p>

1 + 完成(134)

5656 中止测试应用程序

我在 main 之后立即有一个 printf 语句,但在命令行上没有输出。

然后我从 dll 中删除了我所有的新库函数,除了一个之外,我所做的只是——</p>

CURLcode res = curl_global_init(CURL_GLOBAL_DEFAULT);

这一行导致我的所有应用程序在构建到我的 dll 时在 32 位上失败——将其注释掉,它们都可以工作。

如前所述,相同的 dll/二进制文件在我的 64 位机器上运行良好。64 位机器与我的 32 位机器具有相同的 curllib.dll 运行时。

对于信息,我的构建机器是 32 位的,我们有 32 位和 64 位的生产机器。

4

0 回答 0