最初发布在此处(https://stackoverflow.com/questions/32617735/declared-dll-but-errors-external-function-not-found),但被告知不要使用类或命名空间。重新发布一个我仍然无法工作的简单示例。

用C++(Visual Studio)制作的DLL:

// myFirstDLL.h
#define DECLDIR __declspec(dllexport)

DECLDIR int GIMMEFIVE();



// myFirstDLL.cpp
#include "stdafx.h"
#include "myFirstDLL.h"
#include <stdexcept>

//using namespace std;

int GIMMEFIVE()
{
    return 5;
}

LotusScript代理:
Option Public
Option Declare

Declare Public Function GIMMEFIVE Lib "P:\Internet\dplows\visualstudio\myFirstDLL\myFirstDLL\Debug\myFirstDLL.dll" () As Integer

Sub Initialize
    MsgBox GIMMEFIVE()

End Sub

最佳答案

该功能需要包装在extern "C"块中;

extern "C"
{
    extern __declspec(dllexport) int GIMMEFIVE();
}

关于c++ - 声明了Hello World DLL文件。在运行时找不到外部函数,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/32630481/

10-13 09:41