YOUR FEEDBACK
E-Commerce 2.0
Brian wrote: I think we're heading in the right direction, but we've still...

SYS-CON.TV
TOP MICROSOFT .NET LINKS


Wise for Visual Studio .NET

Digg This!

Perhaps the most important, yet most overlooked, area of application development is that of deployment. A flawed installation, or worse - one that corrupts other applications - does not instill faith in your software and makes for very unhappy clients. Having been in this situation myself, I took the time to investigate the various utilities available for creating Windows Installer-based setup applications. While at a trade show one day, I managed to get hold of a couple of evaluation copies of the most popular installation products. On my flight back across the Atlantic I had the chance to come to grips with the various products, and by the time I landed back in the UK, my mind was made up to use Wise for Windows Installer.

Since then my job has become focused predominately on .NET development and I find myself with a couple of new challenges. I am no longer faced with DLL versioning problems, and I rarely need to configure the registry when I deploy a .NET application, so to all intents and purposes I could just use XCOPY deployment and be done. Alas, no. It seems my clients like desktop shortcuts, file associations, and icons in the Start menu, so I have found myself again returning to the Wise Installer, in its latest incarnation fully integrated with Visual Studio .NET.

Windows Applications
I use .NET because it is quick. If a client calls up and says "Hey, I need a new billing application for next week," the chances of me sitting down with Visual C++ are slim. Visual Studio .NET is a big contributor to this productivity gain, and, thankfully, Wise for Visual Studio .NET is completely integrated into the IDE, so this gain is carried through into installer applications.

When deploying Windows applications I can build an installer routine in about an hour using Wise for Visual Studio .NET. My project files are automatically synchronized with the output from my Windows Forms projects, meaning that I can be perfectly sure I am sending the latest version to my client.

With a couple of mouse clicks, I can add external files, as well as create shortcuts on the desktop and in the Start menu. On the rare occasion that I need to create Registry entries for my application, Wise allows me to either create Registry keys manually or to copy the keys from my development environment. Creating file associations for an application is just as simple, as everything in Wise for Visual Studio .NET is driven by a simple menu-based interface.

The feature that annoys me the most about Visual Studio .NET is its inability to deploy the .NET Framework with an application. With Wise for Visual Studio .NET, this is no longer a problem. I can simply select the version of the .NET Framework I want to include, either 1.0 or 1.1, and which build of the specific version I require. Wise for Visual Studio .NET will then dynamically download the required EXE and include it in the final setup file.

Web Applications
In the past, when I developed a Web application, I wouldn't dream of building an installer for it - after all, it was simpler to just do it manually. That is, of course, until the customer calls to tell you he accidentally broke the server and needs a reinstall. Having had good experiences building installers for Windows applications in Wise for Visual Studio .NET, I decided to foray into building an installer for an ASP.NET application.

Thankfully, building an installer for this kind of application is just as simple as building one for a Windows application. Building an ASP.NET installer using Wise for Visual Studio .NET gives me full control of the IIS virtual directory on the target system, relieving me of any dependencies on the administrator at the client site. I can even verify that they have the correct version of IIS installed, handy for those clients who can't tell the difference between Windows NT 4.0 and Windows 2003.

No ASP.NET application would be complete without a shiny new SQL Server database to store all its data. New to this version of Wise for Visual Studio .NET are the SQL Server installer tools, which allow a developer to execute SQL scripts against a target database. This is my favorite feature because I can load the schema into Wise for Visual Studio .NET directly from my development database, including any data that needs to be prepopulated in the database - something that goes way beyond the built-in scripting features of SQL Server Enterprise Manager.

Features for the Enterprise
One of the biggest problems I face when deploying an application to my clients is ensuring that it doesn't conflict with any other applications on the client's machine. With the introduction of the new Enterprise Edition, Wise has brought a full set of installation management tools directly into the Visual Studio .NET IDE. Using the Wise Software Repository you can store details of the components and shared resources of your applications in a central database, which is then accessible by all developers running Wise for Visual Studio .NET.

Wise for Visual Studio .NET uses the Wise Software Repository to compare the components and resources for your application against applications stored in the repository. Using this data, Wise highlights any possible conflicts that may occur, allowing you to fix them before you release your application. An important feature of Wise Software Repository is the ability to group your applications so that testing takes place against a specific group of applications as opposed to every application in the repository. In my company we have grouped our applications by client, but you may choose to group them by department in your own enterprise.

To allow for compatibility with applications across the enterprise, Wise can import the setup.exe file for any application and have it analyzed and included in the repository. I use this functionality all the time, importing my clients' commonly used applications into the repository so I can test for compatibility before I deploy.

With Software Manager, I can easily manage and organize the application data stored within the Wise Software Repository. Software Manager, which launches from directly within Visual Studio .NET, allows me to import and delete applications within the Wise Software Repository, as well as create and manage application groupings. This process takes very little time, but has saved me countless hours during deployment.

Using Software Manager you can generate reports about the shared files and registry entries across your enterprise or on an application-by-application basis. These reports are invaluable to developers, as they can be made fully aware of the target system layout before they start coding, thereby saving time and money on expensive recoding efforts at a later date. I have even started to use these reports to placate wary administrators at the client site who are worried about application compatibility.

Conclusion
Wise for Visual Studio .NET is packed with features to help you build robust, reliable installation routines for your applications. The focus is definitely on simplicity, but with a full MSI database editor included, this application is not without features for the power user. Using this product benefits not only those wishing to distribute traditional desktop applications, but also those wishing to deploy distributed applications based on technologies such as ASP.NET and Web services.

You can create installations for SQL Server database, Web applications, Windows clients, and even mobile clients running on Windows CE or Palm OS. With 90% of the information needed for your installer being drawn directly from your development environment, creating a set of installers like this takes no more than an hour. What makes it so much better is that, if your Wise Software Repository is up to date, then testing your application for compatibility is simple.

Wise also offers an Enterprise version of Wise for Windows Installer, which is nonintegrated and can be used by .NET developers who are not using Microsoft Visual Studio .NET for their development.

Company Info
Wise Solutions, Inc.
47911 Halyard
Plymouth, MI 48170
Web: www.wise.com
Phone: 734.456.2100
Fax: 734.456.2345
E-mail: info@wise.com

Test Environment
Visual Studio .NET 2003, Windows XP SP1, Microsoft .NET 1.1; 1GB RAM, 1.9 GHz Pentium IV

About Rob Harrop
Rob Harrop is Lead Software Architect at Cake Solutions Limited based in Cheshire in the UK. He specialises in high availability server applications built using .NET and Java. He has been involved in a large number of .NET based intranet/internet systems, and has just finished a new intranet system for the UK Investments arm of the Department of Trade and Industry in the UK.

rabbani wrote: Respected sir, I have just entered in the feild of windows installer, for the first timer who is on project as windows installer but know nothing how to handle daily activity, could u tell me which books gives me the best to update myself along with work not getting hindered. thanks rabbani
read & respond »
MICROSOFT .NET LATEST STORIES
Icahn Moves To Force Microsoft & Yahoo Together
Corporate raider Carl Icahn started his proxy fight for control of Yahoo this morning, beginning with the classic Icahn opening, the letter of reproach to the Yahoo board telling them they have acted 'irrationally and lost the faith of shareholders and Microsoft.'
"RIA" vs "Rich Client Platform": The Term Is Now Up for Debate
'RIA' is slowly fading in terms of its definition. When I first started the RIA Evangelism role in Microsoft, I had this nagging feeling that the term RIA was just all over the place. Depending on which technology you are backing and which stream of alliance you uphold, the truth is th
Book Review: ASP.NET 2.0
ASP.NET developers are bored with traditional books that outline concepts in a lengthy way. These books are good if you like to learn the features in a detailed manner. However, by the time the book is read, a new version will be released. Hence, many learners including myself prefer s
Peer Networking Series - A Closer Look at PNRP vs. Bonjour/ZeroConf
It seems as though whenever I bring up PNRP and its benefits, I am immediately inundated with a list of questions or comments indicating that Microsoft is re-inventing the wheel and that PNRP has already been implemented before in the form of ZeroConf and, more specifically, Apple's im
db4o Open Source Object-Oriented Database Supports LINQ
db4objects has announced that its db4o object database is now optimized for Microsoft's LINQ. With the new support, developers can choose an object-oriented optimized engine without changing the API or compromising performance. db4object's db4o database offers a persistence solution to
SUBSCRIBE TO THE WORLD'S MOST POWERFUL NEWSLETTERS
SUBSCRIBE TO OUR RSS FEEDS & GET YOUR SYS-CON NEWS LIVE!
Click to Add our RSS Feeds to the Service of Your Choice:
Google Reader or Homepage Add to My Yahoo! Subscribe with Bloglines Subscribe in NewsGator Online
myFeedster Add to My AOL Subscribe in Rojo Add 'Hugg' to Newsburst from CNET News.com Kinja Digest View Additional SYS-CON Feeds
Publish Your Article! Please send it to editorial(at)sys-con.com!

Advertise on this site! Contact advertising(at)sys-con.com! 201 802-3021

SYS-CON FEATURED WHITEPAPERS

ADS BY GOOGLE
BREAKING NEWS FROM THE WIRES
XtremeNotebooks Releases First Xeon Quad Core Laptop to the United States
XtremeNotebooks, first to introduce the Quad Core laptop to the United States, offers the firs