Solved

How can I distribute DLL Libraries correctly?

Posted on 2008-10-09
3
270 Views
Last Modified: 2013-12-03
I need to distribute SQLDMO with a program that I have developed (using Visual Studio 2005 Setup and Distribution project). The SQLDMO has several .DLL/.RLL files that are installed with SQL Enterprise Manager. But not everyone that uses the program will have it already installed in their machines. Right now I am installing and registering the files if I cannot find them on the locations that they are usually found (using file check conditions). But, I would like to know if it is possible to check if the dlls that need to be registered are already in the windows registry (because I think this may be safer than just checking for the actual file where I expect to find it).
My biggest fear is that I will overwrite registries locations with the files I am installing. This could be a problem if the version I am providing is older than the one that was already in the registry.
I am new to this area and I am not sure of what the safest way to handle this situation is.
Any information will be greatly appreciated!
0
Comment
Question by:aferia
  • 2
3 Comments
 
LVL 17

Accepted Solution

by:
CSecurity earned 500 total points
ID: 22684863
GO and download InnoSetup from:
http://www.innosetup.com/isdl.php

Then use and example Inno Setup script, include your dlls and your program files, for checking existance of file onlyifdoesntexist

It's a flag. Like this:

Source: "MSCOMCTL.OCX"; DestDir: "{win}"; Flags:  regserver onlyifdoesntexist

If a file is deleted and only it's entry in registry exists, it's useless, you need to check it with checking for existence of file not with registry.


0
 

Author Comment

by:aferia
ID: 22686502
Do you know if the VS2005 Setup Distribution Project clean the registry entries after a program is removed?
0
 
LVL 17

Expert Comment

by:CSecurity
ID: 22686518
If you create your installer with InnoSetup it will have uninstaller and uninstaller will remove ALL entries from files and folders and from registry.
0

Featured Post

Windows Server 2016: All you need to know

Learn about Hyper-V features that increase functionality and usability of Microsoft Windows Server 2016. Also, throughout this eBook, you’ll find some basic PowerShell examples that will help you leverage the scripts in your environments!

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Suggested Solutions

Title # Comments Views Activity
SQL Select Statement 2 22
SQL Query Syntax Join 4 34
Changing the datatype of a column from nvarchar to date 47 15
Error is query 14 0
Load balancing is the method of dividing the total amount of work performed by one computer between two or more computers. Its aim is to get more work done in the same amount of time, ensuring that all the users get served faster.
If you don't know how to downgrade, my instructions below should be helpful.
Using examples as well as descriptions, and references to Books Online, show the documentation available for date manipulation functions and by using a select few of these functions, show how date based data can be manipulated with these functions.
Using examples as well as descriptions, and references to Books Online, show the documentation available for datatypes, explain the available data types and show how data can be passed into and out of variables.

867 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

21 Experts available now in Live!

Get 1:1 Help Now