I have compiled my project and some of my project\'s added .dlls have absolute references. When I try to run my project on another machine, it looks for the .dlls from the orig
You may also write your handler for resolving assemblies. In the simplest form it may look like this:
AppDomain.CurrentDomain.AssemblyResolve += AssemblyResolveHandler;
..
static Assembly AssemblyResolveHandler(object sender, ResolveEventArgs args)
{
string assemblyPath = "yourpath";
return Assembly.LoadFrom(assemblyPath + args.Name);
}
Another option is adding entry in App.config:
<runtime>
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
<probing privatePath="yourpath"/>
</assemblyBinding>
</runtime>
Edit the .csproj
file and change the <HintPath>
elements from absolute paths to relative paths.