title: How do I programatically check if Visio is installed, and where?
body: <p>I am building a C# application that exports a CSV file to be used with the Visio org chart wizard.</p>
  
  <p>How can I check that an installation of Visio exists, and what path?</p>
  
  <p>The most obvious method is checking if <code>C:\Program Files\Office12\ORGWIZ.EXE</code> exists, but that is fairly dependant on having Visio 2007 installed..</p>
  
  <p>My other thought is checking the registry, but what is the most reliable source? I've looked under <code>HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Office\</code> where there are version numbers, but underneath them is a <code>Visio\InstallRoot</code> which would be perfect except for checking each versions..</p>
  
  <p>I read elsewhere that I could check Uninstall information under <code>Software\Microsoft\Windows\CurrentVersion\Uninstall\</code>, but that looks fairly complicated for Windows components...</p>