Archive

Archive for the ‘dotnet’ Category

Vista, UAC and the ClickOnce Bootstrapper

November 1st, 2008 6 comments

Installing Microsoft Windows VistaImage by cocoate.com via FlickrWe
all enjoy being bitten in the ass by that 1 scenario that we never
remembered to test, especially when you’re about to release. My
particular ass biting comes in the form of the ClickOnce
bootstrapper. For those of you who don’t know ClickOnce, the
bootstrapper is the setup.exe that users run in order to install all
your prerequisites and then your application.

It had been working fine, until I remembered to try it on a Vista install with UAC
enabled, which is the default setting. Now, everyone I’ve ever met
disables UAC as soon as Vista is installed, but your average home user
will probably not know it can be turned off and just accept the
insanely irritating thing.

With UAC enabled, the bootstrapper
doesn’t give you a message on launch saying “Hello, we don’t have the
right permissions), no. It gets half way through the installation,
then throws an “Incorrect Function” error, leaving developers pouring
through install logs to try and guess the problem. Needless to say, end
users must not be exposed to this utter lameness.

I’m currently conversing with various MSFT boffins
to see if a resolution can be found, although I’m not hopeful. There’s
a fair bit of ducking and diving going on, which usually indicates
you’ve hit on a shortcoming

If no resolution can be found, the stark truth is that if you need to use the bootstrapper, ClickOnce is entirely incompatible with an out-of-the-box Vista setup.

Edit: I’m wrong. So very wrong. The problem was caused by a corrupt VM. Not ClickOnce.

Reblog this post [with Zemanta]
  • Share/Bookmark
Categories: Uncategorized, dotnet Tags:

Click Once and the Micro ISV

August 22nd, 2008 6 comments

Click Once is a simplified deployment technology for .Net
desktop applications from the good folks in Redmond. Although to date,
I’ve only seen it used on internal business applications, the more I
play with it, the more I suspect it could be of some interest to micro ISVs. Why?

Benefits for Vendor

  • Alleviates the need for writing an installer.
  • Alleviates the need for writing auto update code.
  • Alleviates the need for notifying customers of minor updates.

Benefits for Customer

  • No need to keep abreast of updates.
  • Applications auto update, but with the option to roll back to previous versions.

Click Once is not only easy for customers, it’s also very easy to deploy for developers too. In Visual Studio, the Click Once publish dialog look like this:

Publish

 

Clicking ‘Publish Now’ generates all the necessary files, and sends them to either local IIS, a remote IIS server, and FTP site, or a file location.

Click Once will handle installing the most common prerequisites for you, and will also let you define update behaviour.

One thing to note – there is a common misconception that Click Once
can only be deployed from IIS hosted sites, requiring often quite
costly hosting. This isn’t correct. After a bit of digging and tweaking, I found out that you can host Click Once apps quite happily on Apache. All that is required is to add the following to your .htaccess file:

AddType application/x-ms-application application
AddType application/x-ms-manifest manifest
AddType application/octet-stream deploy

Thanks to Paul Clement for that gem.

Having said all this, there are a few caveats. If you’re releasing
.Net apps, chances are you’re going to be obfuscating them using
something like .Net Reactor.
This, unfortunately, precludes you from using Visual Studio for
deploying them. It just means that you’ve got to script is using the
Mage tool. There’s a good walkthough here.

It’s also not a substitute for InstallAware in all circumstances. If
your installer needs to do much more than private deployment to a
folder and an entry in the start menu, then you’re going to either
implement more initialisation code in your app, or revert to a full
blown installer. I think it’s fair to say the majority of .Net apps are
privately deployed, and so could benefit from Click Once.

If you’re a micro ISV writing .Net apps, have you used Click Once? What were your experiences?

Reblog this post [with Zemanta]
  • Share/Bookmark
Categories: Uncategorized, dotnet Tags:

.Net Reactor Support Forum

April 23rd, 2008 1 comment

Reactor

By popular request, I’ve created a support forum for .Net Reactor.

       

  Google Groups
 
  Subscribe to .Net Reactor Support
 
  Email:
 
 
  Visit this group

I heard from the chap who develops Reactor a few months ago, and it
seems he has some health issues that mean he has to spend some time in
hospital. As such, I’m sure I speak for all Reactor users when I wish
him a speedy recovery. Being a micro ISV is tough, especially when
you’re ill. So hopefully this forum will alleviate some of the support
burden.

  • Share/Bookmark
Categories: Uncategorized, dotnet Tags: