If you do not want the user to install more than one application, you do not need to have multiple ClickOnce deployments. What you really want is one deployment. Therefore, the ClickOnce application should be your main application, and you need to include exe from the add-on application in the ClickOnce deployment. I would do this:
Add an exe copy to the ClickOnce project, set the build action to "content" and "copy-to-output-directory" to "always copy." Then build and check the Application Files dialog box in the publication properties and make sure it displays.
Now, if you can build a solution and it creates both projects, make sure that it creates a project that exe creates first. Then add the post-build command to the ClickOnce project, which will copy it from the first project output directory to the second project output directory.
What happens is that he will build the first project, then he will build the C / O project (and copy the project of the ClickOnce exe project to the output directory), and THEN he will copy the latest version of exe from another project to the output directory of the ClickOnce project, and then will create a deployment.
I'm not an msbuild expert, but the post-build command will be something like this.
COPY / Y "$ (ProjectDir) .... \ otherproject \ bin \ release \ mynew.exe" "$ TargetDir) \ mynew.exe"
This is copying from the current project into two levels, another project, then the bin folder, and then release + mynew.exe to the assembly output directory. I will not have a directory structure in exactly another project - you will need to install it yourself. But it gives you a general idea.
source share