Page 1 of 1

COM Programming - List of IID and CLSID values

Posted: Wed Jun 29, 2005 3:36 am
by freak
This was on my disk for some time, so i have to finally release it.

When coding with the Windows COM (Component Object Model) you often
need IID or CLSID values to identify an Interface or a Class.
Until now you had to search for these values in the C header files, and
convert them to PureBasic yourself.

As this is sometimes not that simple, and not very easy for many people to
do, i have now extracted them all into a list and put them together with
a little viewer tool to make searching easy.

Included are IID, CLSID, LIBID and GUID values from the Microsoft Platform SDK and
DirectX 9 SDK header files.

The viewer creates the PB datasection code that you can paste into your PB project,
and then access the 128bit GUID values simply through a label pointer.

You can get the tool (including source) on my page here:
http://freak.purearea.net/tools/

I also plan to write another tutorial on COM programming, but i do not
really know when i will find the time for that.

Anyway, i hope this tool will make it a litttle easier for those that allready
took the dive into COM :)

btw, if you add this as an external tool to the new IDE, include the %WORD
token for the commandline, and it will search for the GUID value under
the cursor when you open the tool.

Posted: Wed Jun 29, 2005 7:57 am
by Kiffi
Hello freak,

thank you for this useful tool!

Greetings ... Kiffi

P.S.: Is there any reason, why you don't post this Announcement in the german forum?

Posted: Wed Jun 29, 2005 8:47 am
by Droopy
Thanks a lot :D

I'm waiting for the tutorial

Posted: Wed Jun 29, 2005 12:11 pm
by freak
Kiffi wrote:P.S.: Is there any reason, why you don't post this Announcement in the german forum?
Look at the posting time.. i was about to fall asleep :D

Posted: Wed Jun 29, 2005 12:39 pm
by Dare2
freak wrote:Look at the posting time.. i was about to fall asleep :D
Careful or we will start to think you're a mere mortal. :)

Thanks for this.

Posted: Wed Jun 29, 2005 12:52 pm
by Kale
Simply Awesome Timo!!! Saves alot of time!! :shock: :D :D

Posted: Wed Jun 29, 2005 4:34 pm
by sigi
A Tutorial would be great :)

Posted: Sat Oct 29, 2005 10:58 am
by Heis Spiter
It's a nice tool, but a class is absent (CLSID) : IOleObject.
Moreover this class isn't in PureBasic. For people who wants to use it

Code: Select all

Interface IOleObject
	QueryInterface(a,b)
	AddRef()
	Release()
	SetClientSite(a)
	GetClientSite(a)
	SetHostNames(a,b)
	Close(a)
	SetMoniker(a,b)
	GetMoniker(a,b,c)
	InitFromData(a,b,c)
	GetClipboardData(a,b)
	DoVerb(a,b,c,d)
	EnumVerbs(a)
	Update()
	IsUpToDate()
	GetUserClassID(a)
	GetUserType(a,b)
	SetExtent(a,b)
	GetExtent(a,b)
	Advise(a,b)
	Unadvise(a)
	EnumAdvise(a)
	GetMiscStatus(a,b)
	SetColorScheme(a)
EndInterface