Custom DLL not found in (Project)/Binaries/Win64 when distributing source-built engine and project

I’m trying to distribute a source-built editor along with a Project containing C++ code.

On first computer:

  1. Successfully built both the engine
    and my project’s custom C++ code
    (have a .DLL and PDB sitting in
  2. Tested,
    DLL loads fine (custom BP nodes
    visible and working in the project)
  3. Zipped the engine folder and the
    project into two separate files

On second computer:

  1. Created folders for engine
    (D:\UE4_4112_Engine) and project
  2. Unzipped zipfiles
    into each respective folder
  3. In
    (Engine)/Binaries/Win64, ran
    UnrealVersionSelector.exe to
    register the newly-copied engine as
    a valid engine installation
  4. Tried to
    load the project

At this point, the second computer refuses to find the custom DLL inside (Project)/Binaries/Win64. However, it does find the DLL if I manually copy it to (Engine)/Binaries/Win64. Yet this is an insufficient solution, since everything will be moving to Perforce and I cannot have users manually copying files around.

So I have a few questions:

  1. Is this a valid process for giving the source-built engine and project to a colleague?

  2. When copying the engine and project to a destination computer, should I use exactly the same folder names and structure as exist on the source computer?

  3. Inside (Project)/Binaries/Win64/(MyProject), I can see

    “Path” : “$(ProjectDir)\Binaries\Win64\UE4Editor-(MyProject).dll”,
    “Type” : “DynamicLibrary”

Is $(ProjectDir) a Visual Studio variable? How can I change this on a destination computer without rebuilding the entire engine?