Wir haben ein Projekt, kompiliert zu einem 32-Bit-COM-DLL und eine 64-Bit-COM-DLL (die gleiche aus my earlier question). Wenn ich beide auf meinem Windows 7-Rechner registriere, registrieren sich beide erfolgreich. Wenn ich beide auf einem Windows Server 2003-Computer registrieren, registrieren beide erfolgreich.32-Bit-DLL "möglicherweise nicht kompatibel" auf Server 2008, aber funktioniert auf Server 2003
Aber wenn ich versuche, den DLLs auf einem Windows Server 2008 R2 Standard SP1 Maschine zu registrieren, die 64-Bit-DLL erfolgreich registriert, aber der 32-Bit- DLL schlägt mit der Meldung (sic):
Das Modul ""% 1 "" ist möglicherweise nicht mit der von Ihnen ausgeführten Windows-Version kompatibel. Überprüfen Sie, ob das Modul mit einer x86 (32-Bit) - oder x64 (64-Bit) -Version von regsvr32.exe kompatibel ist.
Ich glaube nicht, dass eine 32-Bit-DLL mit WS2003 und Win7, aber nicht WS2008 kompatibel sein kann. Das macht keinen Sinn.
Was könnte passieren?
Dies kann eine dumme Frage sein, aber wenn Sie sowohl eine 32-Bit- als auch eine 64-Bit-Version Ihrer Baugruppe haben, warum versuchen Sie dann, die 32-Bit-Version auf einem 64-Bit-Betriebssystem zu registrieren? – NotMe
Dies ist vielleicht eine weniger gute Frage, aber warum gibt es einen Grammatikfehler in der Fehlermeldung? Soll das eine FU-Situation nahelegen? – arsaKasra
Um die erste dumme Frage zu beantworten: Qualitätssicherung. Da 32-Bit-DLLs von 64-Bit-Windows unterstützt werden, müssen wir sicherstellen, dass unsere 32-Bit-DLL in dieser Situation funktioniert. –