Using ILMerge for Plugin in CRM

If we make use of external assembly in our Plugin (sandboxed) we will get the exception of FileNotFound.

So here we can make use of ILMerge which basically merges the assembly referenced and the plugin into a single assembly.

Install the following NuGet Package.

This adds the following files in our Plugin project.

We need to set Copy Local as true for all our referenced assembly that we want to merge with our plugin.

We need to set Copy Local as false for all other assemblies that we do not want to be merged with plugin.

Just build the project and we are done.

The assembly inside Reflector: –

Hope it helps.


Author: Nishant Rana

I love working in and sharing everything about Microsoft.NET technology !

5 thoughts on “Using ILMerge for Plugin in CRM”

  1. Nice Article. Just curious to know, what if we set copy local as true for ‘Microsoft.Xrm.sdk’ dll as well against whats mentioned above. Does it affect my plugin execution in anyway?


  2. Hi, Nishant,

    I was using MSBuild.ILMerge.Task into our plugin projects, When i build the project i got the following error like

    Severity Code Description Project File Line Suppression State
    Error The command “mkdir “D:\HSINGH\TFS\CRM\DevUpgrade2015\Source\CCAS.CRM\CCAS.CRM.Plugins\bin\Debug\Merged” “D:\HSINGH\TFS\CRM\DevUpgrade2015\Source\CCAS.CRM\3rdPartyDLLs\ILMerge\ILMerge.exe” /log /lib=”D:\HSINGH\TFS\CRM\DevUpgrade2015\Source\CCAS.CRM\3rdPartyDLLs” /target=library /targetplatform=v4,”C:\Windows\Microsoft.NET\Framework64\v4.0.30319″ /keyfile=”D:\HSINGH\TFS\CRM\DevUpgrade2015\Source\CCAS.CRM\CCAS.CRM.Plugins\CCAS.CRM.Plugins.snk” /out=”D:\HSINGH\TFS\CRM\DevUpgrade2015\Source\CCAS.CRM\CCAS.CRM.Plugins\bin\Debug\Merged\CCAS.CRM.BDO.dll” “D:\HSINGH\TFS\CRM\DevUpgrade2015\Source\CCAS.CRM\CCAS.CRM.Plugins\bin\Debug\CCAS.CRM.BDO.dll” “D:\HSINGH\TFS\CRM\DevUpgrade2015\Source\CCAS.CRM\CCAS.CRM.Plugins\bin\Debug\CCAS.CRM.Plugins.dll” “D:\HSINGH\TFS\CRM\DevUpgrade2015\Source\CCAS.CRM\CCAS.CRM.Plugins\bin\Debug\CCAS.CRM.Logging.dll” “D:\HSINGH\TFS\CRM\DevUpgrade2015\Source\CCAS.CRM\CCAS.CRM.Plugins\bin\Debug\CCAS.CRM.WCF.BusinessLayer.dll” “D:\HSINGH\TFS\CRM\DevUpgrade2015\Source\CCAS.CRM\CCAS.CRM.Plugins\bin\Debug\CCAS.CRM.WCF.Common.dll” “D:\HSINGH\TFS\CRM\DevUpgrade2015\Source\CCAS.CRM\CCAS.CRM.Plugins\bin\Debug\CCAS.CRM.WCF.ServiceAgents.dll” “D:\HSINGH\TFS\CRM\DevUpgrade2015\Source\CCAS.CRM\CCAS.CRM.Plugins\bin\Debug\CCAS.CRM.WCF.ServiceContracts.dll” “D:\HSINGH\TFS\CRM\DevUpgrade2015\Source\CCAS.CRM\CCAS.CRM.Plugins\bin\Debug\CCAS.Security.dll”

    ” exited with code 1. CCAS.CRM.Plugins C:\Program Files (x86)\Microsoft Visual Studio\2017\Professional\MSBuild\15.0\Bin\Microsoft.Common.CurrentVersion.targets 5165

    What could be solution for this type of error?


Please share your thoughts

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

This site uses Akismet to reduce spam. Learn how your comment data is processed.