Build merge module without Devenv from .vdproj
Asked Answered
F

4

5

I read quit a few Stackoverflow Questions about building mergemodules via commandline but all of them were accepted when either somebody suggested to use devenv for compilation or use Dark to create wix-files from existing msi files.

Considering the following:

  • VisualStudio isn't installed on the buildserver I have to use.
  • I am using nant + msbuild to compile the solutions
  • I would like to compile mergemodules from .vdproj (because Visual Studio detects dependencies automatically)
  • and create a msi setup from multiple mergemodules

... how can I build the merge modules from commandline without devenv and without loosing the comfort of automated dependencie resolving for mergemodules in visualstudio? Maybe there is a nanttask for it I haven't found?

Fluttery answered 8/10, 2009 at 14:11 Comment(0)
H
5

MSBuild doesn't support Visual Studio deployment projects, my advice would be to bite the bullet and go with Wix.

Perhaps VS2010 will use MSBuild schema for vdproj files? I'm guessing no, but couldn't find any links.

Heddy answered 9/10, 2009 at 5:52 Comment(5)
Is there a userfriendly way to build mergemodules? I am not keen on putting lots of xml together manually.Fluttery
Merge modules are built the same way as normal MSI files, just a property change. You can use 'heat' to harvest files, see wix.mindcapers.com/wiki/HeatHeddy
Thanks for pointing that out. However this is really annoying, imo: "However, heat is considerably less useful after initial project setup, because there is no way to preserve component GUIDs when repeating the process to acquire new files."Fluttery
Ah, I haven't worked with heat that much, but I do know that if you go with a one file per component approach, then it's possible to wildcard your GUID. There are a few rules and caveats, but perhaps you could do attempt some post-heat (regex) process to wildcard your GUIDs?Heddy
I have implemented its working for me Rerf : 1. #2880509 #8648928Quintuplet
A
0

currently, it is not possible to do this with msbuild. but i am pretty sure you might be interested in this MSDN blog article because of your question related to merge module/setup projects in vs. It seems they won't continue to support .vdproj files in upcomming versions of visual studio (2010 will be the last supporting them).

So you may run into problems in the future even if you're using devenv instead of msbuild.

... but this article could be some kind of whispering, too. Anyway, there are a lot of alternatives on the road if you want to build setups.

Ault answered 1/9, 2011 at 21:49 Comment(0)
A
0

Even I was facing the same issue. Use below format

call "C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\vcvarsall.bat"

cd /d Path_to_sln

"C:\Program Files (x86)\Microsoft Visual Studio 10.0\Common7\IDE\devenv.com" "Required_path\solution.sln" /Project "Required_path\Setup\Setup.vdproj" /Build Release /Out "Required_Path\vs_errors.txt"

Analog answered 16/8, 2019 at 6:3 Comment(0)
D
-1

I would be pretty surprised if you are able to build .vdproj files without installing Visual Studio.

Dannica answered 9/10, 2009 at 5:35 Comment(2)
Faisal Mohamood MSFT, Manager on the MSBuild team said: "[...] deployment projects are not supported via the MSBuild task, [...] We expect to work on enabling this scenario in one of the future releases." He said that years ago in this msdn conversation snurl.com/seu1c . So I wouldn't be surprised at all. In fact I am surprised that MSBuild still seems to be unable to compile vdproj.Fluttery
The snipped link doesn't work anymore. Here is the unsnipped link: social.msdn.microsoft.com/Forums/en-US/msbuild/thread/…Fluttery

© 2022 - 2024 — McMap. All rights reserved.