title: What DLLs do I #import when using DirectShow or other COM libraries in C++?
body: <p>I am trying to use <a href="https://msdn.microsoft.com/en-us/library/h31ekh7e.aspx" rel="nofollow noreferrer" title="MSDN - Compiler COM Support">Compiler COM Support</a> when calling DirectShow from C++. From an <a href="https://stackoverflow.com/a/4500127/45603" title="winapi - C++ and DirectShow">earlier post</a> I know that I need to <code>#import</code> quartz.dll and qedit.dll. Doing that gives me smart pointer classes like <code>IGraphBuilderPtr</code> among others and I can see it supported by IntelliSense. I am now trying to use <code>ICaptureGraphBuilder2</code> but it does not show up in the IntelliSense and attempting to <code>#import</code> devenum.dll, qcap.dll gives me a <code>"C1803: Cannot open type library file"</code>. So, a couple of questions:</p>
  
  <ol>
  <li>What DLLs do I need to <code>#import</code> when using DirectShow interfaces?</li>
  <li>In general, given a COM library, how do I know which DLLs I can #import?</li>
  </ol>