Я предполагаю, что весь код находится в одном проекте (Company.Pins.Bank.Win32Console).В этом случае вам следует переместить включения <\ iostream> и <\ stdio.h> (и любые другие включения заголовков, которые никогда / редко изменяются на stdafx.h:
//stdafx.h
#include <iostream>
#include <stdio.h>
//other headers that are widely used but never/seldom change...
#define DllExport __declspec(dllexport)
#define DllImport __declspec(dllimport)
и
//UInstruction.h
#pragma once //you are in VS 2010...
#include "common.h"
//ommited code for brevity...
void UserInstruction1(double* lpNumeric, TCHAR* lpAlpha1, TCHAR* lpAlpha2);
и
//UInstruction.cpp
#include "stdafx.h"
#include "UInstruction.h"
//ommitted code for brevity...
void UserInstruction1( double* lpNumeric,
TCHAR* lpAlpha1, TCHAR* lpAlpha2 )
{
//logic goes here
}
Если UserInstruction1 находится в Dll, который используется проектом Company.Pins.Bank.Win32Console:
Убедитесь, что вы определили в stdafx.h дляdll и консольные проекты:
#define DllExport __declspec(dllexport)
#define DllImport __declspec(dllimport)
Откройте свойства проекта DLL, перейдите в «Свойства конфигурации» -> «C / C ++» -> «Препроцессор» и добавьте в «Определения препроцессора» символ препроцессора.(если у вас его нет). Т.е. я назову его MY_DLL. Не забудьте определить его во всех конфигурациях ...
Убедитесь, что вы экспортируете функции из Dll
//UInstruction.h
#pragma once //you are in VS 2010...
#ifdef MY_DLL
#define MY_DLL_EXPORTS DllExport
#else
#define MY_DLL_EXPORTS DllImport
#endif //MY_DLL
#include "common.h"
#define PRES_NOCOMMAND_FOUND 2000
//ommited code for brevity...
void MY_DLL_EXPORTS UserInstruction1(double* lpNumeric, TCHAR* lpAlpha1, TCHAR* lpAlpha2);
Файл cpp для UInstruction остается таким же, как указано выше ...
РЕДАКТИРОВАТЬ: Для полноты ...
//UInstruction.cpp
#include "stdafx.h"
#include "UInstruction.h"
//ommitted code for brevity...
//no extern needed...
void UserInstruction1( double* lpNumeric,
TCHAR* lpAlpha1, TCHAR* lpAlpha2 )
{
//logic goes here
}
Не забудьте добавить ссылку на Dllпроект для проекта Company.Pins.Bank.Win32Console из свойств Company.Pins.Bank.Win32Консоль «Общие свойства» -> «Фреймворк и ссылки»