Installer solution for WPF apps (with update/trial support) - wpf

I have several WPF applications. And I think the number of apps would grow overtime. I want to create an installer with these features:
Check for .Net version and ask the user to install it
Support for creating a secure time-based trial version for the app with activation support.
Template support: So I can create one general installer and modify it for each tool.
Update support: Check for the new version of the app.
Easy to deploy: There is a chance that I won't be uploading them myself.
If there is a tool which can help me with these, I'll be glad to use it. Commercial tools are fine too. If not, please suggest a streamlined process to achieve the optimal result.

Advanced Installer, Enterprise edition, with a good price, has also all these features. To learn the tool I recommend this tutorial, after which you can continue with tutorials for the updater and licensing library(trial support).

InstallShield will do what you are looking for but it's not cheap. They have really nice wizards, script editors, SQL packaging, version control, etc.
Flexera Software
Visual Studio 2010 / 2012 include the light version, but it can't really do more than wrap an app for installation. All the other advanced features are reserved to the paid versions.

Related

Prerequisites button disabled - MSI installer

I have created an .msi installer. I want to further add prerequisites (such as .Net) but when I go to Setup Project properties, the Prerequisites button is disabled. How do I enable it?
Other details:
I'm using VS 2015, SQL Server 2008 R2, .Net 4.5.2, C#, WinForms, Win
10 Pro x64
My setup project is in the same solution as the main project
Prerequisities in Visual Studio Projects
In Configuration at the top of the dialog, did you try to select either Release or Debug? That should enable the Prerequisites... button.
Unecessary, outdated prerequisites?
One pet-peeve of mine: is it really necessary to include the .NET runtime as a prerequisite when most users have it installed by their deployment team (corporations) or via Windows Update (home and small office users)?
If there are security updates for the runtime, your old, embedded runtime is just a nuisance to be honest. Corporate packagers spend a great deal of time removing runtimes and prerequisites for corporate deployment where all runtime components are packaged separately in the corporate standard format. Perhaps consider making a special corporate "large scale deployment" version of your setup bundle? Just a zip with components will be very appreciated, along with a one page PDF on how to deploy them.
For the .NET framework you could just add a launch condition to abort the installation if the runtime is not found, and tell the user to get the runtime via Windows Update or from their system administrator or deployment team.
Just a thought I wanted to share with you. Prerequisites can really bloat a setup - especially when they are almost never needed like the .NET framework. In the future we will certainly pull prerequisite packages straight from online repositories and not embed anything in our main setups (and probably struggle with new security issues from that approach).
What version of the .NET Framework is included in what version of the OS?
Selectively disable versions of the .NET Framework (.NET versions overwrite each other)
WiX and other deployment technologies
Setup projects are rather limited. If you find yourself needing more features, you might want to check out the WiX toolkit.
Here is a previous answer on WiX and other deployment tools that seems to have been helpful for people: MSI vs nuget packages: which are is better for continuous delivery?

MvvmCross for WPF and Xamarin.Mac: is it possible?

I'd like to ask anyone out there whether is possible, as of today, to develop a Windows/MacOS cross platform application using WPF (in Visual Studio) and Xamarin.Mac (in Xamarin Studio for Mac). I searched the web, twitted people (Stuart, I know you pointed me to loqu8 build some days ago, but I'm just stuck :P) but nothing really useful came up. So, my questions are:
First and foremost: is it possible?
Is it production ready? If not, how much stable it is? Are there any plans for improving it in the next months?
How do I use MvvmCross in Xamarin Studio, since it seems that NuGet isn't supported on MacOS, and NuGet packages don't target Xamarin.Mac anyway?
How do I create a PCL in Visual Studio since Xamarin.Mac isn't insalled on Windows? Do I have to create it on MacOS and the copy the project in Visual Studio?
More could follow...
Thanks for any answers!
First and foremost: is it possible?
Yes. Several developers have used it.
But it's not a "main target" for MvvmCross - our main focus is still on Windows, Droid and iOS which is what users have requested the most.
Is it production ready? If not, how much stable it is? Are there any plans for improving it in the next months?
It's not included in the main nuget packages - because nuget doesn't really support monomac or xammac packages very well. There are no plans to change this that I know of.
You have to build it yourself. You can do this from the main mvvmcross repo - or from branches like https://github.com/loqu8/MvvmCross/ who have done a lot of work on it.
How do I use MvvmCross in Xamarin Studio, since it seems that NuGet isn't supported on MacOS, and NuGet packages don't target Xamarin.Mac anyway?
Currently the best advice is to build and use the assemblies yourself.
How do I create a PCL in Visual Studio since Xamarin.Mac isn't insalled on Windows? Do I have to create it on MacOS and the copy the project in Visual Studio?
You can add additional PCL targets using the XML files - see old posts like http://slodge.blogspot.co.uk/2012/12/cross-platform-winrt-monodroid.html about how we previously did this for MonoDroid/Touch
To build MonoMac/XamMac projects in VS, see http://tofutim.blogspot.co.uk/2013/11/adding-monomac-and-xammac-to-visual.html
Cross platform WPF = speaking language of all people around the world in the best way possible
Cross platform WPF+(Blend and Visual Studio) = Doing poetry for all languages around the world in the best way possible
What better tool a programmer on the earth could wish for?
C# will become the most powerful cross platform programming languae

Deploying ODP.NET WPF application

Background: I developed a small .NET 3.5 WPF application that connects to an Oracle 9i database. Thinking that the ODP.NET version had to match the database, I downloaded and used an [older version][1] (9i, release 2, to be more specific) of the Oracle Data Access tools.
I'm basically done the application now and need to deploy it. Then I looked at the deployment story for ODP.NET, thinking it would be included as a prerequisite by ClickOnce and I wouldn't have to do anything. Lesson. Learned.
Everything I've read about deployment for ODP.NET talks about using XCOPY with a newer version of the Oracle tools than what I have used to this point. Not much is actually said about 9i in the documentation I've read to this point.
So what should I do?
Thanks for the help!
Here is a similar post where the answer was to change to use a 3rd party library:
ODP.NET and ClickOnce possible?
I think you area in trouble as changing libraries may involve you doing a full retest of your application - this may of course be easier done than said if it is a small app or you have good automated test coverage. Of course it depends how many computers you are deploying to. Personally I would be more inclined to stick with oracle odp and move to the latest version. If you deploy odp "the hard way" you still get the benefit of click once for future redeployments.

Silverlight - where do you start (for free)?

First I've read loads of posts and sites that recommend going to http://silverlight.net/GetStarted/ to get started but I do not have visual studio and I'm not going to purchase it just to 'maybe' learn some silverlight that I'm not going to be able to use for a little while.
The reason being that I've already installed visual studio and all the other things required during a quiet period of work, then another project came up and by the time I got back to thinking about silverlight the trial period has finished.
I have not done C# or XAML (mainly Java, AS3 & MXML, hence the lack of MS tools) but I'd like to look into silverlight when I'm quiet to create some test projects and to determine where I can use it if anywhere. Is there a toolset that will let me learn and use all that is required without purchasing the software (perhaps it would have a watermark like the flex datacharts used to have, unless you purchased them, maybe an eclipse plugin - although I imagine I'm being a bit optimistic here).
If there isn't such a thing then perhaps MS should look into this, Adobe recently let anyone unemployed/students etc to get flexbuilder for free to increase its uptake. That would be great is MS did something similar.
If you are a student, you can get professional Microsoft tools for free through the Dreamspark program. http://www.dreamspark.com
You can download Blend preview 3 and visual studio 2010 for free and use it. You have the tools and knowledge now ;-)
Check out Bizspark too.
Allegedly, you can now use one of Microsoft's free "Express" development systems to develop Silverlight apps.
http://www.bluerosegames.com/SilverlightBrassTacks/post/You-can-now-write-Silverlight-apps-in-Visual-Web-Developer-Express.aspx
In addition to the free-as-in-free-beer options from MS that other answers mention: if you only want to play around with Silverlight for now, consider trying Moonlight -- it may not yet be ready for production work, but nevertheless usable for learning purposes.
One place you can go is to the express web site on Microsoft.com. You can get free, albeit trimmed back, versions of the current release of Visual Studio and SQL Server there.
You can also get a trial version of Expression Blend 2. Blend is a design oriented tool for creating Silverlight applications.
You can also usually find betas of upcoming releases without much trouble.
Silverlight + Eclipse:
http://www.eclipse4sl.org/download/
And how to workaround Express for SL
http://www.informikon.com/blog/howto-silverlight-and-visual-studio-express.html
Good luck
Braulio

What tools do I need to do Silverlight development?

I already own Visual Studio 2008 Team Version, and have an MSDN subscription...and I am an experienced ASP.Net developer.
What do I need to install to do Silverlight development, and can all of those tools be installed alongside my current "production" development machine (want to make sure there will not be any side effects).
I know I want to learn silverlight, but its not clear to me which tools are required and/or recommended in order to get started...
Thanks.
Download the Silverlight 2.0 SDK and Visual Studio 2008 Tools
Microsoft® Silverlight™ 2 Software Development Kit
Microsoft® Silverlight™ Tools for Visual Studio 2008 SP1
Check here for the links
http://www.microsoft.com/downloads/details.aspx?FamilyId=4E03409A-77F3-413F-B108-1243C243C4FE&displaylang=en
Another great resource is the original:
http://www.asp.net/downloads/
AND
http://silverlight.net/GetStarted/
Hope this helps:
Andrew :-)
This link has pretty much every thing you need.
If you're already comfortable with VS development, you can just develop Silverlight in VS by downloading the Microsoft Silverlight Tools for Visual Studio 2008.
If you're more of a designer than devloper, then Microsoft Expression Studio may be better for you.
Follow the steps here:-
http://silverlight.net/GetStarted/
I have no problems using this stuff side-by-side with my regular development
Silverlight.net is a good place to start. All the tools are finalized so you should be able to install all things silverlight and be fine.
I am also trying to get started with Silverlight development.
Here is how I was getting started.
1.) To set up development environment: Getting started with Silverlight
2.) Web Sites to keep up with.
MSDN Silverlight Development Center
Shawn Wildermuth: He has turn from an ADO guy to a Silverlight guru/trainer.
Scott Gu's Silverlight tagged stories
I have Visual Studio 2003/5/8(+Resharper 4.1) installed on my machine along side siliverlight SDK and Expression Suite.
So far I have not seen any side effects even after installing all those tools on my dev machine after few months.
You can use Silerlight Spy to view the 'reflected' source code of any Silverlight application on the web. But, you can also use it to validate the structure of the components in your running application. The debugging experience reminds me of working with Firebug while trying to decipher the viusal structure of a web page.
In addition to the visual studio stuff, you should probably get blend and all of it's service packs.

Resources