.NET Framework Developer Center > .NET Development Forums > MSBuild > ClickOnce bootstrapper files without installing Visual Studio?
Ask a questionAsk a question
 

AnswerClickOnce bootstrapper files without installing Visual Studio?

  • Friday, October 31, 2008 4:40 PMkaffekop Users MedalsUsers MedalsUsers MedalsUsers MedalsUsers Medals
     
    Hello,

    I also asked this question here: http://forums.microsoft.com/msdn/ShowPost.aspx?PostID=4065767&SiteID=1

    On a build server I want to deploy and publish a ClickOnce application. On the build server I want to prevent having Visual Studio installed.

    I installed the 6.1 SDK on the server, but there exists no bootstrapper files in C:\Program Files\Microsoft SDKs\Windows\v6.1. This causes my ClickOnce build to fail.

    Thanks in advance.

Answers

  • Wednesday, November 12, 2008 6:20 AMRong-Chun ZhangMSFT, ModeratorUsers MedalsUsers MedalsUsers MedalsUsers MedalsUsers Medals
     AnswerHas Code

    Hi,

    Sorry for that doesn't work. The _DeploymentGenerateBootstrapper target use the task GenerateBootstrapper to generate a custom Setup.exe that can download and install the package that you choose as the prerequisite. The path attribute of the task GenerateBootstrapper indicates that where to find the bootstrapper packages. By default, if you didn't set the value, GenerateBootstrapper task will get value from the following registry (for .NET 3.5, more information, please see this page).

         HKLM\Software\Microsoft\GenericBootstrapper\3.5

    Please check if you have add the following registry

         Key Name:          HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\GenericBootstrapper\3.5

         Value 0
          Name:            Path
          Type:            REG_SZ
          Data:            c:\Program Files\Microsoft SDKs\Windows\v6.0A\Bootstrapper\

    Another workaround is that you can specify the Path attribute by overriding the _DeploymentGenerateBootstrapper target or write your own target to use the GenerateBootstrapper use to generator the bootstrapper. Here is a sample for overiding predefined target.

    http://blogs.msdn.com/msbuild/archive/2006/02/10/528822.aspx

    Let me know if this helps.

    Thanks,
    Rong-Chun Zhang


    Please mark the replies as answers if they help and unmark if they don't.

All Replies

  • Monday, November 03, 2008 7:49 AMmarc_gsi Users MedalsUsers MedalsUsers MedalsUsers MedalsUsers Medals
     
    Windows SDK? I think you'll need the .net SDK, at least version 2.0. Or is it included in the Windows SDK?
    http://blogoscoped.com/archive/2005-08-24-n14.html
  • Monday, November 03, 2008 7:51 AMkaffekop Users MedalsUsers MedalsUsers MedalsUsers MedalsUsers Medals
     
    I have both .NET SDK and Windows SDK installed. 
  • Wednesday, November 05, 2008 10:07 AMRong-Chun ZhangMSFT, ModeratorUsers MedalsUsers MedalsUsers MedalsUsers MedalsUsers Medals
     

    Hi,

    For Visual Studio 2008, the prerequisites package is stored in the following location:

       \Program Files\Microsoft SDKs\Windows\v6.0A\Bootstrapper\Packages

    You can try to copy these file from the another computer which has Visual Studio 2008 installed, and put them to the same location on build server. More information, please check:

    http://msdn.microsoft.com/en-us/library/ms165429.aspx

    Let me know if this works.

    Thanks,
    Rong-Chun Zhang


    Please mark the replies as answers if they help and unmark if they don't.
  • Tuesday, November 11, 2008 2:42 PMkaffekop Users MedalsUsers MedalsUsers MedalsUsers MedalsUsers Medals
     
    Hello,

    Copying the files to the build server did not work. I am still getting (the same) errors from bootstrapping.

  • Wednesday, November 12, 2008 6:20 AMRong-Chun ZhangMSFT, ModeratorUsers MedalsUsers MedalsUsers MedalsUsers MedalsUsers Medals
     AnswerHas Code

    Hi,

    Sorry for that doesn't work. The _DeploymentGenerateBootstrapper target use the task GenerateBootstrapper to generate a custom Setup.exe that can download and install the package that you choose as the prerequisite. The path attribute of the task GenerateBootstrapper indicates that where to find the bootstrapper packages. By default, if you didn't set the value, GenerateBootstrapper task will get value from the following registry (for .NET 3.5, more information, please see this page).

         HKLM\Software\Microsoft\GenericBootstrapper\3.5

    Please check if you have add the following registry

         Key Name:          HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\GenericBootstrapper\3.5

         Value 0
          Name:            Path
          Type:            REG_SZ
          Data:            c:\Program Files\Microsoft SDKs\Windows\v6.0A\Bootstrapper\

    Another workaround is that you can specify the Path attribute by overriding the _DeploymentGenerateBootstrapper target or write your own target to use the GenerateBootstrapper use to generator the bootstrapper. Here is a sample for overiding predefined target.

    http://blogs.msdn.com/msbuild/archive/2006/02/10/528822.aspx

    Let me know if this helps.

    Thanks,
    Rong-Chun Zhang


    Please mark the replies as answers if they help and unmark if they don't.
  • Friday, November 14, 2008 8:03 AMkaffekop Users MedalsUsers MedalsUsers MedalsUsers MedalsUsers Medals
     
    Thanks. Adding the registry key made it work.
  • Thursday, May 14, 2009 9:14 PMDan Morris Users MedalsUsers MedalsUsers MedalsUsers MedalsUsers Medals
     
    BTW, I had the same problem, and for me the issue was that somehow the Windows SDK had been _partially_ installed on one drive, but Visual Studio was looking on a different drive.  Re-installing the SDK didn't help, because I _did_ have the SDK installed.  So I just moved the entire contents of:

    C:\Program Files\Microsoft SDKs\Windows

    ...to:

    D:\Program Files\Microsoft SDKs\Windows

    And everything worked fine.

    Moral of the story: check for traces of multiple SDK installations if you're having this problem.

    -Dan