It appears that the second project is a WPF application and the fourth is a WPF control library. That would suggest that the second project should reference the fourth and any installer for the EXE built from the second will include the DLL built from the fourth. ClickOnce will do that. If the first and third projects generate libraries and are referenced by the second project then those DLLs will be included in the installer too. Do those other two projects generate libraries and, if so, are they referenced by the second project? If they do not generate libraries then you'll need a different deployment tool, e.g. a VS Setup project, which can select outputs from multiple projects separately.