Solved

Visual studio installer problem

Posted on 2004-09-18
3
161 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
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
3 Comments
 
LVL 3

Accepted Solution

by:
aParser earned 100 total points
ID: 12095329
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
ID: 12095429
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
ID: 12099708
I never encounter any problems with VSI.....Maybe you need to re-install....
0

Featured Post

Technology Partners: We Want Your Opinion!

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!

Question has a verified solution.

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

As with any other System Center product, the installation for the Authoring Tool can be quite a pain sometimes. This article serves to help you avoid making these mistakes and hopefully save you a ton of time on troubleshooting :)  Step 1: Make sur…
This collection of functions covers all the normal rounding methods of just about any numeric value.
As developers, we are not limited to the functions provided by the VBA language. In addition, we can call the functions that are part of the Windows operating system. These functions are part of the Windows API (Application Programming Interface). U…
Viewers will learn how to maximize accessibility options in an Excel workbook for users with accessibility issues.

688 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