public void __Process()
        {
            // Assign one IecString to another
            IecStringEx.Copy(ref VALUE.s, ref RESULT1.s);

            // assign .Net String to an IecString
            switch (MESSAGE_ID)
            {
            case 0:
                RESULT2.s.Init("Nothing selected!");
                break;

            case 1:
                RESULT2.s.Init("The quick brown fox jumps over the lazy dog.");
                break;

            case 2:
                RESULT2.s.Init("The quick brown fox jumps over the lazy dog. The quick brown fox jumps over the lazy dog. The quick brown fox jumps over the lazy dog.");
                break;

            default:
                RESULT2.s.Init("Undefined message ID!");
                break;
            }
        }
        public void __Process()
        {
            unsafe
            {
                // Assign one IecString to another (assign string VALUE to string RESULT1)
                IecStringEx.Copy(ref *VALUE, ref *RESULT1);

                // assign .Net String to an IecString
                switch (MESSAGE_ID)
                {
                case 0:
                    RESULT2->Init("Nothing selected!");
                    break;

                case 1:
                    RESULT2->Init("The quick brown fox jumps over the lazy dog.");
                    break;

                case 2:
                    RESULT2->Init("The quick brown fox jumps over the lazy dog. The quick brown fox jumps over the lazy dog. The quick brown fox jumps over the lazy dog.");
                    break;

                default:
                    RESULT2->Init("Undefined message ID!");
                    break;
                }
            }
        }