Creating a Simple Dynamic-Link Library
The following example, MYPUTS.C, is the source code needed to create a simple DLL, MYPUTS.DLL. The file MYPUTS.C contains a simple string-printing function called myPuts. The MYPUTS DLL does not define an entry-point function, because it is linked with the C run-time library and has no initialization or cleanup functions of its own to perform.
// File: MYPUTS.C.
// The myPuts function writes a null-terminated string to
// the standard output device.
.
#include <windows.h>
VOID myPuts(LPTSTR lpszMsg)
{
DWORD cchWritten;
HANDLE hStdout;
// Get a handle to the standard output device.
hStdout = GetStdHandle(STD_OUTPUT_HANDLE);
// Write a null-terminated string to the standard output device.
while (*lpszMsg)
WriteFile(hStdout, lpszMsg++, 1, &cchWritten, NULL);
}
To build the DLL, follow the directions in the documentation included with your development tools.