Exportando a partir de uma DLL
Um arquivo de DLL tem um layout muito semelhante a um arquivo .exe, com uma diferença importante — um arquivo de DLL contém uma tabela de exportações. A tabela de exportações contém o nome de cada função que o DLL exporta a outros executáveis. Essas funções são os pontos de entrada na DLL; apenas funções na tabela de exportações podem ser acessadas por outros executáveis. Todas as outras funções na DLL são privadas para a DLL. A tabela de exportações de uma DLL podem ser exibidas usando a ferramenta de DUMPBIN com a opção do /EXPORTS.
Você pode exportar funções de uma DLL usando dois métodos:
Crie um arquivo de definição de módulo (.def) e o arquivo .def durante a criação da DLL. Use esta abordagem se desejar que a exportar funções do DLL por ordinal em vez de por nome.
Use a palavra-chave __declspec(dllexport) na definição de função.
Ao exportar funções com um ou outro método, use __stdcall que chama a convenção.
O que você deseja fazer?
Exportar funções de C++ para uso em executáveis de linguagem C
Exportar funções de C para uso em executáveis de linguagem C ou C++