IntPtr WndProc(IntPtr hwnd, int msg, IntPtr wParam, IntPtr lParam, ref bool handled) { if (msg == MessageHelper.MessageHelper.WM_COPYDATA) { DataStruct.DataStruct cds = (DataStruct.DataStruct)System.Runtime.InteropServices.Marshal.PtrToStructure(lParam, typeof(DataStruct.DataStruct)); txtShow.Text = cds.lpData; } return(hwnd); }
public static void WriteDataStructInConsole(this DataStruct.DataStruct dataStruct) { Console.Write($"{dataStruct.Size.I} "); Console.Write($"{dataStruct.Size.J} "); Console.WriteLine(); Console.WriteLine(); for (int i = 0; i < dataStruct.Size.J; i++) { for (int j = 0; j < dataStruct.Size.I; j++) { Console.Write($"{dataStruct.Matrix[i * dataStruct.Size.I + j]} "); } Console.WriteLine(); } }
// ReSharper disable once UnusedTypeParameter public static bool FromFile <T>(string fileName, out DataStruct.DataStruct dataStruct) { dataStruct = new DataStruct.DataStruct(); if (File.Exists(fileName)) { using (BinaryReader br = new BinaryReader(File.Open(fileName, FileMode.Open))) { dataStruct.Size.I = br.ReadInt32(); dataStruct.Size.J = br.ReadInt32(); while (br.BaseStream.Position != br.BaseStream.Length) { dataStruct.Matrix.Add(br.ReadDouble()); } } return(true); } return(false); }
public static extern int SendMessage(IntPtr wnd, int msg, int wP, ref DataStruct.DataStruct cds);