One of the questions that often comes up during Handlers classes or in the community.inin.com forum is, “Can I run a diff between my existing handler(s) and the ones included in a Service Update?” The answer is yes, and the functionality has been available for several years (my sympathy to those who are now grinding their teeth in chagrin). Currently you will need to enable the Interaction Designer Power Tools per the instructions found in the Interaction Designer Power Tools Technical Reference (found in the IC Documentation Library, either on you IC Server or on the Support web site). In IC 4.0 the Power Tools are enabled by default.
Here are the basic steps from the technical reference:
Check your .NET version
1. From the Start menu, click Control Panel.
2. After the Control Panel opens, double-click Add or Remove Programs.
3. When that window appears, scroll through the list of applications. If you see Microsoft .NET Framework 2.0 listed, the supported version is already installed and you do not need to install it again.
Register the ININ.Tools.DesignerCustomizations.DLL
1. Locate the file ININ.Tools.DesignerCustomizations.dll. It will be in the folder where the Interaction Designer executable file (ida.exe) is installed.
2. Open a command window and change to the I3ICServer directory (assuming you are on the server where Interaction Designer is installed).
3. Run the following command, replacing X with the appropriate drive letter:
X:I3ICServer> %windir%Microsoft.NetFrameworkv2.0.50727regasm ININ.Tools.DesignerCustomizations.DLL /codebase
1. Close the command window, and then navigate to the I3ICServer folder.
2. Use Notepad to open the file DesignerRegisteredTools.lst and add this line to the end of the list:
ANSI RELEASE PROGID ININ.Tools.DesignerCustomizations.ToolsetAddon
Restart Interaction Designer
Note: You will need to re-enable the Power Tools after applying an SU, as the SU will overwrite the customized DesignerRegisteredTools.lst file.
Once you restart Interaction Designer, the SOAP Wizard and Power Tools menus appear under the Utilities menu:
As you can see, there are two new menu choices – SOAP Wizards and Power Tools. For more information on all the available functionality, read through the technical reference document. This posting is just going to deal with the Handler Diff option on the Power Tools menu:
When you click on Handler Diff, you will see a dialog similar to the one below:
To make things easier on myself, I create a folder under I3ICHandlers named “OldHandlers” and put the previous handlers I want to diff in it. That is so I can easily configure the path under “Old” Handler List.
The “New” Handler List should be pointed at I3ICHandlers30Handlers (presuming IC 3.0).
Once you have the paths defined for the handler lists, you should see a list of all the .ihd handler files in each folder. Click on the “Check only handlers that are checked in the ‘Old’ list” button in the “New” Handler List section to narrow the list of handlers to be examined.
On the Output Location tab click the “Pick output XML file” button and browse to the folder where you want to save the output. I usually choose I3ICHandlers.
You probably won’t change anything on the Output Formatting tab, unless you want to write your own .xsl style sheet to display the results.
When you have finished with the settings, click the “Run Handler Diff” button. The results will display in your default browser.
You can click on the links under Changed: to see changes in specific handlers. In this example, only two of the selected handlers actually changed between IC 3.0 SU9 and SU10.
Clicking on the link for intattacdaudio_audio.ihd populates the right-hand window with the diff results.
The first section gives an overview:
Scrolling down gives more detail. For example, Step 224 had some Exit Path changes:
Step 228 had some settings changed:
There is a lot more information in the handler diff that I ran, but not enough room to cover it all. Hopefully the examples are enough to give you a sense of the possibilities.
I hope this post helps the next time you need to find the specific changes between different versions of the same handler!
Master Training Consultant