Ich tipp mal drauf das du in der
DLL kein CoInitialize aufrufst. In einer "normalen" Exe-Anwendung wird dies über Application.Initialize automatisch aufgerufen.
Weiter Hilfe wenn du die Forensuche bemühst.
Windows Vista - Eine neue Erfahrung in Fehlern.