Dllnotfoundeeption во время выполнения DLL-библиотеки C++ в C#
я просто пытаюсь сделать dll из этой ссылки, Как создать библиотеку DLL на C, а затем использовать ее с C#[^], это действительно работает
но потом, когда я пытаюсь сделать dll-ссылку с mysql
я получил сообщение об ошибке "DllNotFoundException was unhandled"..
нужно, чтобы кто-то помог поблагодарить вас..
Что я уже пробовал:
это код в моем коде cpp (dll)
#pragma once #pragma comment (lib, "libmysql") #include <iostream> #include "C:\BookScanner\extension\MySQL-API\include\mysql.h" MYSQL *__con, *__conString; extern "C" { __declspec(dllexport) void openConnection(){ __con = mysql_init(NULL); __conString = mysql_real_connect(__con, "localhost", "root", "", "bookbardatabase", 3306, NULL, 0); std::cout << __conString ? "successfully connected" : "failed to connect to server"; } }
это код на c#, который я использовал для запуска своего dll-файла
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; using System.Runtime.InteropServices; namespace ConsoleApplication1 { class Program { [DllImport("C:\\Users\\user\\Desktop\\MyysqConnector\\Debug\\MyysqConnector.dll")] public static extern void DisplayHelloFromDLL(); static void Main(string[] args) { DisplayHelloFromDLL(); Console.ReadLine(); } } }
Mehdi Gholam
Убедитесь, что DLL и все зависимые DLL-файлы находятся рядом с вашим EXE-файлом.
Richard MacCutchan
Вы уверены, что имя библиотеки dll правильно? Кроме того, где находится код для DisplayHelloFromDLL
?
Richard MacCutchan
Очень просто я предлагаю MyysqConnector.dll это не правильное написание имени файла dll.