- Table of Contents
- Copyright
- About the Authors
- About the Contributors
- Acknowledgments
- Tell Us What You Think!
- Introduction
- How to Use This Book
- What You Need to Use This Book
- What's New in Visual C++ 6.0
- Contacting the Main Author
- Part I: Introduction
- Chapter 1. The Visual C++ 6.0 Environment
- Part II: MFC Programming
- Chapter 2. MFC Class Library Overview
- Chapter 3. MFC Message Handling Mechanism
- Chapter 4. The Document View Architecture
- Chapter 5. Creating and Using Dialog Boxes
- Chapter 6. Working with Device Contexts and GDI Objects
- Chapter 7. Creating and Using Property Sheets
- Chapter 8. Working with the File System
- Chapter 9. Using Serialization with File and Archive Objects
- Part III: Internet Programming with MFC
- Chapter 10. MFC and the Internet Server API (ISAPI)
- Chapter 11. The WinInet API
- Chapter 12. MFC HTML Support
- Part IV: Advanced Programming Topics
- Chapter 13. Using the Standard C++ Library
- Chapter 14. Error Detection and Exception Handling Techniques
- Chapter 15. Debugging and Profiling Strategies
- Chapter 16. Multithreading
- Chapter 17. Using Scripting and Other Tools to Automate the Visual C++ IDE
- Part V: Database Programming
- Chapter 18. Creating Custom AppWizards
- Chapter 19. Database Overview
- Chapter 20. ODBC Programming
- Chapter 21. MFC Database Classes
- Chapter 22. Using OLE DB
- Chapter 23. Programming with ADO
- Part VI: MFC Support for COM and ActiveX
- Chapter 24. Overview of COM and Active Technologies
- Chapter 25. Active Documents
- Chapter 26. Active Containers
- Chapter 27. Active Servers
- Chapter 28. ActiveX Controls
- Part VII: Using the Active Template Library
- Chapter 29. ATL Architecture
- Chapter 30. Creating COM Objects Using ATL
- Chapter 31. Creating ActiveX Controls Using ATL
- Chapter 32. Using ATL to Create MTS and COM+ Components
- Part VIII: Finishing Touches
- Chapter 33. Adding Windows Help
- Part IX: Appendix
Summary
There are many more things I would like to be able to tell you about automation servers and many more examples I would like to give you, but unfortunately, there is a limit to the size this chapter can be. Therefore, let's quickly recap what you've learned in this chapter and move on.
Active servers come in three flavors:
- A full server is an EXE that can run as both an application and an embedded server. (Optional support can be added for both automation and ActiveX controls.)
- The miniserver is an EXE that can be run in embedded mode only. (Optional support can be added for both automation and ActiveX controls.)
- The automation server (EXE or DLL) exposes classes with methods and properties to allow an external application to control it.
The embedded server can be activated in-place or out-of-place, depending on its implementation and eventual use. It can support persistent storage by serializing data to either the container's storage or a separate file. The server provides a mechanism to display its data on activation (by directly painting the server's view) and while inactive by providing the container with a metafile representation of its data.
The automation server can run in-process (meaning that it runs in the same process space as the application that created it) or out-of-process (meaning that it runs in its own process space).
Chapter 28. ActiveX Controls | Next Section

Account Sign In
View your cart