Plug-in Development
![]() |
[Applies to: Microsoft Dynamics CRM 4.0]
Find the latest SDK documentation: CRM 2015 SDK
A plug-in is custom business logic that you can integrate with Microsoft Dynamics CRM 4.0 to modify or augment the standard behavior of the platform. Another way to think about plug-ins is that they are extension points made available by the Microsoft Dynamics CRM platform. You can subscribe a plug-in to a published set of events to have your code run when the event occurs. As part of the subscription, you must specify an event handler. The event handler is a segment of code that runs in response to the platform event that is fired. Your event handler must implement the IPlugin interface.
The plug-in model supports both pre-events and post-events. Pre-event plug-ins are run before a core system operation occurs; post-event plug-ins are run after a core system operation has been completed. There can be any number of pre-event plug-ins or post-event plug-ins registered for a given entity.
Because of their very nature, plug-in assemblies must be readable by everyone in order to work correctly when registered in the Microsoft Dynamics CRM system. Therefore it is a security best practice not to develop plug-in code which contains any system logon information, confidential information, or company trade secrets.
For more information about plug-in run-time execution, refer to the Event Execution Pipeline section of this document.
In this Section
Quickstart Guide to Plug-in Development
Provides a quick introduction to writing, deploying, and debugging a plug-in.
Provides information about registering plug-ins with the Event Execution Pipeline.
Writing the Plug-in Constructor
Provides information about how to pass custom data to a plug-in's constructor.
Provides information about how to pass custom data between registered plug-ins at runtime.
Using Dynamic Entity in Plug-ins
Describes why you should use the DynamicEntity class in plug-ins.
Describes the different kinds of information passed to a plug-in at run-time.
Provides an overview about how to develop a plug-in for offline execution.
Describes how your plug-in can execute business logic (code) on behalf of a Microsoft Dynamics CRM system user.
Describes how to handle exceptions in plug-ins.
Logging and Tracing in Plug-ins
Describes how to enable error logging and tracing to help in debugging a plug-in at run-time.
Related Sections
Provides information about event notification and event handling at run time.
Web Service Authentication and Impersonation
Provides information about using impersonation when accessing the Web services.
Programming reference for the IPlugin interface.
List of Samples in the SDK Download
Describes the complete plug-in samples available in the SDK download.
.gif)