How to create a install/uninstall/repair .exe in windows application? - c#

I am new to windows application.Created a tool in windows application and with the help of setup build a exe and install it.
If i try to install when it is already installed its showing another version is already install so i have to go to control pannel uninstall it then install it again .
How can i do it in that way
When not install - Install it
When installed - Uninstall it then install the new version.

When you made a working software, next step is called distributing. Which mostly means putting all your software files into a distribute package. For this you have to choose distribute system (my favorite is NSIS).
It is the job of installer to detect whenever software is already installed and offer Repair or Uninstall option. And it should be very basic thing supported by distribute system (read - it will be very easy to do).

Related

Can an AppX installer for an application remove an older installation of the application installed using an MSI?

I have installed my Hello World application using an MSI that I created for it. I've since converted the MSI installer to an AppX installer. Is it possible for the AppX installer to detect an existing installation of my Hello World application installed by the MSI installer and remove it, much as a standard MSI upgrade installation would?
I try to sideload one app in local machine twice, and I find when you sideload this app for the second time, the Appx installer can detect an existing app and remove the previous installation.
But it may not remind you that this app has been installed, and it doesn't also ask you that you wan to remove this app to reinstall or not, it just removes this app and reinstall app.
Update:I think it is impossible for the Appx installer to detect an existing installation of your application installed by the MSI installer and remove it. I install appx and there is no any detection information , and it will not remove the application installed by MSI installer

Installer for ASP.NET project

I have an ASP.NET project in VS2012. I'd like to publish an "offline" version of this site.
I'd like the installer, to:
Enable (or install) the IIS on Windows (if necessary)
Install the MS SQLExpress (if necessary)
Install the .NET (if necessary)
Install the project's files, and start the site on localhost.
Can you help me, how to start?
MSI packages (digitally signed) are the standard way of deploying Windows applications. You can use a tool like Advanced Installer, such tools offer predefined support to install Windows Features, prerequisites (SQLExpress or .NET Framework), install IIS web apps and of course copy your files and create the corresponding folders structure.
This application has a free edition, but for what you need you have to purchase a Pro license. It also has a full 30 days trial.
(disclaimer: I work on it)
If not going with #SLaks suggestion, you have to create either a script (powershell) or a installation package to setup all the components in your solution. There a a bunch of installation packages around (Wikipedia

Upgrade the installed program in computer c# windows application

I made an application with version 1.0.0 and it installed in my computer (because I made a setup for it), but I already changed some code in it (and this version is 1.0.2). So, how do I make the application on my computer that has version 1.0.0 up to date to 1.0.2? What do I need to do in order to have my application in my computer or other computer that has version 1.0.0 to version 1.0.2?
I used MSI.
Check this post: How to upgrade via msi.
Additionality I recommend that you also check the WiX Toolset for creating Windows installers - it alows making almost everything
There are two type of upgrade you can do,
Upgrading the whole application
When I say upgrading the whole application, existing application will be uninstalled and new msi will be installed with new changes, You can easily handle this with MSI.
Change the version number of the new MSI (default version is 1.0.0)
When you change the version VS will prompt a message whether to change the product code. select yes
Make sure RemovePreviousVersion property is set to true.
Also make sure UpgradeCode of old msi and new msi are same.
When you install new msi with above settings it will first remove any older application installed and then installed itself.
Upgrading part of application
When i say upgrading part of the application it could be a dll change or any other resource change. These kind of upgradings can not be handled through MSI(Unless you write your own upgrade manager module). But luckily Microsoft has an elegent technology to handle these type of upgrades it's called ClickOnce.
ClickOnce applications can be self-updating; they can check for newer
versions as they become available and automatically replace any
updated files. The developer can specify the update behavior; a
network administrator can also control update strategies, for example,
marking an update as mandatory. Updates can also be rolled back to an
earlier version by the end user or by an administrator

How to make generic installation for my program

How to make generic installation for my C# program, that will work on Win XP, Win 7 32bit and Win 7 64bit ?
I need that all the related components (like Framework... Crystal Reports...MDAC....) will be include and will install only the program that the OS is missing
Thanks in advance
What version of Visual Studio are you using? It matters, because if you're using Express, you're going to need a 3rd party tool If you're using Professional or higher, you can just create a Setup project as described here:
http://support.microsoft.com/kb/307353
if you weren't worried about required components, of course, you could just do an XCOPY deployment, but since you specifically need your prerequisites included with the install, you need to use a tool like the setup project 9which creates an MSI file) or using a third party tool like Installshield.
i think
1- Create 3 separate packages for (Win Xp,Win7-32 , Win7-64)
2- Ask user if user is downloading from the website and push require download from the server. Alternatively , you can write a samll silverlight based application to get the details of user machine.
3- If 2 point is not true than while installing on a user machine get the details first and choose manually which pakage to install.
why i am telling to create specific package because of Microsoft issues pathches time to time and you may need to change the package so keep it seperate will definately help you.

Advanced installation regarding to C#

I want to make an advanced installer for my C# application. |I want my application continue its installation after the pre-requisites been installed.
My scenario is:
myApplication requires .net Framework 2
it redirects the user to the Microsoft website.
the user installs the framework.
the installation requires to restart the PC.
STOPPED INSTALLATION
After this step (after restarting) I want myApplication to continue the installation (go to the last stage of the installation)
Any suggestion on how I do this ?!?!
I would suggest taking a look at the nullsoft install system. Use the Modern UI theme and the DotNET macro (http://nsis.sourceforge.net/DotNET). That's everything that you are looking for prebuilt, for free, and you can be up and running with very little effort.
I've had experience releasing applications with this route and it works very well.
Things like InstallShield, or one of the other installer creation tools would be able to handle the pre-requisite side of things for you. If you want to roll your own, then you could check for the framework, perform the various steps you mentioned to install it, then add you setup application to the RunOnce registry key so it starts again on startup.
Looking at something that would handle all the pre-requisites etc for you would be my choice though :-)
Install in this order:
Install the .NET framework
Install your app.
Restart if needed.
You can create an installation project in VS2005/8 to handle installing your app and any needed dependencies.
Are you aware that your compiled c# app itself will do this? The bootstrapper compiled into a .Net exe will contain a redirect to get the framework with a working link to the microsoft website.

Categories

Resources