Book Image

D Cookbook

By : Adam Ruppe
Book Image

D Cookbook

By: Adam Ruppe

Overview of this book

Table of Contents (21 chapters)
D Cookbook
Credits
Foreword
About the Author
About the Reviewers
www.PacktPub.com
Preface
Index

Using Windows' COM


Component Object Model (COM) is a Microsoft technology used for interoperability between Windows programs. D has built-in support for basic COM, and using its features, we can also automate the implementation of advanced COM features.

Here, we'll write a COM server and client with the help of a library and look at the implementation.

Getting ready

Download the Win32 bindings from http://dsource.org/projects/bindings and the comhelpers.d file from http://github.com/adamdruppe/com.

How to do it…

COM, like shared libaries, uses a client-server model. First, we'll write a COM server and then write its corresponding COM client.

COM server

Let's write a COM server by executing the following steps:

  1. Generate GUIDs for your interface and class using a GUID generation tool.

  2. Import win32.unknwn and comhelpers.

  3. Write your interface definition, inheriting from IUnknown and marking all methods extern(Windows). Attach the IID (interface's GUID) to the interface with the ComGuid attribute. Each...