title: Windows shortcut (.lnk) parser in Java?
body: <p>I'm currently using <code>Win32ShellFolderManager2</code> and <code>ShellFolder.getLinkLocation</code> to resolve windows shortcuts in Java. Unfortunately, if the Java program is running as a service under Vista, <code>getLinkLocation</code>, this does not work. Specifically, I get an exception stating "Could not get shell folder ID list".</p>
  
  <p>Searching the web does turn up mentions of this error message, but always in connection with <code>JFileChooser</code>. I'm not using <code>JFileChooser</code>, I just need to resolve a <code>.lnk</code> file to its destination.</p>
  
  <p>Does anyone know of a 3rd-party parser for <code>.lnk</code> files written in Java I could use?</p>
  
  <p>I've since found unofficial documentation for the .lnk format <a href="http://mediasrv.ns.ac.yu/extra/fileformat/windows/lnk/shortcut.pdf" rel="noreferrer">here</a>, but I'd rather not have to do the work if anyone has done it before, since the format is rather scary.</p>