How to write a DLL file in C? [closed]

2019-01-21 15:14发布

问题:

How do I write a DLL file in C?

I was looking online, but I always get tutorials for C++, not C. I want to write my first DLL file in C. How can I do that? What would a short example be?

回答1:

Let's get you started on your first DLL:

  • Start Visual Studio .NET.
  • Go to menu File -> New -> Project.
  • Select Visual C++ Project, and from the Templates, select Win32 Project.
  • Give the name to your project. This will be the name of your final DLL file.
  • Press OK.
  • Select DLL from Application Type (In the Application Settings tab).
  • Check Empty Project and press Finish.

You need to attach an empty source file to the blank project:

  • Start Solution Explorer (if it’s not displayed).
  • Right click to the Source Files, Add -> Add New Item and then select C++ File and give the name to it.
  • Press Open.

In the opened window, enter the following code:

#include <stdio.h>
extern "C"
{
    __declspec(dllexport) void DisplayHelloFromMyDLL()
    {
        printf ("Hello DLL.\n");
    }
}
  • __declspec(dllexport) is an obligatory prefix which makes DLL functions available from an external application.

  • extern “C” (with braces, for scoping) shows that all code within brackets is available from “outside” the file. Although code will compile even without this statement, during runtime, you will get an error. (I leave this as an experiment for you).

Build this application and your DLL file is ready.

Refer to Walkthrough: Creating and Using a Dynamic Link Library for more information on how to do addition and stuff.



标签: c dll