2009-08-06 9 views
2

Ich möchte meine App unter der Mono-Laufzeit testen (um zu sehen, ob die SIMD-Unterstützung mir irgendwelche Leistungsverbesserungen anbieten kann). Ich kompiliere meine App mit csc.exe (in Visual Studio 2005) und dann als mono.exe --debug MyApp.exe ausgeführt. Mono verwendet jedoch eine eigene Implementierung der Kernbibliotheken (System.IO usw.), die einige Dinge nicht implementiert haben.Verwenden von Microsoft Assemblies in Mono-Laufzeitumgebung

Ist es möglich, der Mono-Laufzeitumgebung zu sagen, dass sie die von Microsoft ausgelieferten Kernbibliotheken anstelle ihrer eigenen verwenden soll?

(Ja, mir ist klar, dass dies bedeuten würde, dass ich sowohl MS .NET 2.0 als auch Mono mit meiner App verteilen müsste. Wenn die SIMD-Unterstützung für mich hilfreich ist, werde ich diese Abhängigkeiten beseitigen und Monos Implementierung verwenden Für den Moment möchte ich nur das SIMD-Zeug testen, ohne eine Menge anderer Änderungen vornehmen zu müssen.)

+0

Dies ist möglicherweise nicht durch die Lizenz zulässig. – Cheeso

Antwort

2

Sie könnten die Assemblys von Microsoft im Ordner bin Ihrer App ablegen, und ich denke, sie würden abgeholt und benutzt. Wenn nichts anderes möglich ist, können Sie die Assemblys von Microsoft in Mono's GAC platzieren, sodass sie keine andere Wahl haben, als sie zu verwenden.

Nachdem ich das gesagt habe, bezweifle ich sehr, dass die Assemblys von Microsoft aufgrund der Kopplung zwischen den Assemblys und der Laufzeit funktionieren. (Das heißt, die Assemblies führen möglicherweise private Aufrufe in die Laufzeitumgebung durch, die sich von der Laufzeit von Monos unterscheiden.)

Verwandte Themen