0

我正在尝试编写一个简单的 curl 程序来检索 VC++ 8.0 中的网页。

 #include <stdio.h>
 #include <curl.h>

 int main(void)
 {
   CURL *curl;
   CURLcode res;

   curl = curl_easy_init();
   if(curl) {
     curl_easy_setopt(curl, CURLOPT_URL, "curl.haxx.se");
     res = curl_easy_perform(curl);
      /* always cleanup */
    curl_easy_cleanup(curl);
   }
   return 0;
 }

我将包含和库路径添加到 cURL 包含和 lib 目录。它符合但当我尝试进入调试模式时,在进程加载过程中引发了一个未处理的不可继续的 STATUS_DLL_NOT_FOUND 异常,并且代码以 -1073741515 (0xc0000135) 退出。

4

3 回答 3

1

如果您在调试模式之外运行它,它是否按预期工作?还是会发生同样的错误?

如果它在调试模式之外不起作用,则您的应用程序无法找到该 dll。

另一个问题,您是想从源代码中编译 libcurl 以及您的项目,还是将其用作外部库?

如果您正在使用源代码,则可能需要编译整个解决方案,以便也编译 libcurl。

如果您使用的是外部库,请尝试将 dll 放在应用程序的工作目录中(它无法找到它)。

于 2010-03-05T12:09:22.650 回答
1

使用dependency walker 找出未加载的.dll,然后将其复制到路径中的某个位置,或程序所在的同一文件夹中。

于 2010-03-05T12:13:53.423 回答
0

解决了!!看了一堆论坛。真正的解决方案如 Ismael 所述。谢谢哥们!

错误:....符号未找到..等等等等调试器::在进程加载过程中引发了未处理的、不可继续的 STATUS_DLL_NOT_FOUND 异常程序“[3936] VTools.exe:Native”已退出,代码为 -1073741515 (0xc0000135)。

说明:: 当 Visual Studio 没有找到其中一个 dll 时会发生这种情况,这显然没有被 Visual Studio 指出

解决方案:: 在我的情况下,我缺少 cutil32.dll,所以我不得不将它复制到 C:/Windows/system32 文件夹。找出缺少哪个 dll 真的很困难(我讨厌 MSFT)。无论如何下载依赖walker和文件->打开可执行文件(调试或发布)。运行它,您会发现缺少哪些 dll。就我而言,这些文件缺少 CUTIL32.DLL、MSVCR80.DLL、MSJAVA.DLL。复制 CUTIL32.dll 解决了问题到 system32 文件夹。祝你好运!!

于 2010-06-04T00:08:47.023 回答