Используйте поставляемую DLL в проекте Visual C ++ - PullRequest
0 голосов
/ 21 февраля 2012

Я только что купил устройство, которое поставляется с файлом DLL.Я хочу использовать Visual C ++ для программирования устройства.Как загрузить файл .dll в мой проект?

1 Ответ

1 голос
/ 21 февраля 2012

A DLL - это файл библиотеки, который содержит скомпилированную программную логику, как и EXE. Вы не можете выполнить его в одиночку, но, как EXE-файл, вы не можете просто «загрузить» его в свой проект.

Вам потребуется использовать такие функции, как Загрузить библиотеку , чтобы загрузить библиотеку, а затем GetProcAddress , чтобы найти функцию, которую вы хотите вызвать.


Edit:

После того, как вы пояснили свой вопрос в комментариях, вы пытаетесь написать программу для Windows вместо программы, которую вы запускаете на своем устройстве.

Я написал пример кода, чтобы показать вам, как начать:

#include <windows.h>     // This is a windows header file. The functions I mentioned above are declared here
#include "mpusbapi.h"    // This is the header file supplied. It declares the function prototypes that are defined in the DLL

int main(int argc, char* argv)
{
    // Try to load the library
    HMODULE mpbusDLL = NULL;
    mpbusDLL = LoadLibrary(L"mpusbapi.dll");

    if (mpbusDLL != NULL) {
        // If the library could be loaded, then load the functions using GetProcAddress()

        // Load the function 'MPUSBOpen' from the DLL
        MPUSBOpen = (HANDLE(*)(DWORD, PCHAR, PCHAR, DWORD, DWORD)) GetProcAddress(mpbusDLL, "_MPUSBOpen"); 

        ...
        MPUSBOpen(...);
    }
}

Этот код C загрузит вашу библиотеку, а затем попытается загрузить функцию MPUSBOpen, которая реализована в вашей DLL.
Вам нужно будет загрузить другие функции, определенные в вашем заголовочном файле, таким же образом (по крайней мере, если вы хотите их использовать).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...