I was brought onto a project to make a small change to a plugin, it should have only taken a few hours/half a day and then it would have been done.
After I figured out how everything worked, what they actually wanted me to change. I made the change and it was fairly straight forward but then it came to registering the plugin.
This plugin was registered on disk? It also used 3 other DLL’s.
After googling a bit, I found out that DLL’s have to be registered in the GAC. More googling and I found this could be done using the Visual Studio command line tool.
This is like the line I used
gacutil /i AssemblyFileName.dll
I managed to register the workflow plugin ok and then I had to rewrite the actual plugin interaction within CRM. I registered the DLL’s in the GAC. I then restarted IIS and stopped and started the CRM async service.
BUT…..
The original workflow file wasn’t using the new version, CRM still had a link to the old version.
What I found was we had to actually replace the dll file which was held
C:\Program Files\Microsoft Dynamics CRM\Server\bin\assembly
Even though I had unregistered the old workflow and then registered a new one but CRM was still linking to the old version.
When I registered the Workflow dll, I had copied it to the server but put in the temp folder and then registered it.
It was only once I deleted the workflow dll in
C:\Program Files\Microsoft Dynamics CRM\Server\bin\assembly
which I had to do by stopping IIS for a bit and then registered it from that directory.
This took a long time to figure out but I (with help from others) finally got to the bottom of it.
Like this:
Like Loading...