title: Registration Free Com and dll manifests
body: <p>I'm trying to setup registration free COM, but have a slight problem in that I another COM object may be the client.</p>
  
  <p>App.exe----->COM Server/Client dll(registered or not)-------->COM Server DLL (NOT Registered)</p>
  
  <p>My questions is, is it possible to create a manifest for the second dll (COM Server/Client dll)? I do not have control of the executable, but if I did, this works if I create a client manifest for the executable and a server manifest for the COM server dll.</p>
  
  <p>this is the manifest file for the middle dll. I tried embedding it and tried it external. Still doesn't work.</p>
  
  <pre><code>&lt;?xml version="1.0" encoding="UTF-8" standalone="yes"?&gt;
  &lt;assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0"&gt;
    &lt;assemblyIdentity type="win32" 
                      name="COMCliSer.dll" 
                      version="1.0.0.0" 
    /&gt;
    &lt;dependency&gt;
      &lt;dependentAssembly&gt;
        &lt;assemblyIdentity 
                       name="COMSer.dll" 
                      version="1.0.0.0"                    
        /&gt;
      &lt;/dependentAssembly&gt;
    &lt;/dependency&gt;
  &lt;/assembly&gt;
  </code></pre>
  
  <p>On further investigation, I can get this all to work as long as the middle dll is also registration free and the exe has an application manifest. As soon as I register the middle dll, and drop the application manifest (I do not have control of what exe will use my dll), the whole thing stops working.</p>
  
  <p>If the exe has no manifest, then the dll's manifest is not taken into consideration. I can prove this by setting up everything to work. Then putting a mistake in the assembly manifest. This pops up the usual message :</p>
  
  <p><strong>Unable to create process: This application has failed to start because the application configuration is incorrect. Reinstalling the application may fix this problem.</strong></p>
  
  <p>If I then drop the application manifest, the application loads (albeit the CoCreateInstance fails because the dependencies are not taken into consideration)</p>