示例#1
0
        public object MarshalNativeToManaged(IntPtr pNativeData)
        {
            if (pNativeData == IntPtr.Zero)
            {
                return(null);
            }

            var @string = MpvMarshal.GetManagedUTF8StringFromPtr(pNativeData);

            return(@string);
        }
        public IntPtr MarshalManagedToNative(object managedObj)
        {
            if (!(managedObj is string @string))
            {
                return(IntPtr.Zero);
            }

            var stringPtr = MpvMarshal.GetComPtrFromManagedUTF8String(@string);

            return(stringPtr);
        }
示例#3
0
        public IntPtr MarshalManagedToNative(object managedObj)
        {
            var @string = managedObj as string;

            if (@string == null)
            {
                return(IntPtr.Zero);
            }

            var stringPtr = MpvMarshal.GetComPtrFromManagedUTF8String(@string);

            return(stringPtr);
        }