Solved

How to remove a component from VB6

Posted on 2004-08-18
7
266 Views
Last Modified: 2008-01-16
How does one remove a component from the component list in VB6? We don't want to use it again, ever.

I'm not very proficient at VB, so this is a newbie question.

A customer installed a demo component into their VB6 development environment while logged in as USERA.
The machine, a WinXP Pro box, had been part of a workgroup when this was installed.  The workstation joined a domain, which created a new profile for the user(USERB).  We have tried to migrate the profile from USERA to USERB.

When USERB starts up VB, they get prompted for the installation CD from the demo.  They can cancel through the questions/prompts, but its annoying.   When USERA starts up VB, they get no prompts for installation.  We're trying to uninstall the demo component all together, but don't have the demo CD, its not listed in the "Add/Remove Programs" list, and we don't find any "un-install" menu item.  

I surmise that the component's install didn't install the component with "All Users" security; instead it must have installed it only for the current user (which was USERA, at the time).    We can delete directories and the .OCX files, but I'd like to get it removed from their component list completely, regardless of user.

0
Comment
Question by:studios
  • 4
7 Comments
 
LVL 7

Expert Comment

by:Burbble
ID: 11832296
I'm not positive on this, but you can try unregistering the component:

Start > Run :

regsvr32 /u FILENAME.OCX

I will look into this further and get back to you if I find anything.

-Burbble
0
 
LVL 7

Accepted Solution

by:
Burbble earned 250 total points
ID: 11832350
Yep, that does it. If it's not located in the WINDOWS\SYSTEM directory, you will have to type the full path surrounded by quotes:

regsvr32 /u "C:\Program Files\Application\MyActiveXControl.OCX"

You can also set it so no "DLL Unregister Succeed" message box is shown like this:

regsvr32 /u /s "C:\Program Files\Application\MyActiveXControl.OCX"

(/s is for "silent")

-Burbble
0
 
LVL 2

Expert Comment

by:kouroshparsa
ID: 11862605
Try "\windows\system32\MyActiveXControl.OCX"
0
 
LVL 7

Expert Comment

by:Burbble
ID: 11864225
If it is located in the WINDOWS\SYSTEM directory (or equivilent), you can use:

regsvr32 /u MyActiveXControl.ocx

like I said before...

If you are coding this into your program (using Shell, for instance), then it is better to call it with the full path, just in case.

(Full path meaning the drive letter, path, and filename: like "C:\Windows\System\MyActiveXControl.OCX" or "C:\Program Files\Application\MyActiveXControl.OCX").

If the file is not located in a static position on every system, you will have to find the path programmatically... If this is what you need, please ask and I will be glad to assist :-)
Otherwise, the solution I provided is what you are looking for...

-Burbble
0
 
LVL 7

Expert Comment

by:Burbble
ID: 12376813
Like I said,

>> Otherwise, the solution I provided is what you are looking for...

Based on the information provided, I am 99% sure that what I provided will solve the problem :)

-Burbble
0

Featured Post

Is Your Active Directory as Secure as You Think?

More than 75% of all records are compromised because of the loss or theft of a privileged credential. Experts have been exploring Active Directory infrastructure to identify key threats and establish best practices for keeping data safe. Attend this month’s webinar to learn more.

Question has a verified solution.

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

You can of course define an array to hold data that is of a particular type like an array of Strings to hold customer names or an array of Doubles to hold customer sales, but what do you do if you want to coordinate that data? This article describes…
Since upgrading to Office 2013 or higher installing the Smart Indenter addin will fail. This article will explain how to install it so it will work regardless of the Office version installed.
Get people started with the utilization of class modules. Class modules can be a powerful tool in Microsoft Access. They allow you to create self-contained objects that encapsulate functionality. They can easily hide the complexity of a process from…
This lesson covers basic error handling code in Microsoft Excel using VBA. This is the first lesson in a 3-part series that uses code to loop through an Excel spreadsheet in VBA and then fix errors, taking advantage of error handling code. This l…

920 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

14 Experts available now in Live!

Get 1:1 Help Now