public static void Ch3ModifyDog2()
        {
            Ch3Dog dog    = new Ch3Dog();
            double dValue = 123;
            int    iValue = 123;

            if (Ch3Native.Ch3ModifyDog2(iValue, ref dValue, dog) == false)
            {
                throw new Exception("Ch3_ModifyDog test fail");
            }
        }
 public static extern bool Ch3ModifyDog1(int iValue, ref double dValue, Ch3Dog dogValue);
 public static extern bool Ch3ModifyDog2(int iValue, ref double dValue, [MarshalAs(UnmanagedType.Struct), In, Out] Ch3Dog dogValue);
 public static extern bool Ch3ModifyDog([MarshalAs(UnmanagedType.LPStruct), In, Out] Ch3Dog dog);