1. using System;
  2. using System.Collections.Generic;
  3. using System.Diagnostics;
  4. using System.Linq;
  5. using System.Runtime.InteropServices;
  6. using System.Text;
  7. using System.Text.RegularExpressions;
  8. using System.Threading;
  9. using System.Threading.Tasks;
  10. namespace OutlookPositioning
  11. {
  12. class Program
  13. {
  14. [DllImport("user32.dll", SetLastError = true)]
  15. internal static extern bool MoveWindow(IntPtr hWnd, int X, int Y, int nWidth, int nHeight, bool bRepaint);
  16. static Process outlook_calendar = new Process
  17. {
  18. StartInfo =
  19. {
  20. FileName = @"C:\Program Files (x86)\Microsoft Office\root\Office16\outlook.exe",
  21. Arguments = "/select outlook:Calendar",
  22. WindowStyle = ProcessWindowStyle.Normal
  23. }
  24. };
  25. static Process outlook_inbox = new Process
  26. {
  27. StartInfo =
  28. {
  29. FileName = @"C:\Program Files (x86)\Microsoft Office\root\Office16\outlook.exe",
  30. Arguments = "/select outlook:Inbox",
  31. WindowStyle = ProcessWindowStyle.Normal
  32. }
  33. };
  34. static void Main(string[] args)
  35. {
  36. // calendar
  37. outlook_calendar.Start();
  38. Thread.Sleep(20000);
  39. IntPtr calendar_id = outlook_calendar.MainWindowHandle;
  40. Console.WriteLine("Calendar ID: {0}", calendar_id);
  41. Program.MoveWindow(outlook_calendar.MainWindowHandle, 0, 0, 1920, 540, true);
  42. // inbox
  43. outlook_inbox.Start();
  44. //Thread.Sleep(20000);
  45. IntPtr inbox_id = outlook_calendar.MainWindowHandle;
  46. Console.WriteLine("Inbox ID: {0}", inbox_id);
  47. Program.MoveWindow(outlook_inbox.MainWindowHandle, 0, 540, 1920, 540, true);
  48. Console.ReadKey();
  49. }
  50. }
  51. }