title: Obtaining tab title/text using process ID
body: <p>I don't want to use <code>SetForegroundWindow()</code>, sending keyboard keys or similar techniques, because that can cause issues (unexpected behaviour) in my software.<br>
  I have tried to find the title using Cheat Engine program (but haven't found anything useful as Google Chrome seems to work "upside-down").<br>
  <br>
  So I went step ahead, using Process Hacker program I have realized that there is a parent (chrome.exe) process with a valid window handle to the current active tab and all other chrome processes are children of it a.k.a. background processes (with invalid window handle).<br>
  By browsing deeper into windows of chrome.exe (parent process), I have found the class name of the window handle being "Chrome_WidgetWin_1" and current active tab's title/text.<br>
  <br>
  <a href="http://i.stack.imgur.com/7jFsh.png" rel="nofollow">Here's</a> a picture of Google Chrome's Task Manager.<br>
  <br>
  I'm looking for a function in C# or C or C++ that will take an integer (process ID) and return a string (tab title/text).<br></p>
  
  <pre><code>static string GetChromeTabTitle(uint processId)
  {
      // Assuming I call this function with valid process identifier (PID).
      // What do I do next, here??
  }
  </code></pre>