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.