?
Solved

Protected Activex Exe

Posted on 2003-02-18
6
Medium Priority
?
192 Views
Last Modified: 2010-05-01
Hello
I have an ActiveX Exe file from Microsoft.
It has some kind of protection, so no one will be able to use it, just they.
when trying to add the Activex Exe to the references nothing happens.
so I looked into the register and found that this Activex Exe can be use.
so I tried this:

Option Explicit
Private MyObj

Private Sub Form_Load()
    Set MyObj = CreateObject("TheClass.Object.1")
End Sub

Private Sub Form_Unload(Cancel As Integer)
    Set Msn = Nothing
End Sub

doing that works fine, but how can I know the properties method or classing that this ActiveX Exe uses.
Is there any trick or tool out there to find something about this Activex Exe.
Dont forget the Microsoft uses some kind of proteccion, so when you try to use Object Browser nothing shows up
Thank you
0
Comment
Question by:StonedRaider
[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
6 Comments
 
LVL 1

Accepted Solution

by:
Bandy earned 150 total points
ID: 7978970
If you've just added it to the "References" section then you won't see any effect, but the reference should be there.
(Project->References)

It'll only show up if it's a component.
(Project->Components)


Try adding the reference, and in the declarations section:

    Dim myClass As TheClass.Object1

and then in your form_load event

    Set myClass = New TheClass.Object1

Now when you type "myClass." a list of the properties/methods should show up.

Although, if M$ are being really protective of this object, then this may not work either, but it's worth a try.
0
 
LVL 4

Expert Comment

by:Sashi Rachabattula
ID: 7979909
the sytax for createobject is

   Set MyObj = CreateObject(progid)
where projid is projectname.classname

0
 
LVL 1

Expert Comment

by:Bandy
ID: 7990905
Was that comment a reply to the way I declared / instantiated my objects, rsashi?

If it was, here's my explanation of my code.
If it wasn't just ignore me.

If any of this is incorrect, or i've misinterpreted the meaning of your comment, please let me know. (We're all hear to learn and improve, so any comments you want to make are appreciated.)

There's two methods for binding an object in VB (5/6 - I don't know about .net)

1. Early Binding - Where we declare, in the declaration of the variable, the type of object it is going to contain, as my example...

Dim myClass As TheClass.Object1
Set myClass = New TheClass.Object1

The benefit of this, is that when coding, you can get full information about the object via vb's inline hints (eg: List Properties/Methods), but to do this, you must have the reference added to the project, otherwise, when you try to run it, it can't find the object, and crashes.

2. Late Binding - Where we declare the variable to be of type "Object", and bind it to a specific type of object when it's initialized, as your example...

Dim MyObj as Object
Set MyObj = CreateObject(progid)

This means that you don't have to declare it as a specific type of object, and you can, at run time, check if that object type exists first, before using the CreateObject function. It also means, because you're not binding it at design time, you don't need to have the reference added to your project.
0
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!

 

Author Comment

by:StonedRaider
ID: 8000146
Hello guys

Like I told you I have an ActiveX Exe from Microsoft.
It has some kind of proteccion because it does not allow
Early Binding, so I cant add the Activex Exe reference to my project.
so I tried Late Binding and it Worked!!!
The Activex Exe was created :), but my problem is that I dont know how to use it, because I dont have the properties, Methods from that activex.
so my questiond is how can I use it ?
Thank you
0
 

Expert Comment

by:CleanupPing
ID: 8901482
StonedRaider:
This old question needs to be finalized -- accept an answer, split points, or get a refund.  For information on your options, please click here-> http:/help/closing.jsp#1 
Experts: Post your closing recommendations!  Who deserves points here?
0
 
LVL 49

Expert Comment

by:DanRollins
ID: 8959577
Moderator, my recommended disposition is:

    Accept Bandy's comment(s) as an answer.

DanRollins -- EE database cleanup volunteer
0

Featured Post

Industry Leaders: 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

Introduction In a recent article (http://www.experts-exchange.com/A_7811-A-Better-Concatenate-Function.html) for the Excel community, I showed an improved version of the Excel Concatenate() function.  While writing that article I realized that no o…
This article describes some techniques which will make your VBA or Visual Basic Classic code easier to understand and maintain, whether by you, your replacement, or another Experts-Exchange expert.
Get people started with the process of using Access VBA to control Outlook using automation, Microsoft Access can control other applications. An example is the ability to programmatically talk to Microsoft Outlook. Using automation, an Access applic…
Show developers how to use a criteria form to limit the data that appears on an Access report. It is a common requirement that users can specify the criteria for a report at runtime. The easiest way to accomplish this is using a criteria form that a…
Suggested Courses
Course of the Month13 days, 4 hours left to enroll

777 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