To change the window title of another application:
Win32 API Function and Constant Definitions:
[DllImport("user32.dll", SetLastError = true, CharSet = CharSet.Auto)] public static extern bool SetWindowText(IntPtr hwnd, String lpString); [DllImport("user32.dll")] public static extern int SendMessage(IntPtr hwnd, int message, int wParam, IntPtr lParam); private const int WM_SETICON = 0x80; private const int ICON_SMALL = 0; private const int ICON_BIG = 1;
Using:
Process process = Process.Start("notepad"); // If you have just started a process and want to use its main window handle, // consider using the WaitForInputIdle method to allow the process to finish starting, // ensuring that the main window handle has been created. // Otherwise, an exception will be thrown. process.WaitForInputIdle(); SetWindowText(process.MainWindowHandle, "Hello!"); Icon icon = new Icon(@"C:\Icon\File\Path.ico"); SendMessage(process.MainWindowHandle, WM_SETICON, ICON_BIG, icon.Handle);
source share