Automatic installer for a web app on Windows 7 (or higher) - asp.net-mvc-3

I have a web application implemented in ASP.NET MVC3 and SQL Server 2008 Express. It's relatively small so I can deploy it in local computer of my clients (Windows 7 or higher).
Currently, I deploy it manually by create new web site in IIS, copy published files to the folder of website, install SQL Server 2008R2 and use Management Studio to restore database with some initial data.
It's OK with me but not with my clients. They can't do the same things. What I want is an automatic installer, my clients just need to click a few buttons to get all done.
Specifically, this automatic installer must do the following things:
Install SQL Server 2008R2 Express and restore the initial database.
Install IIS7 (if it's not enabled in Windows 7).
Create a new app pool (V4) and a new Web Site use this pool. Then copy published files to the folder of the Web Site.
The installler can run aspnet_regiis command and grant permission for NETWORK SERVICE account to TEMP folder. This is required for web site to run.
The installer can copy some fonts to Font folder of Windows.
I see many app can do this automatic installer, but after googling I can't find a thorough solution to try.
Please give me some advice on this. Thanks in advance!

If you want a free solution, WiX is what you need, but it will take you some time to learn using it if you never created a package with it.
A more easy to use, and also powerful, but payed tool, is Advanced Installer, you need Professional edition, but you can try it for free with the 30 days trial mode. It has predefined prerequisite for SQL Server Express, built-in support to install IIS entities, and set file/folder permissions. Bassically all the requirements you need.
To enable any IIS feature you can simply add a PowerShell script.

Related

Deployed application using InstallShield does not work

If you see below image, there are two applications deployed to IIS.
QManualDeployment - This is deployed using Visual studio Publish feature.
InstallShieldPOCWebApplication - This is deployed using InstallShield installation tool.
Option 1 is working without any issues, but as you see InstallShieldPOCWebApplication it looks like foder rather than web site. Also it does not work.
How can I deploy application as website using INSTALLSHIELD
Here is my IIS Settings from InstallShield Tool
Default Web Site is a website. QManualDeployment is a virtual directory / application off of Default Web Site.
In InstallShield, it isn't enough to just author all of your directories/files into components. You also have to define the IIS configuration.
I'm not sure if you are using InstallShield Express, Professional/Premier of Limited Edition so I can't give you more direction then that.
I faced same issue with Post owner, after run Install Shield setup file, it show a folder in IIS and I resolved by right click to folder name and convert to Application.
I share for whom concerned.
After that we can select suitable application pool as

How to create thin setup for Windows MSI Installer?

We have windows application in which we distribute whole MSI package to the client in zip form. We are now up for licensing feature and we want to allow users to work in thin setup just like if you download Visual Studio to install, it will download the files from the server and install it rather than we download whole 20GB VS setup from the server.
We want to use the web-based installer in which we can manage the licensing features too.
Can anyone help or redirect to useful links? It will be a pleasure.

Publish LightSwitch Web app locally

I'm trying to publish a LightSwitch app (web client) to a local computer and local network location.
Unfortunately all the videos I've encountered on-line only show how to deploy the desktop app but not web..
My LightSwitch app is connected to MS SQL server and SQL Server is installed on the same network but not on the local machine.
Here is how far I can get in the LightSwitch publishing wizard:
Are there any good videos regarding how to deploy web LightSwitch apps locally with visual Studio 2013?
Or a condense example?
(1) The missing link is IIS! Go to Control Panel -> Programs and Features -> Turn Windows Features on or off-> find 'Internet Information Services' (IIS) and install it. (There are many options, if unsure install everything except FTP Server)
I'd recommend watching a few tutorials about IIS to get you started.
(2) Next step is to download and install Web Deploy v3.5. (Make sure you choose custom install and select ALL options.)
(3a) In Programs and Features you'll need to make sure the 'Management Service' is installed.
(3b) You will need to make sure the 'Web Management Service' service is started and set to start automatically.
(4) Configure IIS for Web Deploy. (From memory: locate your Default Website in IIS, right click and you'll find a deployment wizard. Run it to create a deployment settings xml file. You can import this into the LightSwitch Publish Application Wizard.)
Side note: The User Name field (You've got 'sa') is not the database account, but a system account.
Good luck.

Publishing/Deploying Orchard CMS 1.8 with Visual Studio 2013

I am new to Orchard 1.8 and have developed a website using Visual Studio Premium 2013 Version 12.0.21005.1 (with the .NET 4.5.51641 Framework) and I need to know how to Publish/Deploy an Orchard website from a local desktop development box to an in-house "production" machine that has Windows Server 21012 R2, and IIS 8.5.
The development version of the site (on my local machine) uses SQL Server 2012 SP1 as the database.
How do I Publish/Deploy to the in-house "production" machine that has: Windows Server 21012 R2, and IIS 8.5 and specify another "production" database (which will need the data from the development version transferred to it)?
I am also new to publishing/deploying using VS. I would like to use "File System" as the Publish method, if possible.
Any detailed steps/instructions on how to do this would be greatly appreciated.
Thanks in advance.
You're right about needing to change settings.txt not web.config for the database connection string.
For the remaining steps, this answer assumes that you're developing from the Orchard Source, so you can run build precompiled from a developer command prompt. Here is an overview of the steps:
Configure IIS 8.5 on the server the same way that you configured it on your local desktop. You'll need to configure the application pools, for instance, and also make sure you have ASP.NET enabled.
Backup your local database and restore it on the production SQL Server. You will also need to configure security for the application pool.
Make a precompiled build of your Orchard CMS.
Make a new website in IIS on your production server.
Copy and paste the build results from step 3 into the root directly of the website from step 4. Set all the Access Control permissions for App_Data, Media, Themes, and Modules, as needed.
Change the settings.txt file to point at the new database.
You will be good to go unless you face some gotchas. You might also need to bring access your Media folder, if it contains images or other static resources to which your site links, and maybe your Theme too.

Deploying ASP.NET 2.0 to IIs7

How to deploy my ASP.NET website to IIS7? I'm using Visual Studio 2005. And I don't know where to start.
I tend to take more of a manual approach, but there is a web publish feature built into Visual Studio that should get you going.
Here is some reading you can do on it:
http://www.codeproject.com/KB/aspnet/VSDeploy.aspx
Here's some preliminary steps, a little more manual than some other options, but they are the ones I'm comfortable with:
Obtain access to the server where IIS7 is installed. If you don't have IIS7 installed on a server, install it. If you are not able to get access to this server, you will need to have the administrator of that server set up IIS7.
Create the website in IIS that you want to deploy to, or have the server administrator create an empty website for you to run your website on.
Use the 'publish' feature in Visual Studio to build a deployable version of your site. This is what you will install on IIS7.
Copy paste the website over to the server where IIS7 is installed. You will need to place it in a directory which you can set as the Home Directory for the site.
If you have access to the server, and rights to administer IIS7, set the Home Directory of the site to point at the directory where you copied over your files.
Enable the website, and you should be good to go!
NOTES:
These instructions assume the following:
a) You have some basic knowledge of how to configure IIS7 (or at least access to somebody who does)
b) You have some basic knowledge of how to install IIS7 if it is not installed (or access to somebody who does)
c) You have some basic knowledge on web site publishing from Visual Studio
If you need more instructions on these 3 notes, you may wish to consult the references for IIS7 and Visual Studio.

Resources