Solved

Visual studio installer problem

Posted on 2004-09-18
3
156 Views
Last Modified: 2011-09-20
Hi , iam using VSI to build a setup package for my visual basic programes, iam using ACCESS database in my application , the problem is i found that when i make setup for my prg. in another computer it gives me an activex error(i thing when it connect to the database), iam using DAO, i noticed that the setup programe put files like DAO350.dll and mfc40 in the application program, i tried to change the distination folder in the VSI but it was disabled , Is this the problem and how can i solve it , Thanx a lot
0
Comment
Question by:ashraf_t
3 Comments
 
LVL 3

Accepted Solution

by:
aParser earned 100 total points
Comment Utility
In this, I'm assuming that the error is 429: ActiveX component can't create object.

The *quick* solution, if you really think it's database-related, is to download the lastest MDAC from Microsoft -- http://msdn.microsoft.com/data/default.aspx and look in the right margin for "MDAC Downloads" -- run it on the other computer, and see if that computer starts working.  Microsoft also provides MDAC redistributables that can be added to setup packages.  I've never done it, but it's possible.

The longer solution is convoluted, but I've used it several times.  First, you'll need to get (free) RegMon from SysInternals: http://www.sysinternals.com/ .

Next, start RegMon and then your application on the non-working PC.  (It's better if you can set up the filters in RegMon to ignore system processes.  You circumstances will differ from mine, so you'll just have to play with the filter, but it's very straight-forward.)

When you get the ActiveX error, switch to RegMon and stop capturing.  Don't clear the error dialog until after you have stopped RegMon.

Look back through RegMon and find where your program is querying the registry for a CLSID and getting a response of NOT FOUND.

Go back to YOUR computer -- where you're NOT getting the error -- and search the registry for that CLSID.  You should find it.  If you don't, it wasn't the right CLSID; go back to the non-working computer and look for the previous missing CLSID.

The details of that CLSID in YOUR registry should tell you which component is missing from the non-working computer.

A third solution is one I'm doing lately.  Every time I create a component, I have a string variable that I fill in with the component's ProgID.  (I never Dim As New.)  In my error trap, I check for error 429 and add that string to my error message.

Sub MySub()
    Dim o1 As New MyObject ' if you Dim variables this way, it won't work
    Dim o2 As MyObject
    Dim strProgID As String
    ...
    On Error GoTo Error_Trap
    ...
    strProgID = "MyObject" ' or I prefer "MyLibrary.MyObject"
    Set o2 = New MyObject
    ...
    Exit Sub
Error_Trap:
    If Err.Number = 429 Then
        MsgBox "Error 429 creating " & strProgID
    End If
    ...
0
 

Author Comment

by:ashraf_t
Comment Utility
I will try these solution but why VSI fail in dicovering what the aplplication need , In Package and Deployment wizard that was very easy and can define which files must be taken in the cab file and it's right position ????
0
 
LVL 2

Expert Comment

by:x50Fade
Comment Utility
I never encounter any problems with VSI.....Maybe you need to re-install....
0

Featured Post

Threat Intelligence Starter Resources

Integrating threat intelligence can be challenging, and not all companies are ready. These resources can help you build awareness and prepare for defense.

Join & Write a Comment

The canonical version of this article is on my web site here: http://iconoun.com/articles/collisions/ A companion presentation is available here: http://iconoun.com/articles/collisions/Unicode_Presentation.pdf
The System Center Operations Manager 2012, known as SCOM, is a part of the Microsoft system center product that provides the user with infrastructure monitoring and application performance monitoring. SCOM monitors:   Windows or UNIX/LinuxNetwo…
The viewer will learn how to use the =DISCRINV command to create a discrete random variable, use this command to model a set of probabilities and outcomes in a Monte Carlo simulation, and learn how to find the standard deviation of a set of probabil…
The viewer will learn how to create a normally distributed random variable in Excel, use a normal distribution to simulate the return on an investment over a period of years, Create a Monte Carlo simulation using a normal random variable, and calcul…

762 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

13 Experts available now in Live!

Get 1:1 Help Now