Выпуск библиотеки DLL C++, вызванной из excel VBA
Всем привет,
Я успешно вызываю функцию dll, написанную на c++, из макроса, созданного в EXCEL VBA.
функция вызывается с помощью оператора Declare:
Private Declare PtrSafe Function FourierSerieCoeffs Lib "D:\OutBin\ISLib.dll" (ByVal T As Double, ByVal n As Long, ByVal nEq As Long, ByRef x As Double, ByRef fx As Double, ByRef outC As Double) As Long
После первого выполнения макроса я не могу перестроить библиотеку dll, потому что кажется, что Excel все еще использует ее.
Единственный способ перестроить dll проект с открытым файлом excel это добавить в конце макроса следующие строки:
hMod = GetModuleHandle("ISLib.dll") Do Until FreeLibrary(hMod) = 0 Loop
с помощью этих строк я могу скомпилировать проект c++, но если я выполню его снова, то макрос excel выйдет из строя.
Любое предложение выпустить dll без сбоя excel в следующих исполнениях?
Спасибо
Что я уже пробовал:
I tried calling the library again with LoadLibrary at the beginning of the macro but it doesn't work.