Bis vor kurzem waren wir glücklich mit registration-free COM für unsere nativen und .NET COM-Komponenten. Wir stießen jedoch auf ein seltsames Problem, bei dem unsere Anwendung zufällig auf Windows XP SP3 (aber nicht auf Vista) abstürzte, nachdem wir nur die Versionsnummer einer .NET Assembly geändert hatten, um von Release Candidate zu Release zu wechseln. (Sie hassen Murphys Gesetz nicht?)Wird erfolgreich registrierungsfreie COM mit .NET-Komponenten verwendet?
Nach vielen verlorenen Manntag und Zähneknirschen stellten wir fest, dass das Problem ein known bug in sxs.dll war, der Heap-Korruption beim Abrufen von Informationen über eine .NET-Klasse verursacht. Es gibt einen Hotfix, der das Problem verschwinden lässt, Hotfixes sollen jedoch nicht neu verteilt werden.
Wir sind ziemlich ratlos, dass es einen so schrecklichen Fehler in der Registrierung-freie COM-Implementierung gibt. Ist jemand erfolgreich ohne registrierungsfreie COM für .NET-Komponenten? Wie haben Sie dieses Problem gelöst?
+1 wichtige Frage, die ich nicht bewusst war! BTW kann ich vorschlagen, dass Sie das Tag "regfreecom" hinzufügen, da dieses Tag häufiger für Registry-freie COM-Fragen ist? – MarkJ
... tatsächlich habe ich es einfach selbst retagged ... hoffe, dass OK – MarkJ
Sicher. Konsistente Tags sind nützlicher. –