• Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 1083
  • Last Modified:

How to check what program libraries are trying to opened a .exe program ???

Hi EXPERTS!      

I have made my VB6 application – standard EXE which is referenced to the other program libraries – some are public, some are made from me. In my computer the application is working fine. Now I have problem that when I start the application on deployment computers I get error:

Run-time error 403
Class does not support automation or does not support expected interface.

Error is getting in start of application and I do not see any of my programming screen at all.
It is clear that problem is in a library which is missed in deploy computer, but can I have some options to get some details info for error like CLSID 28762836823 couldn’t be find or even better to get name of library which make problems ? May be with some hacking tool I can open application and review what recourse try to access and to find where is fail ???

I’m VERY experienced with this area as from 10 years I works with VB6 and ActiveX components included to make the installation programs. But now situation is far  more complex and application is not done by me, I have all it code but couldn’t deal with it. Please help!

  • 2
  • 2
1 Solution
I don't know of a tool that will tell you what libraries are being called in a compiled application, but for myself, in these situations, I go back to plain vanilla - basic-basic environment for testing.  It's possibly a library not correctly installed on the target system.  Try this: Create a new project with nothing but the external library(ies) and make the most basic of code that will call the library.  Verify it works on your system and just copy the compiled executable to your target machine.  Test it there.  

This will tell you the following:  Since you don't have any of your code included, you're able to verify the library is installed.  If it works, your library(ies) are installed correctly; if not, they are not correctly installed.  Focus first on that.  One you know your library(ies) work(s), then move on to adding your code and test again.

The goal is to try basics first, then change one thing at a time, troubleshooting each step.  In my case (a very controlled environment), I have a common set of libraries I use in a number of VB6 apps I use around our office computers, and I have a standard base app that simply includes all the libraries I need, and a simple interface that allows me to verify they work.  Then when I deploy a new app or new version, all I have to distribute is the .exe.  If it doesn't work, I can focus on the libraries.

Hope that helps.
Not sure if this will show you everything you need, but try running Microsoft's ProcessExplorer on your development machine and see what files (DLLs, etc) your app is loading.

Great program:

dvplayltdAuthor Commented:
10x for help ! Due to your offer I made some tests test and I find DLL which actually do the problems !

Thanks again!!!
Glad it helped!
dvplayltdAuthor Commented:
Dear kbirecki

First – THANKS AGAIN for your help !!! As I say I have created on my own about 20 ActiveX and OCX controls, separated from this in every my project I have usually about 10-15 additional libraries which I use, so I’m very deep in practice of using ActiveX . But this time I lose almost 24 hours before I get solution, due to you offer.
I want to share what was problem here.

Problems was with one of created by me with Vb6 ActiveX component. While I detect which one is due to you offer I understand that problem is not in my code, but somewhere in binary CLSID. So I do this – copy this DLL project in the new VB project, change his name and compile this new. While do compile I get this error message:
Programmatic ID string too long 'item'. The Programmatic ID must be 39 characters or less.

Then I reduce the name of project ID , compile again, reference this new ActiveX in my project and was able to start application! What is very strange is that the problem ActiveX was created and compiled in Win XP without problem, but now it is compiled in Win7.
In fact, problem was in errors in CLSID for one of the class, but in binary level and without any warring ..very hard to detect what is going on!
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

Join & Write a Comment

Featured Post

Cloud Class® Course: Certified Penetration Testing

This CPTE Certified Penetration Testing Engineer course covers everything you need to know about becoming a Certified Penetration Testing Engineer. Career Path: Professional roles include Ethical Hackers, Security Consultants, System Administrators, and Chief Security Officers.

  • 2
  • 2
Tackle projects and never again get stuck behind a technical roadblock.
Join Now