Пользовательская функция на C. Проблема с PG_MODULE_MAGIC

PostgreSQL 9.3 или 9.4. Создаю DLL-библиотеку (if_dll.dll) с пользовательской функцией на С (в MS Visual Studio 2010). При попытке CREATE функцию в PostgreSQL получаю "ОШИБКА: несовместимая библиотека "C:/Program Files/PostgreSQL/9.4/lib/if_dll.dll": нет отличительного блока" хотя в тело библиотеки включен PG_MODULE_MAGIC. Исходный текст ниже. В чем проблема ?
#include "stdafx.h"
#include "if_dll.h"
#include "postgres.h"
#include "fmgr.h"
#include "libintl.h"

#ifdef PG_MODULE_MAGIC
PG_MODULE_MAGIC;
#endif

#if defined(_WIN32)
#define DLLEXPORT __declspec(dllexport)
#else
#define DLLEXPORT
#endif

#ifdef _DEBUG
#define new DEBUG_NEW
#endif

BEGIN_MESSAGE_MAP(Cif_dllApp, CWinApp)
END_MESSAGE_MAP()

Cif_dllApp::Cif_dllApp()
{
// TODO: add construction code here,
// Place all significant initialization in InitInstance
}

Cif_dllApp theApp;
BOOL Cif_dllApp::InitInstance()
{
CWinApp::InitInstance();

return TRUE;
}
//-----------------------------------------------------------------------------
DLLEXPORT
int add_one (int arg) {
return arg + 1;
}

Опции просмотра комментариев

Выберите предпочитаемый вами способ показа комментариев и нажмите "Сохранить настройки" для активации изменений.

Я не знаю. Но моё знакомства

Я не знаю. Но моё знакомства с С функциями остановилось на том, что я там тыкал-тыкал, менял-менял настройки и таки откомпилил и добавил. Однако, на вход моя функция boolean не принимала и всё тут. Такие дела...

Опции просмотра комментариев

Выберите предпочитаемый вами способ показа комментариев и нажмите "Сохранить настройки" для активации изменений.

Back to top

(С) Виктор Вислобоков, 2008-2023