Herhangi bir genel COM kaydı gerektirmeden tam izolasyon içinde dağıtılabilmeleri için bildirim dosyalarını kullanan bazı uygulamalarım (bazıları yerel, bazı .NET) var . Örneğin, dbgrid32.ocx com sunucusuna bağımlılık, myapp.exe ile aynı klasörde bulunan myapp.exe.manifest dosyasında aşağıdaki gibi bildirilir:
<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<assembly manifestVersion="1.0" xmlns="urn:schemas-microsoft-com:asm.v1">
<assemblyIdentity type="win32" name="myapp.exe" version="1.2.3.4" />
<dependency>
<dependentAssembly>
<assemblyIdentity type="win32" name="dbgrid32.ocx" version="5.1.81.4" />
</dependentAssembly>
</dependency>
</assembly>
Dbgrid32.ocx, kendi dbgrid32.ocx.manifest dosyasıyla birlikte aynı klasöre dağıtılır:
<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<assembly manifestVersion="1.0" xmlns="urn:schemas-microsoft-com:asm.v1">
<assemblyIdentity type="win32" name="dbgrid32.ocx" version="5.1.81.4" />
<file name="dbgrid32.ocx">
<typelib
tlbid="{00028C01-0000-0000-0000-000000000046}"
version="1.0"
helpdir=""/>
<comClass progid="MSDBGrid.DBGrid"
clsid="{00028C00-0000-0000-0000-000000000046}"
description="DBGrid Control" />
</file>
</assembly>
Bunların hepsi iyi çalışıyor, ancak bu manifest dosyalarını manuel olarak korumak biraz acı verici. Bu dosyaları otomatik olarak oluşturmanın bir yolu var mı? İdeal olarak, uygulamanın bir COM sunucuları listesine (hem yerel hem de .NET) bağımlılığını bildirmek ve geri kalanının otomatik olarak oluşturulmasına izin vermek istiyorum. Mümkün mü?