cancel
Showing results for 
Search instead for 
Did you mean: 
cancel
Showing results for 
Search instead for 
Did you mean: 
Archicad C++ API
About Archicad add-on development using the C++ API.
SOLVED!

Where should the DLLs that plugins depend on be placed?

sxs
Booster

On the Windows platform, where should the DLLs that plugins depend on be placed? I am currently in the same level directory as the plugin, but the plugin failed to load.

sxs_0-1748245976516.png

 

1 ACCEPTED SOLUTION

Accepted Solutions
Solution
Oleg
Expert

I guess, for static DLL loading it will be Archicad.exe path.

 

I used DLLs with my addon early. Both own DLLs and a third-party DLL.
But I used only dynamic loading using LoadLibraryEx (LOAD_WITH_ALTERED_SEARCH_PATH) and GetProcAddress, so I used a direct DLL's path inside where my addon was installed.

I dont know, may be there is a simple way and anybody will point you.

My approach for loading third-party DLL was indirect. My own DLL was dependent on third-party DLL.
From my addon I loaded only my DLL using LoadLibraryEx (LOAD_WITH_ALTERED_SEARCH_PATH) and it loaded the third-party DLL automatically, from my DLL folder. My addon had a simple root function linked by GetProcAddress. 


View solution in original post

2 REPLIES 2
Solution
Oleg
Expert

I guess, for static DLL loading it will be Archicad.exe path.

 

I used DLLs with my addon early. Both own DLLs and a third-party DLL.
But I used only dynamic loading using LoadLibraryEx (LOAD_WITH_ALTERED_SEARCH_PATH) and GetProcAddress, so I used a direct DLL's path inside where my addon was installed.

I dont know, may be there is a simple way and anybody will point you.

My approach for loading third-party DLL was indirect. My own DLL was dependent on third-party DLL.
From my addon I loaded only my DLL using LoadLibraryEx (LOAD_WITH_ALTERED_SEARCH_PATH) and it loaded the third-party DLL automatically, from my DLL folder. My addon had a simple root function linked by GetProcAddress. 


Ok,thanks.