Essential IDL: Interface Design for COM

Martin Gudgin

  • 出版商: Addison Wesley
  • 出版日期: 2000-12-15
  • 售價: $1,660
  • 貴賓價: 9.5$1,577
  • 語言: 英文
  • 頁數: 353
  • 裝訂: Paperback
  • ISBN: 0201615959
  • ISBN-13: 9780201615951
  • 海外代購書籍(需單獨結帳)

買這商品的人也買了...

商品描述


Description

The in-depth, top-down guide to COM interface design with IDL.

  • Efficient IDL techniques for both server-side and client-side development.
  • From the basics to advanced techniques, such as aliasing and MIDL-generated marshalling code.
  • Includes complete IDL reference: data types, modifiers, keywords, and attributes.
Virtually all COM projects should begin with IDL, because defining interfaces is the key to successfully designing any COM project. Essential IDL is the first book that focuses entirely on IDL, providing in-depth explanations of both the language and its applications. Essential IDL starts by explaining why IDL exists, what it is for, and what can be done with it. All aspects of IDL syntax are covered: basic interface definition, complex data types, array handling, marshalling issues, and more. From start to finish, the focus is pragmatic. Expert COM developer Martin Gudgin presents extensive IDL code samples and resulting C++, Java, and VB language mappings, demonstrating exactly how to use IDL constructs sensibly and efficiently in both client-side and server-side projects. Gudgin takes a top-down approach, starting with interfaces, then drilling down into simple data types, complex types, pointers and arrays; and finishing with aliasing and other esoteric IDL constructs. The second half of the book is a complete reference guide to all of IDL's data types, modifiers, keywords and attributes.

Martin Gudgin is Principal Scientist at DevelopMentor. He has been involved in COM-based software projects as a consultant in the financial and insurance sectors, and has written courseware for COM technologies. He has been working with Microsoft Transaction Server since 1996, and delivered MTS training to Microsoft staff throughout Europe. He is a Microsoft Certified Solution Developer (MCSD).

Back to Top


Appropriate Courses

Windows Programming.

Back to Top


Table Of Contents

1. Hello, IDL.
What Is IDL?
Defining Interfaces.
Adding Parameters.
More on Directionality.
Conclusions.

2. Structure of an IDL File.
Interfaces and Type Information.
Inside the Library Block.
Versioning Type Libraries.
Producing C++ Type Information.
Outside the Library Block.
Building a Proxy-Stub DLL.
Interface Definitions, Type Libraries and the Oleautomation Attribute.
The Local Attribute.
Importing Other Files.
Importing Files in the Library Block.
Coclasses.
Conclusions.

3. Data Types and Interface Issues.
Primitive Data Types.
Signed and Unsigned Data Types.
Char vs Byte.
Char vs Wchar_t.
LPOLESTR vs BSTR.
Enumerated Types.
Object References.
Structures.
Unions.
The VARIANT.
Typedefs.
Properties.
Interface Inheritance.
Dispatch Interfaces.
Conclusions.

4. Pointers and Arrays.
Pointer Basics.
Pointers and Const.
Pointer Semantics.
Top-level vs Embedded Pointers.
Pointers and Language Mappings.
Object References and Pointers.
Arrays.
Fixed Size Arrays.
Conformant Arrays.
Conformant Pointers.
Conformant Pointers as Output Parameters.
Simulating Fixed Size Arrays Using Conformance.
Multi-dimensional Conformant Pointers.
Arrays as Structure Members.
Jagged Arrays.
SAFEARRAYs.
Conclusions.

5. Aliasing.
Method Aliasing.
Type Aliasing.
More Type Aliasing.
Conclusions.

6. Asynchronous COM.
Asynchronous Calls.
Client-side Asynchrony.
Server-side Asynchrony.
Conclusions.

7. IDL Types.
8. IDL Type Modifiers.
9. IDL Keywords.
10. IDL Attributes.
Bibliography.
Index. 0201615959T04062001


Back to Top