Quantcast
Channel: NI TestStand topics
Viewing all articles
Browse latest Browse all 6524

Release a SequenceFile in C#

$
0
0


I am creating a TestStand sequence file and sequences in C#.
After I released the sequence file and shut down the engine I get a warning:
'References to PropertyObjects were not released properly.' The complete warning is attached at the end of the message.

My code is about this:

MyEngine = new EngineClass();
MyEngine.LoadTypePaletteFilesEx(TypeConflictHandlerTypes.ConflictHandler_Error, 0);
SequenceFile TS_SequenceLib MyEngine.GetSequenceFileEx(libfilepath, 0, TypeConflictHandlerTypes.ConflictHandler_Error);
//create a new sequence file
SequenceFile seqFile = MyEngine.NewSequenceFile();
//create and insert some sequences and save the sequence file
seqFile.Save(path);

After finshed inserting the sequences I release both sequence files
seqFile.UnloadModules();
MyEngine.ReleaseSequenceFileEx(seqFile);
System.Runtime.InteropServices.Marshal.FinalReleaseComObject(seqFile);
seqFile = null;

I do the same with the other sequencefile TS_SequenceLib and shut down the engine:
MyEngine.UnloadTypePaletteFiles();
MyEngine.UnloadAllModules();
MyEngine.ShutDown(true);               
System.Runtime.InteropServices.Marshal.FinalReleaseComObject(MyEngine);
MyEngine = null;

I tried to iterate through the sequences of each sequence file and remove and release each sequence but it didn't help.

How shoud I release the sequence files, the sequences and the other objects properly to get rid of the warning?


Here is the entire warning:
References to PropertyObjects were not released properly.
    Total number of objects: 44310
    Number of top-level objects: 248

    Note: Some top-level objects may be included if they are referenced by
    an incorrectly released top-level object. For example, an unreleased
    SequenceContext object references a SequenceFile object.

    The following top-level objects were not released:

        Sequences [62 object(s) not released]
            Sequence #1:
                Name: XXXXX_Output_Sensory

            Sequence #2:
                Name: MainSequence

            Sequence #3:
                Name: XXXXX_Output_Diagnostic

            Sequence #4:
                Name: MainSequence

            Sequence #5:
                Name: XXXXX_Output_Optic

            Sequence #6:
                Name: MainSequence

            Sequence #7:
                Name: XXXXX_Output_Acoustic

            Sequence #8:
                Name: MainSequence

            Sequence #9:
                Name: XXXXX_Copy_of_Output_CAN_missing_message

            Sequence #10:
                Name: MainSequence

            Sequence #11:
                Name: XXXXX_Output_CAN_complete

            Sequence #12:
                Name: MainSequence

            Sequence #13:
                Name: XXXXX_Input_Sensory

            Sequence #14:
                Name: MainSequence

            Sequence #15:
                Name: XXXXX_Input_Diagnostic

            Sequence #16:
                Name: MainSequence

            Sequence #17:
                Name: XXXXX_Input_Haptic_external

            Sequence #18:
                Name: MainSequence

            Sequence #19:
                Name: XXXXX_Input_Acoustic

            Sequence #20:
                Name: MainSequence

            Sequence #21:
                Name: XXXXX_Input_CAN_missing_message

            Sequence #22:
                Name: MainSequence

            Sequence #23:
                Name: XXXXX_Input_CAN_complete

            Sequence #24:
                Name: MainSequence

            Sequence #25:
                Name: XXXXX_Input_CCC

            Sequence #26:
                Name: MainSequence

            Sequence #27:
                Name: XXXXX_FlowControl_Ramp_IncrementByTime

            Sequence #28:
                Name: MainSequence

            Sequence #29:
                Name: XXXXX_FlowControl_Ramp_IncrementBy1

            Sequence #30:
                Name: MainSequence

            Sequence #31:
                Name: XXXXX_FlowControl_Loop_TimeControlled

            Sequence #32:
                Name: MainSequence

            Sequence #33:
                Name: XXXXX_FlowControl_Loop_Cycles

            Sequence #34:
                Name: MainSequence

            Sequence #35:
                Name: Par0_thread3

            Sequence #36:
                Name: Par0_thread2

            Sequence #37:
                Name: Par0_thread1

            Sequence #38:
                Name: Par0_thread0

            Sequence #39:
                Name: XXXXX_FlowControl_Parallel

            Sequence #40:
                Name: MainSequence

            Sequence #41:
                Name: XXXXX_FlowControl_TimeRequirement_WaitAtleast

            Sequence #42:
                Name: MainSequence

            Sequence #43:
                Name: XXXXX_FlowControl_TimeRequirement_WaitExactly

            Sequence #44:
                Name: MainSequence

            Sequence #45:
                Name: XXXXX_FlowControl_TimeRequirement_Within

            Sequence #46:
                Name: MainSequence

            Sequence #47:
                Name: MainSequence

            Sequence #48:
                Name: Flow_Wait

            Sequence #49:
                Name: Act_HapticIn

            Sequence #50:
                Name: Act_ReactionOut

            Sequence #51:
                Name: Act_SensoryOut

            Sequence #52:
                Name: Act_DiagnosticOut

            Sequence #53:
                Name: Act_OpticOut

            Sequence #54:
                Name: Act_AcousticOut

            Sequence #55:
                Name: Act_SensoryIn

            Sequence #56:
                Name: Act_DiagnosticIn

            Sequence #57:
                Name: Act_AcousticIn

            Sequence #58:
                Name: Act_CCCIn

            Sequence #59:
                Name: Act_CANOut

            Sequence #60:
                Name: Flow_Parallel

            Sequence #61:
                Name: Act_CANIn

            Sequence #62:
                Name: MainSequence


        Type Definitions [44 object(s) not released]
            Type Definition #1:
                Name: OpenModelManager

            Type Definition #2:
                Name: AdditionalResults

            Type Definition #3:
                Name: Goto

            Type Definition #4:
                Name: Label

            Type Definition #5:
                Name: Statement

            Type Definition #6:
                Name: SequenceCall

            Type Definition #7:
                Name: NI_Wait

            Type Definition #8:
                Name: NI_Flow_End

 ...
        Note: More objects were not released, but not listed.


Viewing all articles
Browse latest Browse all 6524

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>