public unsafe byte[] Read(long targetAddress, int size) { if (HasValidHandle()) { byte[] buffer = new byte[size]; fixed(byte *p = buffer) { IntPtr ptr = (IntPtr)p; info_t operation = new info_t { pid = ProcessID.Id, address = (IntPtr)targetAddress, value = ptr, size = size }; IntPtr operationPointer = (IntPtr)(&operation); bool result = DeviceIoControl(h_driver, ctl_read, operationPointer, Marshal.SizeOf <info_t>(), IntPtr.Zero, 0, IntPtr.Zero, IntPtr.Zero); return(buffer); } } return(default);
public extern static herr_t get_info_by_name (hid_t loc_id, string obj_name, string attr_name, ref info_t ainfo, hid_t lapl_id = H5P.DEFAULT);
public extern static herr_t get_info_by_idx (hid_t loc_id, string obj_name, H5.index_t idx_type, H5.iter_order_t order, hsize_t n, ref info_t ainfo, hid_t lapl_id = H5P.DEFAULT);
public extern static herr_t get_info(hid_t attr_id, ref info_t ainfo);
public extern static herr_t get_info_by_name (hid_t loc_id, byte[] name, ref info_t oinfo, hid_t lapl_id = H5P.DEFAULT);
public extern static herr_t get_info(hid_t loc_id, ref info_t oinfo);
public extern static herr_t get_info_by_name (hid_t loc_id, string name, ref info_t ginfo, hid_t lapl_id = H5P.DEFAULT);
public extern static herr_t get_info_by_idx (hid_t loc_id, string group_name, H5.index_t idx_type, H5.iter_order_t order, hsize_t n, ref info_t ginfo, hid_t lapl_id = H5P.DEFAULT);
public extern static herr_t get_info (hid_t loc_id, ref info_t ginfo);
public extern static herr_t get_info (hid_t loc_id, string name, ref info_t linfo, hid_t lapl_id = H5P.DEFAULT);