Может кто-нибудь сказать мне, почему мое приложение SimpleTest не отображает «Тест»?DLL успешно загружается, я просто не получаю вывод на консоль.
SimpleDLL.cpp
#include "stdafx.h"
#include "SimpleDLL.h"
#include "stdafx.h"
#include <iostream>
int Test()
{
std::cout << "Test" << std::endl;
return 0;
}
SimpleDLL.h
#ifndef _DLL_TUTORIAL_H_
#define _DLL_TUTORIAL_H_
#include <iostream>
#if defined DLL_EXPORT
#define DECLDIR __declspec(dllexport)
#else
#define DECLDIR __declspec(dllimport)
#endif
DECLDIR int Test();
#endif
SimpleTest.cpp
#include "stdafx.h"
#include <iostream>
#include <windows.h>
typedef int (*TestFunc)();
int main()
{
TestFunc _TestFunc;
HINSTANCE hInstLibrary = LoadLibrary( _T("SimpleDLL.dll"));
if (hInstLibrary)
{
_TestFunc = (TestFunc)GetProcAddress(hInstLibrary, "Test");
}
else
{
std::cout << "DLL Failed To Load!" << std::endl;
}
if (_TestFunc)
{
_TestFunc();
}
FreeLibrary(hInstLibrary);
return 0;
}