How do I create an update patch that updates the application without having to reinstall the application in newer version?
Also, how could I combine other software such as SQL express and printer driver with the application setup file?
I have used Visual Studio 2010 to develop my application.
What you can patch depends up how you partitioned it in the first place. Did you design it to be patched? If not the best case may be bite the bullet and reinstall a newer version.
Related
I have an old webservice installer built on .netframework 4 which is running on Windows 2008 and when i try to install the installer on Windows Server 2016, i am getting the below error.
Error Message : "This setup requires Internet Information Server 5.1 or higher and Windows XP or higher. This setup cannot be installed on Windows 2000."
Is it possible to run this old webservice installer to the new 2016 without rebuild my solution?
LaunchCondition Table: Most likely there is an entry in the LaunchCondition table of that MSI - if it is an MSI - which prevents installation. I say most likely because it could also be a custom action - please check the launch condition table first and get back to us. Launch conditions must evaluate to true for the setup to allow itself to be installed. You can "hotfix" this by using a tool capable of writing to MSI files: How can I compare the content of two (or more) MSI files?
You are supposed to make a transform file *.mst (a database fragment) and apply it at installation time to change the original MSI installer. However, sometimes I make backups of the original installer and zap simple stuff like launch conditions if they are wrong in the first place. A transform becomes too cumbersome for ad-hoc stuff. But should be used if you intend to distribute through SCCM etc...
Compatibility: Even if you hotfix the MSI file and it installs you obviously won't see the webservice working if there are technical reasons why it won't work on that machine. Launch conditions are a sign that something must be present on the machine for the application to work. However, sometimes people are a bit trigger happy with their launch conditions and make packages that are a bit too restrictive.
Note: first check if IIS is installed on the box.
I want to build a setup file that contain windows form application that is connected to sql server how can I do that? I want to put the .net framework and sql server in the setup package how can I do that? do I need sql server or sql express in this case? I want to create the database in the installation process how can I do this? I want to check If the requirements are already installed how can I do this? hw can I improve the security of the program from stealing?? please help thanks
note my English language not good enough Smile | :)
That is a lot more than one question, and not easy to answer all at once. Anyway, assuming you're using Visual Studio 2012, you can try creating a new Install Shield project (below).
(It might be easier to help you once you've tried something, and have got a more specific question/problem)
For my projects I use Inno Setup. It lets you customize all aspects of the installer - add/remove different screens, set conditions for installing different files, for example you can check out whether SQL server is installed and install it only if it is not through scripting. Take a look at the FAQ page for more information about the features this tool offers.
There's also a sample Inno Setup file at CodePlex, that should get the job done. I haven't tried it though, so I cannot guarantee whether it works fine or not.
If you want to have installer for tomorrow, than good choice will be WIX (http://wix.sourceforge.net/). It is easy to understand and have a possibility of checking installed frameworks and OS version.
If you wish to have Framework msi installer inside yours, than you can check Wix Bootsrapper. But as far as I know it has poor flexibility to setup install steps. For this propose you can combine Wix with other for example NSIS. You can create application installer by using Wix and Bootsrapper application, which will contains your application MSI and Framework MSI, by using NSIS.
To create database during installation you also can use WIX. You need to create database generation plan, which will contain queries for creating database. This generation plan can be executed as part of the installation process (http://wix.tramontana.co.hu/tutorial/sql/creating-a-database). It is good choice wile you don't need additional information from user. In other case you will need to create custom UI.
From my experience with built in Visual Studio install tools, they're all horrible.
I highly recommend Advanced Installer. It's a very powerful tool to create installers and patches for your software. It should have all the features you need in the free version, including checking for prerequisites such as .NET Framework on the user's machine, and installing things when needed.
I have a standalone tool developed in C# Visual Studio Express 2010.
My problem is that this tool will fail to start on machines having no .NET installed, and asking for .NET 4 on machines has .NET under 3.5 or lower.
What I basically want to do is to install .NET 4 from my application before the main script runs. I can write a program to download it from an official webpage, also to run the installer etc. But the main problem still exists, the app won't even reach the download part as it won't run on machines...
I've googled around and found that you can include dll-s etc., but I still doubt I can proceed without a proper .NET installation. So how can run dotnetfx.exe with my .NET dependent application?
Your attention and ideas are much appreciated.
Cs.
Use ClickOnce - it takes care of dependencies when configured correctly and comes integrated/free with VS.
EDIT: So vs express editions don't support setup projects. Plan B: wix.
simple. your installer must not be a .net application. just write your own c++ version or use some existing application. here is a link to show you how to do silent installs of .net 4. just include the setup application with your program. I would be very surprised if some of the msi installer tools out there do not have .net installation support.
http://blogs.msdn.com/b/astebner/archive/2009/04/16/9553804.aspx
I have VS 2008 Express (.NET 3.5) and currently have no way to elegantly uninstall my program whenever I publish an update. Right now people are using the program outside of my network (so I can't point them to some intranet folder to check for updates, and checking an internet site is no good either). There are frequent updates (for reasons too complicated to go into here) and they constantly need to be using Add/Remove programs to uninstall then reinstall. Is there a way to have a Start Menu option to uninstall my program? Surely there must be, I'm a novice at C# (just moved from VBA) so I'm still learning the options. Thanks
Have you looked at 'Click Once Deployment'?
http://msdn.microsoft.com/en-us/library/t71a733d(v=vs.80).aspx
It would allow your users to get updates as they are released as well as uninstall through add/remove programs.
If you use full Visual Studio, then you can create a Setup project which will create an Install/Uninstall EXE for you.
If not, then I guess you'll have to write your own installer, or maybe add some batch files to install or uninstall your program.
I have an WPF and SQL-Server Express based app which I want to deploy using VS-2008 setup and deployment project template. I have added Launch condition for Windows Installer 3.1, Sql Express 2005 and .Net FrameWork 3.5 with SP1 but they are not running in order. I mean:
Windows Installer checking
.Net Framework 3.5 sp1 checking
SQL-Server Express 2005 checking
When i built my project and ran on test machine (with Fresh XP installation only) it tried to install SQL-Server Express 2005 first and then failed for windows installer 3.1.
One more thing i want to know how i can run my DB script after installation of SQL-Server Express 2005.
How I can solve these 2 issues.
I don't think your question actually deals with LaunchConditions as the purpose of LaunchConditions is to prevent the installation of a Windows Installer package if certain conditions aren't met. What you are describing sounds morel ike prereq chaining although I'm not certain what tool you are using to author your install and thus which setup.exe to do the chaining.
I'd also look at putting MSI 4.5 in your chainer, MSI 3.1 is very old in the tooth and only applies to Windows XP these days as all newer OS's come with atleast 4.0.