title: Debugging/troubleshooting windows applications without source code
body: <p>A few days back I faced this problem at work and I was wondering is there a way to mint out more data from the scenario than to go to Microsoft. There has been many cases like this and I wanted to explore that as a windows developer what is the best / optimum way to fetch most of info is such case. I ll describe the situation:</p>
  <ol>
  <li><p>An office application, while printing with certain settings (involving cmyk color space) throws up a dialog box error which has a bad description.&quot;File %s could not be opened because it is locked by some other application&quot;. It does not give a file name nor does the event viewer. Printing is aborted.</p>
  </li>
  <li><p>on using <code>procmon</code>, we find &quot;file locked error&quot; on several files when the api <code>CreatefileMapping</code> is called by involved processes like the office app, the spooler, the splwow64.exe (yes its a 64 bit system and the app is 32 bit).</p>
  </li>
  <li><p>the problem is not there when there is no splwow64 is involved, means using 64 bit app on 64 bit os.</p>
  </li>
  </ol>
  <p>I want to know that which tools will be useful for getting more info in such situations. This includes use of MS symbols with windbg and debugging assembly if needed. Basically i need the file name that is locked , which is shown as %s and the root of the problem.</p>