Ich denke, eine Möglichkeit wäre, die Datei mit System.Reflection.Assembly.LoadFile () zu laden. Wenn Sie eine BadImageFormatException erhalten, handelt es sich nicht um eine gültige .NET-Assembly. Es gibt wahrscheinlich einen besseren Weg, dies zu tun, aber das sollte funktionieren.
Um dies formell zu tun, könnten Sie das PE untersuchen, um mehr darüber herauszufinden, welche Art von Zeug jede DLL exportiert. Es gibt einen ziemlich interessanten Artikel auf MSDN , der über die Struktur spricht. Wenn Sie das Setup verstehen, können Sie Links zu .Net identifizieren (und dadurch den Mangel, der eine reine COM-DLL anzeigt).
Warum regsvr nicht einfach alle anrufen? Wenn sie sich registrieren, dann ok, wenn nicht gar keine große Sache.
Es ist jedoch wahrscheinlich am besten, einen Installer zu schreiben, der weiß, welche welche sind und was das Richtige für jeden tut.
BEARBEITEN
Wenn Sie sich Sorgen machen, "Fehler zu senden", machen Sie sich keine Sorgen.
Sie können Nachrichten unterdrücken. (/ s)