Import a DLL with C++ (Win32)

前端 未结 3 1860
萌比男神i
萌比男神i 2020-12-09 10:28

How do I import a DLL (minifmod.dll) in C++ ?

I want to be able to call a function inside this DLL. I already know the argument list for the function but I

相关标签:
3条回答
  • 2020-12-09 10:51

    If the DLL includes a COM type library, you can use the #import statement as such:

    #import dllname.dll
    

    Otherwise, you'll need to link with an import library, and you'll need to provide a function prototype for your compiler. Typically the import library and a header file with the prototypes are provided by the DLL developer. If you're not, they can be very difficult to produce - unless you already know the argument list for the function, which you say you do. Instructions can be found here, amongst other places.

    0 讨论(0)
  • 2020-12-09 11:00

    At runtime you can call LoadLibrary() and then call GetProcAddress() to access the function from a DLL. You will need to cast this address to a prototype you define with typedef . See the example at GetProcAddress documentation page.

    0 讨论(0)
  • 2020-12-09 11:02

    The c# syntax for declaring an imported function is not available in c++. Here are some other SO questions on how to use DLLs:

    • Explicit Loading of DLL
    • Compile a DLL in C/C++, then call it from another program
    • Calling functions in a DLL from C++
    • Call function in c++ dll without header
    • How to use dll's?
    • Is this a good way to use dlls? (C++?)
    0 讨论(0)
提交回复
热议问题