Upgrade VS2010 Professional to Premium or Ultimate - visual-studio-2010

I have VS2010 Professional installed
A client has recently asked me to add a Database project to the solution for the creation and deployment of databases (only available with Premium or Ultimate)
Can I buy an upgrade to the current license? if so Where?
Or can I get the Database project templates some other way and use them with Professional?
Thanks

IMHO, database projects are not worth it. I would strongly suggest you create your databases using a script, which you can easily add to your solution and which can be versioned and checked into source control just like any other type of file.
If you are resigned, you definitely need Premium or Ultimate in order to open and use a database project. No plugin or template will change this.
You can upgrade from Microsoft or a reseller. I believe it comes with an MSDN license, which means the path can be steep (maybe 2-2.5k for premium and upwards of 10k for ultimate).
Actually, back in '11 they were pretty bad. They are definitely improving. I'm using one now for a website that publishes to Azure. In this form, they are pretty damned convenient. The tooling is still lacking in 2012. Hopefully in 2013 you'll be able to, for example, add foreign keys using the toolset instead of writing sql.

Related

Difference between Wix and Visual Studio installer

I'm developing a Visual Studio application with WPF, but right now is the moment where I have to choose my installer.
I need my project to be able to write on the GAC and on registry, but I'm not sure if I should use Visual Studio installer or Wix... I can't find on Google information that says exactly the differences between both of them.
I found that Wix is more complete, but I can't find any article that specifies real differences between one or another...
Can anyone help me to find more specific information or to choose between both of them?
EDIT: Sorry, I specify:
I'm using Visual Studio 2010 professional.
The end product is the same, a windows installer msi.
It's just different how you get there. With the old vdproj there wasn't much other than setting up files to be copied and registry keys as far as I remember. Anything else and you would have to create a custom action in C++ or VBS, not a particularly easy task if you are .net developer.
However with the advent of Wix there are a lot more in-built custom actions which enable you to create a rich installation experience and if you need to create your own custom action you can use .net. Also it is much easier to create a bootstrapper which can install dependencies along with your msi as well as being able to create a front-end in WPF.
As #nvoigt said the old vdproj type is not supported in VS2012 and it also cannot be built by a build server without doing some nasty setup (you have to install VS).
All in all there really should be no question of what to use, Wix is the way forward.
Caveman_Dick wrote:
"Anything else and you would have to create a custom action".
And that in a nutshell is the difference. Visual Studio Deployment Projects heavily abstracts you from the underlying windows installer and seals away a great deal of it's ability. This goes against the very design of Windows Installer which is supposed to be a declarative, transactional programming model.
Take installing a Windows Service as an example? Windows Installer has the ServiceInstall table. VDPROJ fails to expose this so you are off writing brittle custom actions resulting in a less elegant and less robust installer.
WiX on the other hand is a very thin abstraction. It's all about XML XSD elements and attributes that represent the underlying Windows Installer table data. The build process simply transforms the XML to SQL tables. If MSI can do it, WiX can (99%) do it.
VDPROJ was a horrible mistake and Microsoft has finally owned up to it and killed it. Now WiX doesn't have UI designers ( I've written one on CodePlex though) so you might also want to consider InstallShield Limited Edition (FREE).
Using a combination of ISLE and WiX I can get the best of both worlds.
With Setup projects no longer shipped with current versions of Visual Studio, you might want to use Wix. Otherwise, you will have to write it again once you switch to a current version of Visual Studio.

Attach and configure ms sql server database using installation package

i have some Db steps (attach database, adding and configure a new login, configure roles) and i want to automize it using installation package. Right now in project we are using standard Visual studio installer. Can i implement db steps using standard visual studio intaller (custom actions or something else)? Or maybe i should use some others installers like Install shield, Wix?
As far as I know Visual Studio setup project doesn't offer this functionality out of the box (although, my experience with it is tiny). Also, it is not a good idea to implement it all from scratch in a custom action - it is really the last resort.
Other vendors, at least those you mentioned, do offer this. if you decide to move to one of those, keep in mind the learning curve, which will take some of your time (for WiX is probably more). However, if the VS setup project is quite small and simple, it might be a good idea to move at this point, considering the fact that VS setup project type was deprecated by Microsoft.
For DB configuration you may create SQL script which can be installed with an application or into temp directory and feed it to whatever consumes sql scripts in mssql (in oracle its sqlplus). Not sure about visual studio but that's how I saw in one project for InstallShield.

How to work simultaneously with 2-3 users on the same project?

I have a team of 3 developers and I want that we should be able to work on the project from our own homes, at any time (or at the same time) and make changes to the project. Till now, we have to mail each other all the updates versions to keep in sync. We are developing the project in Visual Studio 2010 currently and use SQL Express 2008. I searched internet and got some idea about Team Foundation Server but it requires Windows Server. I don't want to get into this mess and I have a Win7 Pc. Please suggest me some easy solutions.
There are any number of low-cost (often free to open source projects) hosted source control providers out there.
Personally I use Subversion along with the AnkhSVN plugin for Visual Studio.
Mercurial and Git are also quite popular and supported within Visual Studio via plugins.
Any of those options can be setup in a few minutes (if you use a hosted solution) and will all work for a small team.
Version Control is what your looking for,and your right there are some complicated solutions out there. TortoiseSVN isn't too complicated but works well.

Project management with Visual Studio, without TFS?

Can I have some basic project management in Visual Studion without TFS or is TFS what I need?
Basically I like to get a list with my projects, last edited dates, and if possible project tags (customer for example), and when selecting one VS should load it. From the right repository (Mercurial/Git/Svn). I can move my project to some repo host if they have this solution (Addon).
At the moment I handle the projecs manually with Windows standard folders + SVN/Hg in folder context menu, and thats a headache.
Thank you
As far as I know Visual Studio doesn't support that functionality natively.
TFS isn't my forte but I know it comes with MSDN subscriptions and the retail version is around $500 if that is the path you are interested in. If you do go the TFS route you have an option to use TFS Basic during install which is a greatly simplified install of TFS that can even use SQL Express.
You can check out pricing and download the trial from here if you want more info:
http://www.microsoft.com/visualstudio/en-us/products/2010-editions/team-foundation-server

Any pitfalls to working on a project created in a 'higher' version of Visual Studio?

I'm asking this specifically regarding Visual Studio 2008 and also the upcoming Visual Studio 2010.
If we are given a project that has been created in an edition of Visual Studio such as Team Suite or Ultimate, and all we have to work with is Professional, would that interfere with us working with the project? I'm assuming the code would all work as it just uses the Framework, but what about features specific to the higher versions? Any IDE issues?
Edit : Our specific scenario is that we're working with a large software company that uses the top versions, and we don't. There's a significant (and growing) amount of code exchange. Given that Professional 2010 with MSDN is $1200, and Ultimate is about 10 times that, we'll have major budget issues if the whole team needs to upgrade. Knowing that the projects will compile is fine, but I'd want to be sure that we couldn't find aspects of their solutions that we weren't actually able to work on.
Nope, there are no issues with moving from Team System / Team Suite to Professional. I have a Professional license at home and a Team System license at work - they interchange and work perfectly with each other.
First hand experience shows no issues.
This is, of course, assuming that you aren't using any of the Team System specific features such as the Team Foundation Server or the Testing capabilities of Team System.
There shouldn't be any issues with opening projects created in different editions of the same version of Visual Studio.
I haven't tried between Professional and Team Suite for example, but there are no issues with opening projects that created in the Express edition in the Professional edition and vice versa.
There may will be aspects of the project you can't access/use any more, but the project should still recompile and run. To clarify this a bit more, in the case of the Express versions plugins (such as ReSharper) won't be run, so if there's any aspect of the project that relies on plugins it won't work). I think with Team Suite or Ultimate going to Professional you should be OK.
You will not be able to use features from the more expensive versions but there are no problems working with everything else.
I have a solution here that contains project types I can't use but I can compile and run everything else.

Resources