none
Can "devenv /updateconfiguration" be used instead of "devenv /setup" after installing VSPackage by msi?

    Question

  • Hello!

    We are deploying our VSPackage (for Visual Studio 2012 under Windows 7) using an msi. According to Microsoft, I have to run "devenv /setup" after the installation (http://msdn.microsoft.com/en-us/library/vstudio/bb166419(v=vs.110).aspx).

    My problem is that it takes a long time for the command to execute (up to 15 minutes). Plus, it also reset the UI language settings to it's default value (french) rather than staying to the value set it for (english).

    I read somewhere that the undocumented "devenv /updateConfiguration" can be use instead, and that it takes less time. Looks like this option will cause a pkgdef merge and will rebuild the command UI on next launch (http://social.msdn.microsoft.com/Forums/en-US/vsx/thread/46806e9b-c114-42c3-98ff-d9717a9dd02f). This solution (/updateConfiguration) seems to works for me and takes a fraction of the time that /setup takes, but I am a bit puzzled as of why.

    My question is this : What does /updateConfiguration do exactly? I mean, since I use msi and I don't copy any pkgdef (the msi is taking care of the registration), why does /updateConfiguration works? 

    I am trying to figure out if there are downside of using this solution over the /setup.

    Thanks!
    J-R

    =o)

    Thursday, May 09, 2013 12:54 PM

Answers

  • I believe so, unless the package includes project/item templates, in which case I do not believe UpdateConfiguration will work. I am interesting in why /setup takes so long, what do you have installed on these machines? I have never seen it take over a minute or two. It has to load every package to get information from them, so perhaps there are lots of extensions doing a lot of unnecessary work here?
    • Marked as answer by Goofyb Wednesday, May 15, 2013 1:44 PM
    Friday, May 10, 2013 7:08 PM
    Moderator

All replies

  • For VS2012, I believe it is ok to run. However, it doesn't works on VS2010, and it is a un-documented command, it may not be contiuned sometimes.

    To ansower your question, as per my thread as you refered, Rayn comfirmed that build process uses the undocumented /updateConfiguration to deploy the debug version vsix to VS Exp hive.

    What I suggested is to use /Setup anyway, there is some unexpected risk since it is undocumented.

    Yi


    MSC on Computer Science (Parallel algorithm)

    Friday, May 10, 2013 4:51 AM
  • If I understand correctly, the VSIX is using devenv /updateConfiguration when installing VSPackage?

    Thanks!

    =o)


    Friday, May 10, 2013 4:51 PM
  • I believe so, unless the package includes project/item templates, in which case I do not believe UpdateConfiguration will work. I am interesting in why /setup takes so long, what do you have installed on these machines? I have never seen it take over a minute or two. It has to load every package to get information from them, so perhaps there are lots of extensions doing a lot of unnecessary work here?
    • Marked as answer by Goofyb Wednesday, May 15, 2013 1:44 PM
    Friday, May 10, 2013 7:08 PM
    Moderator
  • Hello!

    I am a little fuzzy on what "loading package" implies. When you say "it has to load every package", does it mean it will execute the "Initialize" method on each package? 

    I know our extensions are pretty messed-up and some of them are inter-dependent, but I don<t really understand how it is related with the /setup option.

    Thanks again for your time, it is really appreciated.
    =o

    Wednesday, May 15, 2013 2:20 PM