I'm developing my first win app and I have some doubts about setup project.
I'm using LinqToSql with a local database file. I know that must add this database to the setup project.
But, if I install this app in another machine, this machine must have sql server express installed to run my app?
I've user 4.0 framework. Do I have to add the 4.0 installer to the setup project as well?
Thanks!!
If your application needs SQL Server Express and .NET Framework to run, you can add them as prerequisites to your installer. Visual Studio setup project should have them in the predefined prerequisites list.
Related
We have a C# web project authored in Visual Studio 2013 which incorporates a Database Project, and I've set up a number of TeamCity build configurations to do Continuous Integration.
Team City is working well for us at the moment with all of our code checkins going automatically into the integration environment.
SSDT is also working well for us, we are easily able to share and publish database changes within the development team.
What I want to do now is get TeamCity to automatically build the Database Project and deploy it into the integration environment.
We do not have VS2013 on the build server, and would rather not install it there. We are all running SQL Server 2012.
I have read a few questions and articles about "headless" builds of *.sqlproj projects e.g:
How to build .sqlproj projects on a build server?
These approaches seem to be quite manual and fiddly and related to SSDT 2012 - has anyone got a reliable configuration for the versions we're using?
We've got SSDT working on our build server without requiring a copy of Visual Studio. In our case, we did a full install of SSDT because that will give you the necessary components, including the Visual Studio IDE shell. It was also a bit less fiddly than trying to make the admin install point and install just those bits. We added the folder containing sqlpackage to the path and made sure that we could get to the latest MSBuild executable (part of the .NET framework). There's no need to install a full copy of Visual Studio unless you happen to need it for some other reason on that machine.
This article goes into a bit more detail: http://sqlproj.com/index.php/2012/03/headless-msbuild-support-for-ssdt-sqlproj-projects/
Summarizing that article, here's what you need:
Install the Microsoft® SQL Server® 2012 Data-Tier Application Framework
Install the Microsoft® SQL Server® 2012 Transact-SQL ScriptDom
Install the Microsoft® SQL Server® 2012 Transact-SQL Compiler Service
Install the Microsoft® System CLR Types for Microsoft® SQL Server® 2012
Install the SQL Server Data Tools Build Utilities from the Administrative
install point. (this is where we used the full install)
It's been a while, but you might be able to just make sure that machine is connected to the Internet and run the latest SSDT installer to install SSDT and all of the pre-reqs. At that point, you've got the necessary bits to build SQL Projects.
I am now using the Visual Studio 2013, where I want to create a web deployment installer for project like I am doing in Visual Studio 2008.
But I am not getting any option inside Setup and Deployment. Can anybody please guide me how to create the installer package for web application? I have publish folder ready with me. Can I create any installer from VS2008 using this Publish folder?
Visual Studio no longer includes a setup installer out of the box. This was removed in VS2012; the guidance instead is to use a 3rd party option like WiX or InstallShield.
Another option, if you don't need to use an MSI based installer, is to use Web Deploy. A web project in VS can create a deployment package, which can then be published to any number of websites at any time. It can also be customized by configuring parameters and setting their values at deploy time (link). Web Deploy packages can support deploying your web content, IIS settings, and database.
VS2013 will support it again. It will be released in the next update patch of the VS2013.
http://visualstudiomagazine.com/articles/2014/04/18/microsoft-reinstalls-visual-studio-installer.aspx
Is it possible to use VS 2010 to create a Setup project for a C# VS 2012 Windows Service?
I clicked Add Project Output and in the popup there is no where i can attach the 2012 service project.
Is there any tutorial i can find where it shows how to do this ?
Thanks !
VS2012 does not support the project setups that VS2010 has. you can however enable installsheild LE (Lite Edition) for VS2012 and do it this way:
How do i create an InstallShield LE project to install a windows service?
I am not sure how involved your project is and what Framework it is targeting. You will not be able to use the Wizard, or add a 2012 Project Output in VS2010 because it will not recognize it. You should be able to create a blank installer and add the executable and all ancillary files to it, and it should work. I would be more likely to invest the time to learn WIX or another installer that will be supported.
Does anyone know the components that need to be installed in order to make the Package Target available via MSBuild.
It's possible to Package using MSBuild on a machine with Visual Studio installed, but not on a build server with only the .NET 4 SDK and Web Deploy 2.0 installed, which results in the following error:
msbuild "Package" does not exist in the project.
It partly comes down to the following missing files on the server:
c:\Program Files (x86)\MSBuild\Microsoft\VisualStudio\v10.0\Web\*.*
This can of course be resolved by copying the contents of the MSBuild VisualStudio folder to the equivalent directory on the build server, but this is not a manageable solution for server configuration.
All the answers I've read involve having Visual Studio installed or copying the files. Surely it's possible to compile the Web Deploy package without installing Visual Studio?
I have a TeamCity CI server without VS installed building a Web Project configured to also create a deployment package on successful build. However, for the life of me I can't recall if I copied those files manually or if they were installed by some component.
The relevant components I have installed are the following, if you want to give it a shot:
.NET 4.0 SDK;
Microsoft Visual Studio 2010 Shell (Integrated) Redistributable Package;
Visual Studio 2010 SDK; (Not the VS 2010 SDK SP1)
Microsoft Visual Studio 2010 Visualization & Modeling SDK;
Web Deploy 2.0;
I installed the VS Shell in order to be able to install the VS 2010 SDK which in turn was required in order to install the Visualization & Modeling SDK so that I was able to run T4 transformations on the build server.
With this components and configuring the following MSBuild properties DeployOnBuild=true;DeployTarget=Package to create the deploy package I had no problems, but as I said earlier I may have copied the files manually after giving up all hope of finding a more cleaner solution and now my brain is blocking any memory of such ill action.
i have a C#.net windows forms application that i need to deploy, can i in some way copy the .net framework dlls that i used in the project to the setup project so that i can avoid to download .net framework on the target machines.
The .NET framework version that your application targets must be installed on the client system. This is something that is usually handled by the installer during setup. Most installation builders such as the integrated Setup project in Visual Studio, Inno Setup and Nullsoft Scriptable Install System will detect if all of your app prerequisites are installed during installation.
Generally you need to install the .NET framework but there are technologies like Spoon Studio that wrap your application in a container. In most cases I think you are better installing the .NET Framework on machine to avoid debugging issues with these types of tools. For Windows Forms apps you can install the .NET Client Profile which reduces the download size.