title: How do I use iFileDialog in a VC++ 2010 project converted from VC++ 6.0?
body: <p>I am able to use a FileSaveDialog (Common Item Dialog) in a VC++ 2010 app like this:</p>
  
  <pre><code>IFileDialog *pFileDialog;
  HRESULT hr = CoCreateInstance(CLSID_FileSaveDialog, NULL, CLSCTX_INPROC_SERVER, IID_PPV_ARGS(&amp;pFileDialog));    
  </code></pre>
  
  <p>but when I put this code into my project that has been converted from VC++ 6.0 to VC++ 2010 I get the following error: </p>
  
  <blockquote>
    <p>"error C2787: 'IFileDialog' : no GUID has been associated with this object"</p>
  </blockquote>
  
  <p>I also get a red squiggle under the <code>IID_PPV_ARGS</code> macro and the float-over error:</p>
  
  <blockquote>
    <p>"operand of _uuidof must have a class or enum type for which _declspec(uuid('...')) has been specified"</p>
  </blockquote>
  
  <p>I am NOT using the Common Language Runtime Support (/clr) in either project.</p>
  
  <p>How do I associate a GUID with my object?</p>