Ich habe eine einfache FM-Radio-Tuner-App in Silverlight 5 Out-of-Browser, die Code aus einer nativen C ++ - DLL von meinem USB-FM-Empfänger mit PInvoke aufruft. Diese Anwendung funktioniert sehr gut in Windows 8 mit Silverlight5.
Jetzt versuche ich es mit WinRT in eine Metro App zu portieren.
Die Migration von Silverlight zu XAML UI ist ziemlich einfach und funktionierte gut. Die PInvoke-Signaturen und -Attribute wurden ordnungsgemäß mit dem Namespace System.Runtime.InteropServices und dem DLLImport-Attribut erkannt.
Das Problem ist, dass, wenn ich die App ausführen und eine Methode aus der pInvoked nativen DLL aufrufen, die in meiner SL5-App funktioniert (das funktioniert sogar unter Windows8), habe ich diese Ausnahme:
%Vor%
Also, meine Frage ist, was ist das Problem an diesem PInvoke? Da es unter Windows8 mit einer SL5-App gut funktioniert, sehe ich keine Gründe für Probleme mit WinRT / Metro Apps.