21 Dec 2006 » My ClickOnce Deployment ClickOnce, Microsofts new deployment mechanism, introduced in .Net framework 2.0 is just neat. Given a directive to make an application ClickOnce deployable I had to devise a way. Let me explain....
ClickOnce is primarily designed to have a development shop post their binaries to a web server and deployed to a clients box from that server. My charter was to make this application installable to a clients box, and hosted from that such that all clients would ping that box for installs and updates. This posed a problem due to the signing required for ClickOnce manifests and the application requiring configuration when it installed on that server computer.
My resolution was to have a standard MSI based installation which copied all of the required files for the application to the server machine, then using a bat file which called mage.exe generate and sign the manifests.
Has this been problematic? Absolutely, mainly due to configuration of the app.config file after the app has been installed. This is more of an overlook as the System.Deployment along with the System.Configuration namespaces allow for modification of the app.config file during runtime.
This utility compresses tiff images using CCITT Group 4 compression. Initially the images were specified as "black and white" therefore I checked for 1 bit color, however it was later changed to support any bit depth. Images can be 1,4,8,12,16, 24 or 32 bit. I made use of 3rd party components from LeadTools, which made compressing and saving a snap. However the very large images (1GB and up) just wreck a machine with little memory.
Being this was/is my first ground up professional app I found out the hard way where things go wrong.
Check your I/O - file I/O will smoke you if you are not checking for success
Check your Database data, not checking this will smoke you
Use useful debugging messages
Mind you for any developer this is standard duh material or should be, however I've been working on automated builds (visual build) and wise for windows installer for over a year, I knew I was rusty, but wow.