InstrumentStudio

cancel
Showing results for 
Search instead for 
Did you mean: 

Instrument Studio Fails to Start

Solved!
Go to solution

A problem with Instrument Studio has shown up on my computer recently. I have not made any changes since October of 2023. Everything was working find until about 2 weeks ago. Now Instrument Studio is not starting. It seems to be a .NET error. Any advise on how to fix this is appreciated.

 

Application: InstrumentStudio.exe
Framework Version: v4.0.30319
Description: The process was terminated due to an unhandled exception.
Exception Info: System.AccessViolationException
at NationalInstruments.InstrumentFramework.NIDmm.Internal.DmmNativeMethods.GetOpenSessionsInformation(System.String, System.Text.StringBuilder, UInt32, UInt32 ByRef)
at NationalInstruments.InstrumentFramework.MICapabilities.Common.Internal.MIDriverUtility..ctor(GetSessionInfoDelegate, System.String, QueryDriverForCxpChannelsDelegate)
at NationalInstruments.InstrumentFramework.NIDmm.DriverFactory..ctor()

Exception Info: System.Reflection.TargetInvocationException
at System.RuntimeMethodHandle.InvokeMethod(System.Object, System.Object[], System.Signature, Boolean)
at System.Reflection.RuntimeConstructorInfo.Invoke(System.Reflection.BindingFlags, System.Reflection.Binder, System.Object[], System.Globalization.CultureInfo)
at System.ComponentModel.Composition.ReflectionModel.ReflectionComposablePart.CreateInstance(System.Reflection.ConstructorInfo, System.Object[])
at System.ComponentModel.Composition.ReflectionModel.ReflectionComposablePart.GetInstanceActivatingIfNeeded()
at System.ComponentModel.Composition.ReflectionModel.ReflectionComposablePart.SetExportedValueForImport(System.ComponentModel.Composition.ReflectionModel.ImportingItem, System.ComponentModel.Composition.Primitives.ImportDefinition, System.Object)
at System.ComponentModel.Composition.ReflectionModel.ReflectionComposablePart.UseImportedValues[[System.__Canon, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089]](System.Collections.Generic.IEnumerable`1<System.__Canon>, System.Action`3<System.ComponentModel.Composition.ReflectionModel.ImportingItem,System.__Canon,System.Object>, Boolean)
at System.ComponentModel.Composition.ReflectionModel.ReflectionComposablePart.SetNonPrerequisiteImports()
at System.ComponentModel.Composition.ReflectionModel.ReflectionComposablePart.Activate()
at System.ComponentModel.Composition.Hosting.ImportEngine+PartManager.TryOnComposed()
at System.ComponentModel.Composition.Hosting.ImportEngine.TrySatisfyImportsStateMachine(PartManager, System.ComponentModel.Composition.Primitives.ComposablePart)
at System.ComponentModel.Composition.Hosting.ImportEngine.TrySatisfyImports(PartManager, System.ComponentModel.Composition.Primitives.ComposablePart, Boolean)
at System.ComponentModel.Composition.Hosting.ImportEngine.SatisfyImports(System.ComponentModel.Composition.Primitives.ComposablePart)
at System.ComponentModel.Composition.Hosting.CompositionServices.GetExportedValueFromComposedPart(System.ComponentModel.Composition.Hosting.ImportEngine, System.ComponentModel.Composition.Primitives.ComposablePart, System.ComponentModel.Composition.Primitives.ExportDefinition)
at System.ComponentModel.Composition.Hosting.CatalogExportProvider.GetExportedValue(CatalogPart, System.ComponentModel.Composition.Primitives.ExportDefinition, Boolean)
at System.ComponentModel.Composition.Primitives.Export.get_Value()
at NationalInstruments.Composition.FilteringExport.GetExportedValueCore()
at System.ComponentModel.Composition.Primitives.Export.get_Value()
at System.ComponentModel.Composition.ExportServices.GetCastedExportedValue[[System.__Canon, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089]](System.ComponentModel.Composition.Primitives.Export)
at System.Lazy`1[[System.__Canon, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089]].CreateValue()
at System.Lazy`1[[System.__Canon, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089]].LazyInitValue()
at System.Linq.Enumerable+WhereSelectArrayIterator`2[[System.__Canon, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089],[System.__Canon, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089]].MoveNext()
at System.Collections.Generic.List`1[[System.__Canon, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089]]..ctor(System.Collections.Generic.IEnumerable`1<System.__Canon>)
at System.Linq.Enumerable.ToList[[System.__Canon, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089]](System.Collections.Generic.IEnumerable`1<System.__Canon>)
at NationalInstruments.InstrumentFramework.Internal.UnifiedDeviceManagerSharedData.AddDriverFactoryAndDeviceManagerForSfp(NationalInstruments.SoftFrontPanel.Design.ISoftFrontPanel)
at NationalInstruments.InstrumentFramework.Internal.UnifiedDeviceManagerSharedData.Reset(NationalInstruments.SoftFrontPanel.Design.ISoftFrontPanelProvider, NationalInstruments.InstrumentFramework.IInstrumentManager, System.Collections.Generic.IEnumerable`1<System.Lazy`2<NationalInstruments.InstrumentFramework.IDriverFactory,NationalInstruments.InstrumentFramework.IDriverFactoryInformation>>)
at NationalInstruments.InstrumentFramework.UnifiedDeviceManager..ctor(NationalInstruments.SystemManagement.IDiscoveryManager, NationalInstruments.SystemManagement.IDiscoveryCatalog, NationalInstruments.SoftFrontPanel.Design.ISoftFrontPanelProvider, NationalInstruments.InstrumentFramework.IInstrumentManager, System.Collections.Generic.IEnumerable`1<System.Lazy`2<NationalInstruments.InstrumentFramework.IDriverFactory,NationalInstruments.InstrumentFramework.IDriverFactoryInformation>>)

Exception Info: System.Reflection.TargetInvocationException
at System.RuntimeMethodHandle.InvokeMethod(System.Object, System.Object[], System.Signature, Boolean)
at System.Reflection.RuntimeConstructorInfo.Invoke(System.Reflection.BindingFlags, System.Reflection.Binder, System.Object[], System.Globalization.CultureInfo)
at System.ComponentModel.Composition.ReflectionModel.ReflectionComposablePart.CreateInstance(System.Reflection.ConstructorInfo, System.Object[])
at System.ComponentModel.Composition.ReflectionModel.ReflectionComposablePart.GetInstanceActivatingIfNeeded()
at System.ComponentModel.Composition.ReflectionModel.ReflectionComposablePart.NotifyImportSatisfied()
at System.ComponentModel.Composition.ReflectionModel.ReflectionComposablePart.Activate()
at System.ComponentModel.Composition.Hosting.ImportEngine+PartManager.TryOnComposed()
at System.ComponentModel.Composition.Hosting.ImportEngine.TrySatisfyImportsStateMachine(PartManager, System.ComponentModel.Composition.Primitives.ComposablePart)
at System.ComponentModel.Composition.Hosting.ImportEngine.TrySatisfyImports(PartManager, System.ComponentModel.Composition.Primitives.ComposablePart, Boolean)
at System.ComponentModel.Composition.Hosting.ImportEngine.SatisfyImports(System.ComponentModel.Composition.Primitives.ComposablePart)
at System.ComponentModel.Composition.Hosting.CompositionServices.GetExportedValueFromComposedPart(System.ComponentModel.Composition.Hosting.ImportEngine, System.ComponentModel.Composition.Primitives.ComposablePart, System.ComponentModel.Composition.Primitives.ExportDefinition)
at System.ComponentModel.Composition.Hosting.CatalogExportProvider.GetExportedValue(CatalogPart, System.ComponentModel.Composition.Primitives.ExportDefinition, Boolean)
at System.ComponentModel.Composition.Primitives.Export.get_Value()
at NationalInstruments.Composition.FilteringExport.GetExportedValueCore()
at System.ComponentModel.Composition.Primitives.Export.get_Value()
at System.ComponentModel.Composition.ExportServices.GetCastedExportedValue[[System.__Canon, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089]](System.ComponentModel.Composition.Primitives.Export)
at System.ComponentModel.Composition.Hosting.ExportProvider.GetExportedValueCore[[System.__Canon, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089]](System.String, System.ComponentModel.Composition.Primitives.ImportCardinality)
at NationalInstruments.Composition.CompositionHost+ExportMemo.GetExportResult[[System.__Canon, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089]](Boolean)
at NationalInstruments.Composition.CompositionHost+ExportMemo.GetExportedValue[[System.__Canon, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089]]()
at NationalInstruments.InstrumentStudio.Internal.HardwareUsageTracker.StartTracking()
at NationalInstruments.InstrumentStudio.StandaloneApplicationFeatureSet.InitializeAndStartUsageTrackers()
at NationalInstruments.InstrumentStudio.StandaloneApplicationFeatureSet.InitializeApplication(NationalInstruments.Core.PlatformApplication)
at NationalInstruments.Shell.ShellApplication.SetupComposition(NationalInstruments.Composition.ICompositionHost, NationalInstruments.Core.IApplicationFeatureSet)
at NationalInstruments.Shell.ShellApplication.CreateHost(NationalInstruments.Core.IApplicationFeatureSet)
at NationalInstruments.Shell.ShellApplication+<OnStartupAsync>d__78.MoveNext()
at System.Threading.ExecutionContext.RunInternal(System.Threading.ExecutionContext, System.Threading.ContextCallback, System.Object, Boolean)
at System.Threading.ExecutionContext.Run(System.Threading.ExecutionContext, System.Threading.ContextCallback, System.Object, Boolean)
at System.Runtime.CompilerServices.AsyncMethodBuilderCore+MoveNextRunner.Run()
at System.Windows.Threading.ExceptionWrapper.InternalRealCall(System.Delegate, System.Object, Int32)
at System.Windows.Threading.ExceptionWrapper.TryCatchWhen(System.Object, System.Delegate, System.Object, Int32, System.Delegate)
at System.Windows.Threading.DispatcherOperation.InvokeImpl()
at MS.Internal.CulturePreservingExecutionContext.CallbackWrapper(System.Object)
at System.Threading.ExecutionContext.RunInternal(System.Threading.ExecutionContext, System.Threading.ContextCallback, System.Object, Boolean)
at System.Threading.ExecutionContext.Run(System.Threading.ExecutionContext, System.Threading.ContextCallback, System.Object, Boolean)
at System.Threading.ExecutionContext.Run(System.Threading.ExecutionContext, System.Threading.ContextCallback, System.Object)
at MS.Internal.CulturePreservingExecutionContext.Run(MS.Internal.CulturePreservingExecutionContext, System.Threading.ContextCallback, System.Object)
at System.Windows.Threading.DispatcherOperation.Invoke()
at System.Windows.Threading.Dispatcher.ProcessQueue()
at System.Windows.Threading.Dispatcher.WndProcHook(IntPtr, Int32, IntPtr, IntPtr, Boolean ByRef)
at MS.Win32.HwndWrapper.WndProc(IntPtr, Int32, IntPtr, IntPtr, Boolean ByRef)
at MS.Win32.HwndSubclass.DispatcherCallbackOperation(System.Object)
at System.Windows.Threading.ExceptionWrapper.InternalRealCall(System.Delegate, System.Object, Int32)
at System.Windows.Threading.ExceptionWrapper.TryCatchWhen(System.Object, System.Delegate, System.Object, Int32, System.Delegate)
at System.Windows.Threading.Dispatcher.LegacyInvokeImpl(System.Windows.Threading.DispatcherPriority, System.TimeSpan, System.Delegate, System.Object, Int32)
at MS.Win32.HwndSubclass.SubclassWndProc(IntPtr, Int32, IntPtr, IntPtr)
at MS.Win32.UnsafeNativeMethods.DispatchMessage(System.Windows.Interop.MSG ByRef)
at System.Windows.Threading.Dispatcher.PushFrameImpl(System.Windows.Threading.DispatcherFrame)
at System.Windows.Application.RunDispatcher(System.Object)
at System.Windows.Application.RunInternal(System.Windows.Window)
at NationalInstruments.Shell.ShellApplication.RunInitialApplicationCore(NationalInstruments.Core.CommandLineArguments, NationalInstruments.Shell.StartupInfo)
at NationalInstruments.Shell.ShellApplication.RunWith(NationalInstruments.Shell.StartupInfo, System.String)
at NationalInstruments.InstrumentStudio.App.Main()

 

Message 1 of 11
(3,933 Views)

Hi,

 

We are experiencing a similar issue with our NI installation after updating .Net on our Windows 10 PC.  Both instrument studio and the hardware configuration manager fail to start.


Faulting application name: InstrumentStudio.exe, version: 23.8.0.49931, time stamp: 0x64e81669
Faulting module name: hmpalert.dll, version: 3.9.3.774, time stamp: 0x6571e12e
Exception code: 0xc0000409
Fault offset: 0x00000000000a6bed
Faulting process id: 0x2174
Faulting application start time: 0x01da63d7fa20da0a
Faulting application path: C:\Program Files\National Instruments\InstrumentStudio\InstrumentStudio.exe
Faulting module path: C:\Windows\system32\hmpalert.dll

Message 2 of 11
(3,854 Views)

Hi - have either of you managed to resolve these issues?  Not sure it's completely the same but have had issues with niroco.exe  which can have faulting module hmpalert.dll or ntldll.dll

 

Similarly had never had any problems until three weeks ago. 

Have uninstalled all NI software and even reimaged entire PC but still no luck.

 

 

Message 3 of 11
(3,557 Views)

It was anti-virus software blocking it. It thought it was acting like zero-day exploit.

0 Kudos
Message 4 of 11
(3,487 Views)

Yes, this problem is due to endpoint protection in general not liking what NI is doing.  Several endpoint protection software suites will block NI apps and NOT even add it to the event log.  I attached a debugger and was able to confirm that this is because the NI app crashes (attempts to write to protected memory), it is not blocked directly by the endpoint protection.  NI will not guarantee that their software will work with any anti-virus and most large companies will not (understandably) let you connect a machine to their systems without some sort of endpoint defense.  This is impossibly short sighted on NI's part.

Message 5 of 11
(3,452 Views)

Thank you both very much for the replies.  We tried completely disabling the anti-virus last week but unfortunately for us the error still persists.  Will continue working through the problem...

0 Kudos
Message 6 of 11
(3,436 Views)

I had initially tried disabling the anti-virus, but that didn't fix anything for me either.  I had to completely remove it and all its components from the machine, which is very difficult to do and cause a bit of a firestorm (big company IT).  I ended up buying a non-managed machine to run NI instruments.  This is not appreciated by IP sec folks... So, good luck!

0 Kudos
Message 7 of 11
(3,416 Views)

I would encourage this thread turn into one or more Technical Support requests: Technical Support - NI.

 

We will need to figure out root cause here through a closer technical investigation. For instance, is a memory access violation triggering security software or is security software causing an application closure that's showing up as a memory access violation or did a .NET update go through that's exacerbating both applications?

 

Thanks!

Ryan F

0 Kudos
Message 8 of 11
(3,404 Views)

The same thing happened with us. We installed a new hard drive on a PC and did a fresh installation of Windows. After that, we installed InstrumentStudio and successfully tested it. We then installed all Windows updates and Office. However, InstrumentStudio still worked fine.

The problem arose when we installed Sophos (Antivirus program). InstrumentStudio stopped working suddenly. We then completely disabled Sophos without uninstalling it, but InstrumentStudio remained non-functional. It was only after uninstalling Sophos that InstrumentStudio started working again.

0 Kudos
Message 9 of 11
(3,398 Views)
Solution
Accepted by hanlon837

Our protection was still blocking it even when turned everything off. There are parts of Sopohs that are still on even if everything looks like it's off. How we fixed the issue for Sophos.

1. Disable tamper protection in Sophos and stop the Hitmanpro service.

2. Attempt to launch the application.  If the program starts it is the hitman service causing the problem.

3. Enable the hitman service and launch again

4. When blocked, go to the hitman logs at C:\ProgramData\HitmanPro.Alert\Logs and view what process is getting blocked.

5. In our case Instrument Studio, Add a global exclusion for "Exploit Mitigation" in Sophos for the following executable:

C:\Program Files\National Instruments\InstrumentStudio\InstrumentStudio.exe

6. Complain to NI that their software should work with endpoint protection.

 

Credit to our IT team for solving this. 

0 Kudos
Message 10 of 11
(3,391 Views)