<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="http://devlicio.us/utility/FeedStylesheets/atom.xsl" media="screen"?><feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en"><title type="html">Ken Gabe</title><subtitle type="html" /><id>http://devlicio.us/blogs/kengabe/atom.aspx</id><link rel="alternate" type="text/html" href="http://devlicio.us/blogs/kengabe/default.aspx" /><link rel="self" type="application/atom+xml" href="http://devlicio.us/blogs/kengabe/atom.aspx" /><generator uri="http://communityserver.org" version="4.1.31106.3070">Community Server</generator><updated>2007-06-11T21:57:00Z</updated><entry><title>VS 2005 Setup Project, SQL Server 2005 Express, and a dash of DB Installation</title><link rel="alternate" type="text/html" href="/blogs/kengabe/archive/2007/06/11/vs-2005-setup-project-sql-server-2005-express-and-a-dash-of-db-installation.aspx" /><id>/blogs/kengabe/archive/2007/06/11/vs-2005-setup-project-sql-server-2005-express-and-a-dash-of-db-installation.aspx</id><published>2007-06-12T02:57:00Z</published><updated>2007-06-12T02:57:00Z</updated><content type="html">&lt;p&gt;Greetings, this is not only my first blog here (bare with me!) but the first in a series on creating a Visual Studio 2005 Setup project with the below basic requirements.&amp;nbsp; I would love to hear how others have solved or gotten around the problems or simply suggestions you can offer.&lt;/p&gt;&lt;p&gt;For this blog entry I will cover just a summary of the basic requirements, and links to some great information I've run across others have provided on the net.&amp;nbsp; Some of these links may not be exactly pertinent to meeting the requirements but I thought they may be useful to others to depending upon your requirements and a central place to find them.&lt;br&gt;&lt;/p&gt;&lt;p&gt;&amp;nbsp; &lt;u&gt;&lt;b&gt;Basic Requirements&lt;/b&gt;&lt;/u&gt;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; * Create an installation package for a client/server application using a VS 2005 Setup Project.&lt;/p&gt;&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; - Startup the windows service at the end of installation.&lt;/p&gt;&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; - Certain assemblies need to be dotfuscated and linked at the time the setup package is created.&lt;br&gt;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;  * Database script installation (full install of tables, procs, etc... with new user created specifically for this database)&lt;/p&gt;&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; * Allowable database servers to be selected by the user installing: SQL Server 2000, 2005, or 2005 Express.&lt;br&gt;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; * The option to install an instance of SQL Server 2005 Express if it does not exist on the machine.&lt;/p&gt;&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;  * Other Prerequisites (to be installed if they do not exist): Windows Installer 3.1, and the .Net 2.0 framework.&lt;/p&gt;&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; * Probably don't remember some others, currently at home so don't have the project in front me of me.&amp;nbsp; Will update any I left out as I realize I forgot them.&lt;br&gt;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;u&gt;&lt;b&gt;Terms, parts and pieces being used and links with more information on them for starters&lt;br&gt;&lt;/b&gt;&lt;/u&gt;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; * VS 2005 Setup Project&lt;/p&gt;&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; - &lt;a href="http://www.codeproject.com/dotnet/Win_App_Setup_Project.asp?df=100&amp;amp;forumid=250630&amp;amp;exp=0&amp;amp;select=1419048"&gt;Visual Studio 2005 Windows Application Setup Project&lt;/a&gt;&lt;br&gt;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; * SQL Server Express&lt;/p&gt;&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; - &lt;a href="http://msdn2.microsoft.com/en-us/library/bb264562%28SQL.90%29.aspx"&gt;Embedding SQL Server Express into Custom Applications&lt;/a&gt;&lt;br&gt;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; * Custom Actions&lt;/p&gt;&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; - &lt;a href="http://msdn2.microsoft.com/en-us/library/49b92ztk%28VS.80%29.aspx"&gt;Using a Custom Action to Create a Database at Installation&lt;/a&gt;&lt;br&gt;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; * The Visual Studio 2005 Bootstrapper&lt;/p&gt;&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; - &lt;a href="http://msdn.microsoft.com/msdnmag/issues/04/10/Bootstrapper/"&gt;Use the Visual Studio 2005 Bootstrapper to Kick-Start Your Installation&lt;/a&gt;&lt;br&gt;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;  - &lt;a href="http://msdn2.microsoft.com/en-us/library/aa730839%28VS.80%29.aspx"&gt;Authoring a Custom Bootstrapper Package for Visual Studio 2005&lt;/a&gt;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; - &lt;a href="http://www.codeplex.com/bmg"&gt;Bootstrap Manifest Generator (Very useful!)&lt;/a&gt;&lt;br&gt;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; * The following link lists the error codes that are returned by the Windows Installer functions MsiExec.exe and InstMsi.exe.&lt;/p&gt;&lt;p&gt;&amp;nbsp;&amp;nbsp;  &amp;nbsp;&amp;nbsp;&amp;nbsp; - &lt;a href="http://msdn2.microsoft.com/en-us/library/aa368542.aspx"&gt;Windows Installer Error Codes&lt;/a&gt;&lt;br&gt;&lt;br&gt;&amp;nbsp; &lt;u&gt;&lt;b&gt;Issues Found&lt;/b&gt;&lt;/u&gt; &amp;nbsp;&amp;nbsp;  &lt;br&gt;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; *&amp;nbsp; While currently are requirement does not include Vista I've tried out our installer on it and ran into the following installer error when using custom actions, below it is a link to Aaron Stebner's Weblog that has great information on it and a solution.&lt;/p&gt;&lt;p&gt;&amp;nbsp;&amp;nbsp;  &amp;nbsp;&amp;nbsp;  - Installer Error Code 2869 and &lt;a href="http://blogs.msdn.com/astebner/archive/2006/10/23/mailbag-how-to-set-the-noimpersonate-flag-for-a-custom-action-in-visual-studio-2005.aspx"&gt;Aaron Stebner's Weblog&lt;/a&gt; on the issue.&lt;/p&gt;&lt;p&gt;&amp;nbsp;&amp;nbsp;  * A SQL Server Express wrapper cannot be MSI-based because Windows
Installer does not support multiple instantiation of the Windows
Installer service.&amp;nbsp; This is the main problem I've ran across which doesn't allow me to start up a new process to run the SQL Server Express installation if the option to install a new instance of Express is chosen inside the assembly being ran by one of my custom actions.&amp;nbsp; If anyone else has ran across this situation I'd like to hear how you went about solving it.&lt;br&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;So the above is a brief summary and the scope of what I will be covering in my upcoming blogs.&amp;nbsp; In my next blog I will start by covering the easiest part, a quick look at the basic setup project to get the files on on there.&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;br&gt;&lt;br&gt;&lt;br&gt;&amp;nbsp; &lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://devlicio.us/aggbug.aspx?PostID=28411" width="1" height="1"&gt;</content><author><name>Kenny3651</name><uri>http://devlicio.us/members/Kenny3651/default.aspx</uri></author><category term="Error Code 2869" scheme="http://devlicio.us/blogs/kengabe/archive/tags/Error+Code+2869/default.aspx" /><category term="setup" scheme="http://devlicio.us/blogs/kengabe/archive/tags/setup/default.aspx" /><category term="sql server 2005 express" scheme="http://devlicio.us/blogs/kengabe/archive/tags/sql+server+2005+express/default.aspx" /><category term="database installation" scheme="http://devlicio.us/blogs/kengabe/archive/tags/database+installation/default.aspx" /></entry></feed>
