Ask a questionAsk a question
 

AnswerMsbuild for vdproj

  • Wednesday, October 12, 2005 3:49 PMlsantoir Users MedalsUsers MedalsUsers MedalsUsers MedalsUsers Medals
     

    Automated Compiling of MSI project from MSBuild 

    I'm creating a automated build process, a process witch needs to result in 
    the creation of a installer (.msi).

    My choice was to use the Setup project in VS 2005 RC
    Running Vs 2005 manually I am having no problems ...

    I have tried a build MSBuild task with then projectfile mySetup.vdproj
    .... no succes
    Msbuild says :
    The project file mySetup.vdproj is not supported by MSbuild and cannot be built

    Is it posible to automate such a project, and how ?

    Best Regard

Answers

  • Thursday, October 13, 2005 12:33 AMFaisal Mohamood MSFTModeratorUsers MedalsUsers MedalsUsers MedalsUsers MedalsUsers Medals
     Answer
    Hi,

    Unfortunately, deployment projects are not supported via the MSBuild task, or if you are using msbuild.exe on a solution that contains a deployment project.  We realize that this is an important scenario, but didn't make it into Visual Studio 2005. 

    We expect to work on enabling this scenario in one of the future releases.

    In the mean time, if you want ot build these from the command line, you can run devenv.exe /build from the command line on the solution that contains your deployment project.  It's not a pretty answer, but it is the workaround for now if you are building from the command line.

    Faisal Mohamood
    MSBuild Team
  • Friday, October 14, 2005 6:28 PMNeil Enns MSFTModeratorUsers MedalsUsers MedalsUsers MedalsUsers MedalsUsers Medals
     Answer
    C'est en Francais :) It says "unspecified error". This is the command-line build bug that existed in the release candidate that went out on the web. It has been fixed in later builds of Visual Studio.

    Neil
  • Wednesday, April 05, 2006 5:17 AMNeil Enns MSFTModeratorUsers MedalsUsers MedalsUsers MedalsUsers MedalsUsers Medals
     Answer

    You can't build a .vdproj using C# Express. You need to have Standard or higher. MSBuild doesn't know anything about .vdproj files, and neither does vcbuild, so neither can actually do the build for you.

    If you have Standard or higher of Visual Studio 2005 you can run devenv.exe /build on the .vdproj file to get it to compile from the command line.

    Neil

All Replies

  • Thursday, October 13, 2005 12:33 AMFaisal Mohamood MSFTModeratorUsers MedalsUsers MedalsUsers MedalsUsers MedalsUsers Medals
     Answer
    Hi,

    Unfortunately, deployment projects are not supported via the MSBuild task, or if you are using msbuild.exe on a solution that contains a deployment project.  We realize that this is an important scenario, but didn't make it into Visual Studio 2005. 

    We expect to work on enabling this scenario in one of the future releases.

    In the mean time, if you want ot build these from the command line, you can run devenv.exe /build from the command line on the solution that contains your deployment project.  It's not a pretty answer, but it is the workaround for now if you are building from the command line.

    Faisal Mohamood
    MSBuild Team
  • Friday, October 14, 2005 4:45 PMlsantoir Users MedalsUsers MedalsUsers MedalsUsers MedalsUsers Medals
     
    I created a setup project and tried to compile it as below using devenv for a setup project. 
     
    C:\travail\DLLSetup>"C:\Program Files\Microsoft Visual Studio 8\Common7\IDE/devenv.com"
            C:\travail\DLLSetup\DLLSetup.sln /build "Debug"
            /project DLLSetup\DLLSetup.vdproj /projectconfig "Debug"

    but this gives the error :

    Microsoft (R) Visual Studio Version 8.0.50727.26.
    Copyright (C) Microsoft Corp 1984-2005. All rights reserved.
    he operation could not be completed. Erreur non spÚcifiÚe
    Use: devenv  [solutionfile | projectfile | anyfile.ext]  [switches]

    This is when i use 2005 Release Candidate . But this process was successfull in 2003.

    I want to know whether this is a known issue in 2005.

    Thanks in advance.

  • Friday, October 14, 2005 5:52 PMFaisal Mohamood MSFTModeratorUsers MedalsUsers MedalsUsers MedalsUsers MedalsUsers Medals
     
    Sorry to hear that you had this problem with the .26 build.  There was a known problem with the devenv /build command when building from the command line that has been fixed for the final build.

    Out of curiosity - I am not sure what the exact error message is - what language are you using?

    Thanks.
    Faisal Mohamood
    MSBuild Team
  • Friday, October 14, 2005 6:28 PMNeil Enns MSFTModeratorUsers MedalsUsers MedalsUsers MedalsUsers MedalsUsers Medals
     Answer
    C'est en Francais :) It says "unspecified error". This is the command-line build bug that existed in the release candidate that went out on the web. It has been fixed in later builds of Visual Studio.

    Neil
  • Wednesday, March 29, 2006 9:23 PMIndra Agustia Users MedalsUsers MedalsUsers MedalsUsers MedalsUsers Medals
     

    Hi Neil,

    Is this the same case as C# Express?

    My project compiled successfully using MS Visual Studio 2005 at work.

    However it won't compile the vdproj at home using C# Express.

    Any solution for this?

    Thanks,

    Indra

  • Wednesday, March 29, 2006 9:26 PMNeil Enns MSFTModeratorUsers MedalsUsers MedalsUsers MedalsUsers MedalsUsers Medals
     

    I'm not sure if C# Express actually supports building Setup and Deployment projects. What error do you get?

    Neil

  • Wednesday, March 29, 2006 10:01 PMIndra Agustia Users MedalsUsers MedalsUsers MedalsUsers MedalsUsers Medals
     
    Sorry, actually C# Express just ignore the vdproj. It says "cannot find the application to open .vdproj", something like that. Is there a way to compile this using the command prompt or it's totally not supported in C# Express?
  • Tuesday, April 04, 2006 1:55 PMpierrebai Users MedalsUsers MedalsUsers MedalsUsers MedalsUsers Medals
     
    Microsoft whoudl really publish a knowledge base article about the incompatibility of MSI project (vdproj) and vcbuild. I lost a few hours searching the net and MSDN until I foud the proper search terms (deployment project compiler) that led to an MSDN article a few results down, that led to this forum, where I finally found help.
  • Wednesday, April 05, 2006 5:17 AMNeil Enns MSFTModeratorUsers MedalsUsers MedalsUsers MedalsUsers MedalsUsers Medals
     Answer

    You can't build a .vdproj using C# Express. You need to have Standard or higher. MSBuild doesn't know anything about .vdproj files, and neither does vcbuild, so neither can actually do the build for you.

    If you have Standard or higher of Visual Studio 2005 you can run devenv.exe /build on the .vdproj file to get it to compile from the command line.

    Neil

  • Thursday, January 11, 2007 11:40 AMDavid Joyce Users MedalsUsers MedalsUsers MedalsUsers MedalsUsers Medals
     
    Will this make it into Orcas, or did it make it into Service Pack 1?

    Thanks,
    David

  • Monday, June 18, 2007 9:50 PMbpeikes Users MedalsUsers MedalsUsers MedalsUsers MedalsUsers Medals
     
    Any updates on if this is going to be fixed? Pretty ridiculous to even have setup projects if msbuild can't support it. Spent many man hours creating our setup projects and now when we want to move to team server, we're completely dead in the water.
  • Monday, July 23, 2007 10:19 PMJeremy Lew Users MedalsUsers MedalsUsers MedalsUsers MedalsUsers Medals
     
    I'm curious about this too.  Will this be in the .NET 3.5 release?
  • Thursday, September 27, 2007 7:14 PMKevgor Users MedalsUsers MedalsUsers MedalsUsers MedalsUsers Medals
     

    I've just tried MSBuild on a solution file that has a vdproj in it and MSBuild says it doesn't support vdproj. I'm using VS Orcas BETA 2 Team System, with .NET 3.5 installed

     

    Kevin

  • Wednesday, January 16, 2008 9:15 PMCarlos Iriarte Users MedalsUsers MedalsUsers MedalsUsers MedalsUsers Medals
     
    I been trying with the VS2008 RTM to do the same thing, but seems it isn't working either.
  • Monday, March 31, 2008 9:19 AMMiles1 Users MedalsUsers MedalsUsers MedalsUsers MedalsUsers Medals
     

    No, it still doesn't work in .Net 3.5's MSBuild.

    You can run InstallShield to commandline build on central servers though.

    The trouble is, we were trying to move away from that to using Microsoft stuff.

     

  • Monday, March 31, 2008 3:53 PMbpeikes Users MedalsUsers MedalsUsers MedalsUsers MedalsUsers Medals
     
    Any word from MS on when this is going to be fixed? We're about to start a nightly build, and it's going to be a pain to not have msi builds. This is a problem that's been going on three years now...

     

  • Wednesday, April 02, 2008 2:42 AMguy__ Users MedalsUsers MedalsUsers MedalsUsers MedalsUsers Medals
     
    Exactly, this is rubbish. How can you be expected to put together an Enterprise level build environment when you need to install the IDE on the build box, it's not a very good option, what will the next recommendation be ? Build everything on the developers machine and then straight to production ?


    What happened to :

    "We realize that this is an important scenario, but didn't make it into Visual Studio 2005.

    We expect to work on enabling this scenario in one of the future releases."

    ?
  • Wednesday, April 02, 2008 9:10 AMMiles1 Users MedalsUsers MedalsUsers MedalsUsers MedalsUsers Medals
     

    Of course it's not a total disaster - just not good, or shall we say 'a bit Microsoft'?

    You can use devenv.com instead of msbuild.exe for your vdprojs.

    That means a more complex central build script. It's more error prone so we're slower too.

  • Wednesday, April 02, 2008 6:05 PMbpeikes Users MedalsUsers MedalsUsers MedalsUsers MedalsUsers Medals
     

    Right, so the question still stands. Why is it that years have gone by without this getting fixed considering that MS stated that it was going to make it into a future version?

  • Thursday, April 03, 2008 1:41 AMguy__ Users MedalsUsers MedalsUsers MedalsUsers MedalsUsers Medals
     
    Couldn't agree more, but to fair to them they didn't say which future version, they could have meant Visual Studio 2038 ...

    It is a bit 'off' though, if you're going to separate build tools from development tools at least do it properly, not half @rsed .  It just seems pointless if we need to install the IDE on the build box anyway ...

    Either that or don't bang on about how :

    "MSBuild is completely transparent with regards to how it processes and builds software, enabling developers to orchestrate and build products in build lab environments where Visual Studio is not installed"

    Really ?
  • Tuesday, July 22, 2008 4:09 PMBrent Dunham Users MedalsUsers MedalsUsers MedalsUsers MedalsUsers Medals
     
    If you need to automate a build of an MSI, I'd recommend using WiX. You can convert your .vdprojto a Wix project and use MSBuild. It's bit of work but the .vdproj files are not MSBuild project files. I'm not sure why MS hasn't converted these projects yet but you can do it yourself.
    Here's a decent article on the subject Wix Trix Article on using MSBuild.

    thanks,
    Brent

  • Tuesday, February 03, 2009 12:44 PMJames2000 Users MedalsUsers MedalsUsers MedalsUsers MedalsUsers Medals
     
    "Why is it that years have gone by without this getting fixed considering that MS stated that it was going to make it into a future version"

    Because Microsoft has no intention of making msbuild support vdprojs.

    Think about this.  If you were tasked with designing a deployment project type and there was this great build system out there (msbuild), wouldn't one of your first designing goals be to make it work with it?

    Vdprojs came after the msbuild system and, even though all other projects types were supported, Microsoft intentionally did not provide msbuild support for vdproj.  Why?

    money

    Msbuild support means no need for a Visual Studio copy on your production box.

  • Wednesday, February 04, 2009 7:51 PMbpeikes Users MedalsUsers MedalsUsers MedalsUsers MedalsUsers Medals
     
    Who would pay for that license anyway. I think instead of the answer being "money", it's "time".  They don't want to spend the time to develop it and test upgrading the setup project files. Plus, they don't want to piss off all of folks who make installer packages like InstallShield.
  • Tuesday, October 06, 2009 4:13 PMgeac Users MedalsUsers MedalsUsers MedalsUsers MedalsUsers Medals
     
    I'm another user who was just disgruntled to discover this roadblock.  I was prompted to automate rebuilding products because Microsoft automatically pushes changes in their dependencies .  What are we to do?