I have the "Main" program which loads my own "plugin.dll" file dynamically using reflection. The "plugin.dll" file references to the third party "device.dll" by using visual studio references. As long as the "device.dll" and "plugin.dll" are in the same folder as the "Main" program or the "Main" program has the reference to the "plugin.dll" everything works fine. But as soon as I move the "device.dll" file to another folder I get the following error message: "Could not load file or assembly or one of its dependencies. The system cannot find the file specified." The problem occurs because the program does not find the "device.dll" file. The "Copy Local" property or the "Reference paths" does not have any effect towards this issue. I understand that I have to specify the path to the "device.dll" but I could not find a way to do it without putting the "plugin.dll" and "device.dll" to the GAC (global assembly cache). GAC is not a solution because third party dll has to be strong-named as well (dissasemble and assemble again), which is not allowed by copyright license.
Additional details: Using visual studio 2013 and .Net framework 4.0 FUSLOGVW does not register any errors (any ideas why?).
Looking forward to your suggestions, thanks in advance.