SDL Tridion Principal Consultant, Mihai Cadariu outlined a use case for capturing user time stamp information and provided insight into approaches as well as sample code. I was able to replicate his setup and make my first (copy of someone else’s) event system. This type of setup might be old for you, but what impressed me compared to my R5.3 days was how easy it was to Google parts I wasn’t sure on.
My Event System setup questions and answers:
- Which physical dlls do I need and what namespaces do I use? Robert Curlette explains %TRIDION_HOME%\bin\client will have the Tridion.Common, Tridion.ContentManager, and Tridion.Logging dlls. Â
- What’s the configuration file and corresponding change? Julian Wraith makes it easy by posting an example showing what goes inside the node within the Tridion.ContentManager.config. Â
- I wasn’t thinking about it until I saw Andrey’s post again, but would I need to pass some kind of credentials? Answer: no, not for AppData. Oops, I’ve warned Forum users to always expect credentials; I’ve missed this exception to the rule. I’ll save it to surprise @puf or @DominicCronin someday.
- What process do I attach to for debugging even system code? (update: didn’t find it on my first try, but followed Mihai’s event system debugging tips and was able to set a breakpoint by attaching to “dllhst3g.exe”)
I know I should still RTM, but the ease at finding this information means you’re free to share snippets and event system examples without needing to explain the setup over and over again. No need to dive into the deep details when you’re looking to share an approach, idea, or sample code (at least for the Event System). The manual, intellisense, and the object browser provide code explanations, but your experience and approach helps provide much needed (SEO-friendly) context.
Finally, here are the imports I wasn’t sure on and a screenshot. Thanks, Mihai!
using System; using System.Diagnostics; using Tridion.ContentManager; using Tridion.ContentManager.Extensibility.Events; using Tridion.ContentManager.Extensibility; using Tridion.ContentManager.Security; using Tridion.Logging; namespace YATB {
Tridion Content Manager Explorer (CME) background + the right API + a little help with setup and wiring and it’s easy to get started with extensions, no problem. Thanks all for making it this easy.
Good post, Alvin.
I went ahead and clarified your question about debugging the event system: http://yatb.mitza.net/2012/03/debugging-tridion-2011-event-system.html
It’s not a complete list, but it’s a good starting point. I plan to update this as I find more information about it.
Thanks, Mihai. Process Explorer’s “find DLL” feature didn’t seem to show what was using the compiled event system dll. But I was able to get a break point on dllhst3g.exe at least for this example.
Very useful tool: http://technet.microsoft.com/en-us/sysinternals/bb896653.
dllhost3g.exe is a very sneaky process 😉 It gets recycled every now and then (based on the settings of the COM+ application), so you might not see it at all, if you didn’t access the CME for a while…