À l'origine, il a été posté ici (https://stackoverflow.com/questions/32617735/declared-dll-but-errors-external-function-not-found) mais a été informé de ne pas utiliser de classe ni d'espace de noms. Repose un exemple plus simple que je n'arrive toujours pas à faire.Déclaré Bonjour World DLL fichier. Fonction externe introuvable à l'exécution
DLL en C++ (Visual Studio):
// 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 Agent:
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
Quelle convention d'appel est prévue par le script de lotus? – Niall
@Niall, c'est très similaire à VB. Juste pour info, j'ai appelé avec succès les fonctions d'une DLL avant (clignotant la fenêtre actuelle dans la barre des tâches via user32.dll). Doit juste être quelque chose de mal avec le mien. – dplows
[Cela peut aider] (http://www-01.ibm.com/support/knowledgecenter/#!/SSVRGU_9.0.1/com.ibm.designer.domino.main.doc/LSAZ_WORKING_WITH_EXTERNAL_C_LANGUAGE_FUNCTIONS.html). Vous pouvez également utiliser Dependency Walker pour afficher le nom de la fonction exportée. Je ne connais pas le script de voyants, mais VBA pourrait être difficile sur les noms de fonction (https://msdn.microsoft.com/en-us/library/aa235591(v=vs.60).aspx) – Niall