VB Decompiler Forum Index VB Decompiler
Hosted by TheAutomaters.com
 
  MemberlistMemberlist
 

COM Registration Info

 
   VB Decompiler Forum Index -> Structures
Author Message
_aLfa_
Site Admin


Joined: 21 Sep 2002
Posts: 233
Location: Aveiro, Portugal

Posted: Mon Aug 23, 2004 3:19 pm     Post subject: COM Registration Info

Parents:
COM Registration Data

[vb:2z6r139v]
  1. Type COMRegInfo
  2.   oNextObject          As Long    ' 0x00 (00d) Offset to the next COMRegInfo Struct
  3.   oObjectName          As Long    ' 0x04 (04d) Offset to Object Name
  4.   oObjectDescription   As Long    ' 0x08 (08d) Offset to Object Description
  5.   lInstancing          As Long    ' 0x0C (12d) Instancing Mode
  6.   lObjectID            As Long    ' 0x10 (16d) Current Object ID in the Project
  7.   uuidObject(15)       As Byte    ' 0x14 (20d) UUID of Object
  8.   fIsInterface         As Long    ' 0x24 (36d) Specifies if this Object is Interface
  9.   ouuidObjectInterface As Long    ' 0x28 (40d) Offset to UUID of Object Main Interface
  10.   ouuidEventsInterface As Long    ' 0x2C (44d) Offset to UUID of Object Events Interface
  11.   fDispatchEvents      As Long    ' 0x30 (48d) Specifies if this Object dispatchs Events
  12.   fOLEMisc             As Long    ' 0x34 (52d) OLEMISC Flags
  13.   fClassType           As Byte    ' 0x38 (56d) Class Type
  14.   fObjectType          As Byte    ' 0x39 (57d) Flag identifying the Object Type
  15.   iToolboxBitmap32     As Integer ' 0x3A (58d) Control Bitmap ID in Toolbox
  16.   iDefaultIcon         As Integer ' 0x3C (60d) Minimized Icon of Control Window
  17.   fIsDesigner          As Integer ' 0x3E (62d) Specifies whether this is a Designer
  18.   oDesignerData        As Long    ' 0x40 (64d) Offset to Designer Data
  19.                                   ' 0x44 (68d) <-- Structure Size
  20. End Type
[/vb:2z6r139v]

Notes:
Some of these values are only valid depending on the Object Type.
If fIsDesigner is 0 then this structure size is 0x40 (64d), i.e. oDesignerData is just an attachment to this structure when this object is a Designer.

Flags:
OLEMisc flags

Object Type flags:
[code=text:2z6r139v]
  1. +-------+---------------+--------------------------------------------+
  2. | Value | Name          | Description                                |
  3. +-------+---------------+--------------------------------------------+
  4. |  0x02 | Designer      | A Visual Basic Designer for an Add-in      |
  5. |  0x10 | Class Module  | A Visual Basic Class                       |
  6. |  0x20 | User Control  | A Visual Basic ActiveX User Control (.ctl) |
  7. |  0x40 | PropertyPage  | A Visual Basic PropertyPage (.pag)         |
  8. |  0x80 | User Document | A Visual Basic User Document               |
  9. +-------+---------------+--------------------------------------------+


Greetings to Alexandru Ionescu for decoding this structure


Last edited by _aLfa_ on Sun May 01, 2005 2:07 pm; edited 4 times in total
Back to top
_aLfa_
Site Admin


Joined: 21 Sep 2002
Posts: 233
Location: Aveiro, Portugal

Posted: Wed Aug 25, 2004 11:55 am     Post subject:

Edited notes section.
_________________
One thing only I know, and that is that I know nothing. (Socrates)
Back to top
_aLfa_
Site Admin


Joined: 21 Sep 2002
Posts: 233
Location: Aveiro, Portugal

Posted: Thu Aug 26, 2004 10:08 am     Post subject:

Edited again:
* Changed the UUID comments to the real meaning (I hope)
* Added OLEMisc Flags Microsoft link
_________________
One thing only I know, and that is that I know nothing. (Socrates)
Back to top
Dr Memory
Expert


Joined: 16 Aug 2004
Posts: 147
Location: Surrey, UK

Posted: Fri Aug 27, 2004 1:55 pm     Post subject:

I like the easy-to-read alignment
Back to top
MrUnleaded
Site Admin


Joined: 21 Sep 2002
Posts: 385
Location: California

Posted: Fri Aug 27, 2004 3:50 pm     Post subject:

[="Dr Memory":1yfr1xyc]I like the easy-to-read alignment [/:1yfr1xyc]you any good at php or perl? you could make us a code alignment script....if you had the time?

No sarcasism this time
_________________
-MrU
Back to top
vbgamer45
Regular user


Joined: 07 Jul 2004
Posts: 93
Location: 127.0.0.1

Posted: Fri Aug 27, 2004 4:02 pm     Post subject:

Everything looks good at resoultion of 1280 by 1024.
To bad I still use 640 by 800 since i think higher resoultions make the print too small for me to work with.
Back to top
Dr Memory
Expert


Joined: 16 Aug 2004
Posts: 147
Location: Surrey, UK

Posted: Fri Aug 27, 2004 4:55 pm     Post subject:

Sorry, no web-related skills of any kind ...

I have this old-fashioned but remarkably reliable and friendly freeware text editor "Programmer's File Editor", it has keyboard macros, that can be stored, loaded etc, so I've built up a useful set of them that I can bind to a function key at will depending what I'm editing ....
Back to top
Loki
New User


Joined: 15 Sep 2004
Posts: 5

Posted: Wed Sep 15, 2004 9:31 am     Post subject:

Code:

+-------+---------------+-------------------------------------------+
| Value | Name | Description |
+-------+---------------+-------------------------------------------+
| 0x02 | Designer | A Visual Basic Designer for an Add.in |
| 0x10 | Class Module | A Visual Basic Class |
| 0x20 | User Control | A Visual Basic ActiveX User Control (OCX) |
| 0x40 | PropertyPage | A Visual Basic PropertyPage (.pag) |
| 0x80 | User Document | A Visual Basic User Document |
+-------+---------------+-------------------------------------------+

Value 0x40 seems to be a PropertyPage-Class. (BTW, 0x20 ist not OCX, it's .ctl... )

Bye,
Loki

//Addendum:

fObjectType could have the following Values:
0 - PublicNotCreatable
1 - SingleUse or GlobalSingleUse (cf. GlobalNameSpace-Bit in ObjectType-Flags of Object-Structure)
2 - MultiUse or GlobalMultiUse (cf. GlobalNameSpace-Bit in ObjectType-Flags of Object-Structure)

fClassType seems always to be 0 with one exception:
If there's a Control that's creatable, but not exposed (Public = false in Properties), then it's 1.
One could call this type of instancing "MultiUseNotExposed" or "PublicNotExposed" or "PrivateCreatable"

Attributes one can found in Project-Files and their meaning for Instancing:
Code:

+-------------+------------+-------------+-----------+
| MultiUse* | GlobalNS | Creatable | Exposed | means
+-------------+------------+-------------+-----------+-----------------
| True | True | True | True | GlobalMultiUse
| False | True | True | True | GlobalSingleUse
| True | False | True | True | MultiUse
| False | False | True | True | SingleUse
| True | False | False | True | PublicNotCreatable
| True | False | False | False | Private
| True | False | True | False | "PrivateCreatable" (only ctl)
+-------------+------------+-------------+-----------+

* UserControls, UserDocuments, PropertyPages and Designers seem to be always MultiUse without explicit Declaration of the MultiUse-Attribute.


Bye,
Loki


Last edited by Loki on Wed Sep 15, 2004 4:24 pm; edited 1 time in total
Back to top
Dr Memory
Expert


Joined: 16 Aug 2004
Posts: 147
Location: Surrey, UK

Posted: Wed Sep 15, 2004 10:25 am     Post subject:

"Private Creatable" is, I think, the best choice from those options!

Emphasis on "private" is worth retaining...
_________________
[size=75:2sg2dqh1]At first, I was irridescent. Then, I became transparent. Finally, I was absent ...
Back to top
Loki
New User


Joined: 15 Sep 2004
Posts: 5

Posted: Wed Sep 15, 2004 4:24 pm     Post subject:

[="Dr Memory":xe1hqf7x]"Private Creatable" is, I think, the best choice from those options!

Emphasis on "private" is worth retaining...[/:xe1hqf7x]

OK, I changed it.

Bye,
Loki
Back to top
   VB Decompiler Forum Index -> Structures All times are GMT
Page 1 of 1

 
You can post new topics in this forum
You can reply to topics in this forum
You can edit your posts in this forum
You can delete your posts in this forum
You can vote in polls in this forum


Powered by phpBB © 2001, 2005 phpBB Group