|Products Purchase Publishing Articles Support Company Contact|
Articles > COM > VersionStamper and DLL-Hell
Copyright © 2001 by Desaware Inc. -- All rights reserved.
In our advertising for VersionStamper, we claim that it can help you eliminate component conflict problems. The reactions to our claims vary, taking some of these forms:
What I hope to do in this brief article is describe our philosophy in creating VersionStamper, and how you can deploy it to solve a surprisingly wide variety of problems.
There are three critical ideas that are important to understand about VersionStamper.
Let's consider these one at a time.
Applications and Components
Most Windows applications use components. And they won't run if any of them are missing, obsolete, mis-registered, or corrupt.
This statement is probably well understood by anyone reading this article. If you think about it, there are two parts to the problem.
Most modern installation programs include tools to determine dependencies for your applications. Some do a better job of it than others. VersionStamper uses three types of dependency checking:
All of these techniques can be combined using the VersionStamper dependency wizard to obtain an accurate dependency list for any application.
Let me stress that - ANY application. Not just applications you create. Hold that thought.
Client side scanning
Determining which components an application will actually see when it runs is the second part of the verification process. To do this you must run code on the client - specifically, code that uses the VersionStamper scanning control or component.
VersionStamper can be deployed in two ways to perform this scanning.
The dependency list used for determining conflicts can be almost anywhere. You can embed it into your application. You can download it dynamically from the web or an FTP site, or you can even use an ordinary text file.
What makes VersionStamper unique again is its ability to correctly perform dependency scans for any application - even those you do not create. Normal installation programs often provide some degree of dependency checking and even repair capabilities, but only VersionStamper is able to generically determine dependencies and perform conflict resolution for an arbitrary application or group of applications.
The VersionStamper scanning components are small, high performance ATL based components that can find conflicts that exist. But what you do with that information is up to you.
We provide a wide selection of high level response code in the form of Visual Basic classes that include full source code. Responses can range from informing the user via a message box, to Emailing a report to a help desk, to performing an automatic upload of newer components. The response choice is entirely up to you and is 100% customizable. You can drop in one of our canned solutions for a quick deployment, modify them slightly to suit your needs, or create your own response from scratch.
VersionStamper is NOT an application. It is a programmers toolkit that is designed to help software developers and IS departments create solutions to the problems of distributing component based software. It contains extensive sample source code and technical documentation on distribution strategies. Some of the solutions we've heard about include these:
For Application Developers
For Enterprise Developers
For IS Departments
Why is VersionStamper Unique?
To understand what makes VersionStamper unique, it is necessary to consider how it differs in philosophy from other approaches:
VersionStamper is not an installation program, though it can be used in that way for some applications. It lacks the advanced user interface and scripting that installation programs feature. VersionStamper's strength lies in what happens after the installation is complete. Installation programs fall flat when it comes to dealing with changes to a system made after installation - in most cases you are stuck with simply reinstalling the application and hoping the problem will be solved. VersionStamper is the ideal complement for installation programs when you distribute your applications.
VersionStamper is also unique in its ability to work across applications, and work with other people's applications. Installation programs are designed primarily for use when deploying your own application.
Microsoft's new Active install will gradually be deployed with more and more applications. Nevertheless, it does not provide a magical solution to the DLL-Hell problem.
VersionStamper works with any application, and comes in 16 bit editions as well. VersionStamper works on all current Microsoft operating systems (and a few obsolete ones such as Windows 3.1).
System Management Tools
VersionStamper provides a powerful independent complement for high end system management tools. It allows you to deploy small scanning applications to catch problems that the tools might miss. Even beginning Visual Basic programmers can quickly create applications that perform independent diagnostics that are not dependent on the correct functioning of the system management tools.
It's easy to understand why VersionStamper is a bit hard to believe - the problem of component conflicts has become so widespread that any claim for addressing them is naturally suspect. And in fact, we ourselves don't claim to solve the problem. What we do is provide the tools so that your software development or IS team can quickly create solutions that are suitable for your own application or enterprise.
And this isn't surprising, because creating tools for software developers to solve their own problems is the foundation on which Desaware is built.
For notification when new articles are available, sign up for Desaware's Newsletter.
|Products Purchase Articles Support Company Contact