Technical FAQs

Ask a Question

Unity Pro How to solve problem with DTM which cause DTM catalog update failure or DTM failure

Description of the problem:

Some "old generation" DTM, cannot be executed in Unity Pro V11.1 (and later)

Symptoms may be :

  • update catalog fails
  • or DTM cannot be open
     

DTMs (non exhaustive list) :

  • Endress & Hauser Promag 100
  • Rosemount 8712E Magnetic Flowmeter Rev 3
  • Rosemount_644_Temperature_Transmitter_8_HART_000026_0018_8_DD1_4_181_4_DTM
  • Rosemount_2051_Pressure_Transmitter_10_HART_000026_2655_A_DD1_4_173_3_DTM
  • Rosemount_8712E_3_HART_000026_0057_3_DD1_4_173_2_DTM
  • ....

Root cause

Unity Pro V11.1(and later)  is compiled with Visual Studio 2012 and enables by default
Microsoftc Windows protection called DEP (stands for Data Execution Prevention).
DEP ensure a better protection against malicious codes attacks.
Previous versions of Unity Pro were compiled with Visual Studio 2008 that does not support DEP.

Here is a short explanation of DEP:
"The primary benefit of DEP is to help prevent code execution from data pages. Typically, code is not executed from the default heap and the stack. Hardware-enforced DEP detects
code that is running from these locations and raises an exception when execution occurs. Software-enforced DEP can help prevent malicious code from taking advantage of exceptionhandling
mechanisms in Windows"

For more information see

https://support.microsoft.com/en-us/kb/875352#bookmark-6

Some “old generation” DTMs generated years ago, are not compatible with DEP.  When Unity Pro loads it, Windows detects a risk in regards to DEP and throws an error.

Solution

Old generations DTM should be updated by manufacturer to comply with Microsoft DEP protection.

Alternative solution

DEP protection can be disabled Unity Pro.

Procedure :

  • Close all Unity pro instances.
  • Copy and Unzip attached file : Unity_DEPDeactivate.zip to the Unity pro install directory
     -  Usually in : C:\Program Files (x86)\Schneider Electric\Unity Pro\
  • Right click on file UnityDEPDeactivate.cmd
  • Execute as Administrator
  • Accept the security message
     
  • If okay, you should see:
Was this helpful?
What can we do to improve the information ?