title: Get list of all runing processes (with processName+ProcessPath+ProcessTitle)
body: <p>what i'am trying to do:<br><br>
  get list of all runing processes with: <code>processName</code>(without <code>.exe</code>) <code>ProcessFullFilePath</code> <code>ProcessMainWindowTitle</code> something like:
  <br></p>
  
  <pre><code>process1 c:\p1.exe TheprocessTitle
  ..............
  </code></pre>
  
  <p><br><Br>
  <strong>Very important:</strong>
  i need working code that will not make any exception(<code>try catch</code>)
  <br>
  <br><br><br><br>
  My Code:
  <br>
  i used <code>TLHelp32</code> to get list of the names:
  <br></p>
  
  <pre><code>var handler: THandle;
      data: TProcessEntry32;
  
    function GetName: string;
    var i:byte;
    begin
       Result := '';
       i := 0;
       while data.szExeFile[i] &lt;&gt; '' do
       begin
          Result := Result + data.szExeFile[i];
          Inc(i);
       end;
     end;
  begin
      Application.ShowMainForm := False;
      handler := CreateToolhelp32Snapshot(TH32CS_SNAPALL, 0);
    if Process32First(handler, data) then
    begin
     ShowMessage(GetName());
      while Process32Next(handler, data) do
         ShowMessage(GetName());
     end;
  </code></pre>
  
  <p><br>
  <br>
  it's not enough,
  <strong>i need: name path title</strong> </p>