Inside COM by Dale Rogerson Ebook: The Best Book on COM Ever Written
Inside COM by Dale Rogerson Ebook: A Comprehensive Guide to Microsoft's Component Object Model
If you are a C++ programmer who wants to learn how to create reusable software components that can communicate across processes, machines, and networks, then you need to understand Microsoft's Component Object Model (COM). And if you want to understand COM, then you need to read Inside COM by Dale Rogerson.
Inside Com By Dale Rogerson Ebook
Inside COM is a book that explains COM from the ground up, with a clear and simple style that makes it accessible to anyone who has mastered C++. It covers all the essential aspects of COM design and implementation, as well as advanced topics such as apartments, marshaling, security, and scripting. It also provides plenty of code examples that illustrate how to use COM in practice.
In this article, we will give you an overview of what Inside COM offers to C++ programmers who want to master COM and its applications. We will also tell you how to get Inside COM ebook for free and what are its features. Let's get started!
What is COM and why is it important?
COM stands for Component Object Model. It is a framework for creating software components that can be reused and combined in different ways. A software component is a piece of code that provides a well-defined set of services or functions through a standard interface. A component can be used by any other component or application that knows how to call its interface.
COM enables distributed computing and interoperability. Distributed computing means that components can run on different processes, machines, or networks, and still communicate with each other. Interoperability means that components can be written in different languages or platforms, and still work together. For example, a component written in C++ can be used by an application written in Visual Basic or Java.
COM is the basis of OLE, ActiveX, and other Microsoft technologies. OLE stands for Object Linking and Embedding. It is a technology that allows embedding or linking objects such as documents, spreadsheets, or images into other applications. ActiveX is a technology that allows creating interactive web content using components such as controls, applets, or plugins. Other Microsoft technologies that use COM include DCOM, COM+, MTS, MSMQ, DirectX, and .NET.
What does Inside COM offer to C++ programmers?
Inside COM offers a comprehensive guide to COM for C++ programmers. It covers the following topics:
Inside COM explains COM from the ground up with clear and simple examples
Inside COM starts with a lucid overview of what COM is and what benefits it offers to programmers. It then delves into the details of how COM works and how to use it. It explains the core concepts of COM such as interfaces, classes, objects, references, GUIDs, IUnknown, and HRESULTs. It also shows how to use the tools and libraries that support COM development such as MIDL, IDL, UUIDGEN, REGSVR32, OLEVIEW, and ATL.
Inside COM uses plenty of code examples to illustrate the concepts and techniques of COM. The code examples are written in C++ and use the standard Microsoft C++ compiler. The code examples are also available on a CD-ROM that comes with the book. The code examples show how to create and use different types of COM components such as in-process servers, out-of-process servers, automation servers, controls, monikers, and handlers.
Inside COM shows how to design and implement elegant COM components
Inside COM not only teaches how to use COM, but also how to design and implement elegant COM components. It shows how to apply the principles of object-oriented programming and design patterns to COM development. It also shows how to avoid common pitfalls and errors that can affect the performance, reliability, and maintainability of COM components.
Inside COM covers topics such as inheritance, aggregation, containment, delegation, polymorphism, encapsulation, abstraction, and reusability in COM design. It also covers topics such as threading models, apartments, marshaling, proxies, stubs, security, transactions, events, connections, scripting, and persistence in COM implementation.
Inside COM covers advanced topics such as apartments, marshaling, security, and scripting
Inside COM also covers advanced topics that are essential for developing robust and scalable COM components. These topics include:
Apartments: Apartments are a way of organizing threads and objects in a process. They ensure that objects are accessed by threads in a safe and consistent way. There are two types of apartments: single-threaded apartments (STAs) and multi-threaded apartments (MTAs). Inside COM explains how to choose the right apartment model for your component and how to handle cross-apartment calls.
Marshaling: Marshaling is a process of transferring data between different processes or machines. It involves converting data from one format to another that can be understood by the receiver. Inside COM explains how to use the standard marshaling mechanism provided by COM or how to implement custom marshaling for your component.
Security: Security is a process of protecting your component from unauthorized access or misuse. It involves authenticating the identity of the caller and authorizing the level of access or privilege granted to the caller. Inside COM explains how to use the security features provided by COM or how to implement custom security for your component.
Scripting: Scripting is a process of exposing your component to scripting languages such as VBScript or JScript. It allows users or developers to automate or customize your component without recompiling or redeploying it. Inside COM explains how to use the automation features provided by COM or how to implement custom scripting for your component.
How to get Inside COM ebook and what are its features?
If you are interested in reading Inside COM, you will be happy to know that you can get it as an ebook for free. Here is how:
Inside COM ebook is available for free download from Internet Archive
The Internet Archive is a non-profit organization that preserves digital content such as books, music, videos, and websites. It also provides free access to these content for anyone who wants to use them.
The Internet Archive has a copy of Inside COM ebook that you can download for free from its website. You can find it here: https://archive.org/details/insidecom00roge. You can choose from different formats such as PDF, EPUB, or MOBI. You can also read it online using the BookReader feature.
Inside COM ebook has 416 pages and includes a CD-ROM with source code and tools
Inside COM ebook has 416 pages that cover 15 chapters and 4 appendices. The chapters are organized into four parts:
Part I: Introduction to COM. This part introduces the basic concepts and terminology of COM, such as interfaces, classes, objects, references, GUIDs, IUnknown, and HRESULTs. It also explains how to use the tools and libraries that support COM development, such as MIDL, IDL, UUIDGEN, REGSVR32, OLEVIEW, and ATL.
Part II: Designing COM Components. This part shows how to apply the principles of object-oriented programming and design patterns to COM development. It covers topics such as inheritance, aggregation, containment, delegation, polymorphism, encapsulation, abstraction, and reusability in COM design.
Part III: Implementing COM Components. This part shows how to implement different types of COM components using C++ and ATL. It covers topics such as in-process servers, out-of-process servers, automation servers, controls, monikers, and handlers in COM implementation.
Part IV: Advanced COM Topics. This part covers advanced topics that are essential for developing robust and scalable COM components. It covers topics such as threading models, apartments, marshaling, proxies, stubs, security, transactions, events, connections, scripting, and persistence in COM implementation.
Inside COM ebook also includes a CD-ROM that contains the source code for all the examples in the book. The CD-ROM also contains tools and utilities that can help you with COM development, such as:
COMVIEW: A tool that allows you to view and manipulate the registry entries for COM components.
COMSPY: A tool that allows you to monitor and trace the activity of COM components.
COMTEST: A tool that allows you to test and debug COM components.
COMWIZ: A tool that allows you to generate skeleton code for COM components.
Inside COM ebook is compatible with Windows 95, Windows NT, and other environments
Inside COM ebook is compatible with Windows 95 and Windows NT operating systems. It also works with other environments that support COM development, such as UNIX, MVS, and OS/2. However, some features or functions may not be available or may behave differently in these environments.
Inside COM ebook assumes that you have a basic knowledge of C++ programming and Windows programming. It also assumes that you have access to a C++ compiler that supports COM development, such as Microsoft Visual C++ or Borland C++.
Conclusion
Inside COM by Dale Rogerson is a comprehensive guide to Microsoft's Component Object Model for C++ programmers. It explains COM from the ground up with clear and simple examples. It shows how to design and implement elegant COM components using C++ and ATL. It covers advanced topics such as apartments, marshaling, security, and scripting.
Inside COM is a must-read for anyone who wants to master COM and its applications. It provides a practical and progressive approach to learning COM. It is one of the best books on COM ever written.
If you want to read Inside COM, you can get it as an ebook for free from Internet Archive. You can also get a CD-ROM with source code and tools from Microsoft Press.
FAQs
Who is Dale Rogerson and what is his background?
Dale Rogerson is a software engineer who has been working with Microsoft technologies since 1989. He has extensive experience in developing applications using C++, MFC, OLE, ActiveX, DCOM, and .NET. He has also written several articles and books on these topics. He is currently a senior software engineer at Microsoft Corporation.
What are the prerequisites for reading Inside COM?
To read Inside COM, you need to have a basic knowledge of C++ programming and Windows programming. You also need to have access to a C++ compiler that supports COM development, such as Microsoft Visual C++ or Borland C++. You do not need to have any prior knowledge of COM or OLE.
What are some of the benefits of using COM in software development?
Some of the benefits of using COM in software development are:
Reusability: COM allows you to create software components that can be reused and combined in different ways. This reduces the cost and time of development and maintenance.
Distributed computing: COM allows you to create software components that can run on different processes, machines, or networks, and still communicate with each other. This increases the performance and scalability of your applications.
Interoperability: COM allows you to create software components that can be written in different languages or platforms, and still work together. This increases the flexibility and compatibility of your applications.
Customization: COM allows you to create software components that can be exposed to scripting languages such as VBScript or JScript. This allows users or developers to automate or customize your applications without recompiling or redeploying them.
What are some of the challenges or drawbacks of using COM?
Some of the challenges or drawbacks of using COM are:
Complexity: COM can be complex and difficult to understand and use. It involves many concepts and techniques that require careful attention and practice. It also involves many tools and libraries that require proper installation and configuration.
Error handling: COM uses a special type of error code called HRESULT to indicate the success or failure of an operation. HRESULTs can be hard to interpret and handle correctly. They can also cause memory leaks or crashes if not released properly.
Compatibility: COM can have compatibility issues with different versions or implementations of components. For example, a component written for Windows 95 may not work on Windows NT, or a component written for Visual Basic may not work on Java. These issues may require testing, debugging, or updating of components.
Security: COM can have security risks if not used properly. For example, a malicious component may access or modify sensitive data or resources on your system, or a remote component may execute arbitrary code on your system. These risks may require authentication, authorization, encryption, or signing of components.
What are some of the alternatives or successors to COM?
Some of the alternatives or successors to COM are:
CORBA: CORBA stands for Common Object Request Broker Architecture. It is a standard for creating distributed object-oriented applications across heterogeneous platforms. It is similar to COM, but it is more portable and interoperable. However, it is also more complex and less efficient than COM.
Java RMI: Java RMI stands for Java Remote Method Invocation. It is a technology for creating distributed Java applications that can invoke methods on remote objects. It is similar to COM, but it is simpler and more secure than COM. However, it is also less flexible and compatible than COM.
.NET: .NET is a framework for creating applications using various languages and platforms. It is similar to COM, but it is more modern and powerful than COM. It supports features such as garbage collection, reflection, generics, delegates, events, attributes, serialization, remoting, web services, and assemblies.
71b2f0854b