To work with FTP I use libcurl.dll (+ netovskaya binding from LibCurlNet and LibCurlShim)

The development was carried out successfully and all the functions were implemented, but it was in the Debug configuration. When I tried to release, everything was successfully failed, but when I access the libcurl library I get the following: Unable to load DLL 'libcurl.dll': The specified procedure was not found. (Exception from HRESULT: 0x8007007F)

Where could the problem be?

  • one
    See dependencies for libcurl.dll some DependencyWalker. Most likely that due to the different paths Debug / Release does not find the necessary libraries. - αλεχολυτ
  • @alexolut in the sense? different ways, but is there any other mechanisms involved? I walked through a walker - and there and there something is missing - API ..., EXT .... I downloaded libraries that look normal - dcomp, gpsvc, IESHIMS - they were highlighted in red. I put it in the folder with the Release - zero result - kvvk
  • about paths, I mean, I don’t really understand - are absolute paths to libraries used there? - kvvk
  • added in the properties of the project References Path genb to the libraries - again, nothing - kvvk
  • one
    There is also the thought that the Не найдена указанная процедура arises due to the fact that in lib there is simply no function that wants to be loaded into Release. Conditionally, for Debug / Release, GetProcAddress is executed for different names. - αλεχολυτ

1 answer 1

Problem solved. libcurl swung with both source and ready libs. First, they were taken from the archive, and later recompiled. Since they were added to the project with the copy property as "Copy if newer", the original versions were in Debug. The release has already caught fresh, recompiled. After a new download of the archive and taking the original DLL from it, the Release config also worked

  • Mark your answer as correct (check next to the answer). - andreycha