예제 #1
0
        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);
        }
예제 #2
0
        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();
            }
        }
예제 #3
0
        // 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);
        }
예제 #4
0
 public static extern int SendMessage(IntPtr wnd, int msg, int wP, ref DataStruct.DataStruct cds);