Hey everyone!
I’m struggling with a very strange problem and I already tried out everything that I could imagine but still the problem persists and I hope that you guys can help me.
I built a code plugin that uses some Third-Party DLLs. It works perfectly as a project plugin and copies over the needed DLLs to the Binary folder using
RuntimeDependencies.Add("$(BinaryOutputDir)/depthengine_2_0.dll", depthEngineDllPath);
RuntimeDependencies.Add("$(BinaryOutputDir)/k4a.dll", k4aDllPath);
RuntimeDependencies.Add("$(BinaryOutputDir)/k4abt.dll", k4abtDllPath);
However, as an engine plugin on the UE Marketplace, this does not work anymore. I already tried out multiple things, e.g.:
RuntimeDependencies.Add("$(TargetOutputDir)/depthengine_2_0.dll", depthEngineDllPath);
RuntimeDependencies.Add("$(TargetOutputDir)/k4a.dll", k4aDllPath);
RuntimeDependencies.Add("$(TargetOutputDir)/k4abt.dll", k4abtDllPath);
RuntimeDependencies.Add("$(PluginDir)/Binaries/Win64/depthengine_2_0.dll", depthEngineDllPath);
RuntimeDependencies.Add("$(PluginDir)/Binaries/Win64/k4a.dll", k4aDllPath);
RuntimeDependencies.Add("$(PluginDir)/Binaries/Win64/k4abt.dll", k4abtDllPath);
But still the DLLs are not copied over. I am pretty sure that the paths (k4aDllPath etc.) are correct:
string sdkPath = Path.GetFullPath(Path.Combine(PluginDirectory, "Source/ThirdParty/azure-kinect-sdk"));
string k4aDllPath = Path.Combine(sdkPath, "sdk", "windows-desktop", "amd64", "release", "bin", "k4a.dll");
What am I missing? Or how can I debug this problem best?
I really hope that you guys can help me and I’m looking forward to any helpful answer!!