When interfacing with .NET, how do I use unmanaged DLLs that are located in the assembly folder?

2 Ansichten (letzte 30 Tage)
Hi,
I'm calling some functions in a .NET assembly that is in a different folder to MATLAB. I'm aware that using dllimport for unmanaged DLLs doesn't work in this case because matlab.exe is in a different folder. Copying the unmanaged DLLs to the MATLAB installation folder works, but this is not an ideal solution for production code.
Is there a way to get around this problem without hard-coding directories? I'm trying to avoid editing the Windows path.
Thanks
James

Akzeptierte Antwort

Friedrich
Friedrich am 6 Dez. 2013
Bearbeitet: Friedrich am 10 Dez. 2013
Hi,
you can edit the PATH locally for MATLAB only with the setenv command:
setenv('PATH',[getenv('PATH'),';C:\your folder with DLLs'])
So you can build up the PATH dynamically at runtime and set it silently in the background.
UPDATED TYPO (Thanks James)

Weitere Antworten (0)

Kategorien

Mehr zu Startup and Shutdown finden Sie in Help Center und File Exchange

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by