Hi Dieter,
Yep, indeed so.. can reproduce this as well.
Maybe Visio 2013 got so smart that it does not load VSL if it depends on other DLLs fir security reasons?
Looks like a bug. Or are they somehow preparing to sandboxed deployment? Whatever.
The issue seem to exist in all scenarios -
it is not important, if the VSL was "deployed" by path setting, or by the installer (published).
Looks like if a VSL depends on ANY other DLL (which happens to be neither Windows nor Visio dll), then Visio 2013 just does not load it. That's it.
Anyways, the workarounds:
1. You have already figured the first one out. Copy your DLL to Visio directory "C:\Program Files (x86)\Microsoft Office\Office15" or to "C:\Windows\SysWOW64".
2. A neat one (I think). Add a manifest to your VSL in project.
If you are using Visual Studio:
- Create file named "Visio2013.manifest" and put it to project directory.
The content should be: (change to your VSL/DLL names, add more entries if you have more than one dependent dll)
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0">
<file name="YourAddon.vsl"/>
<file name="YouDependent.dll"/>
</assembly>
The main idea is to tell windows loader that all thse files are in one "assembly".
Now go to project settings -> Configuration Properties -> Manifest Tool -> Additional Manifest Files.
Put "Visio2013.manifest" in this field.
Build/Run. Should work now. At least worked for me.