public unsafe bool GetValue(bool auto_expand, string value_name, out GLib.Win32RegistryValueType value_type, IntPtr value_data, out ulong value_data_size) { IntPtr native_value_name = GLib.Marshaller.StringToPtrGStrdup(value_name); int native_value_type; UIntPtr native_value_data_size; IntPtr error = IntPtr.Zero; bool raw_ret = g_win32_registry_key_get_value(Handle, auto_expand, native_value_name, out native_value_type, value_data, out native_value_data_size, out error); bool ret = raw_ret; GLib.Marshaller.Free(native_value_name); value_type = (GLib.Win32RegistryValueType)native_value_type; value_data_size = (ulong)native_value_data_size; if (error != IntPtr.Zero) { throw new GLib.GException(error); } return(ret); }
public unsafe bool GetValueType(out GLib.Win32RegistryValueType value_type) { IntPtr this_as_native = System.Runtime.InteropServices.Marshal.AllocHGlobal(System.Runtime.InteropServices.Marshal.SizeOf(this)); System.Runtime.InteropServices.Marshal.StructureToPtr(this, this_as_native, false); int native_value_type; IntPtr error = IntPtr.Zero; bool raw_ret = g_win32_registry_value_iter_get_value_type(this_as_native, out native_value_type, out error); bool ret = raw_ret; ReadNative(this_as_native, ref this); System.Runtime.InteropServices.Marshal.FreeHGlobal(this_as_native); value_type = (GLib.Win32RegistryValueType)native_value_type; if (error != IntPtr.Zero) { throw new GLib.GException(error); } return(ret); }