2012-04-11 10 views
1

Ich habe eine neue DLL in der Plattform-Generator erstellt und versucht, diese DLL in meiner App zu verwenden. Wenn ich diese DLL in meiner App verwende, erhalte ich einen Fehler: PInvoke DLL 'HardwareAbstractionLayer.dll' kann nicht gefunden werden.DLL in Platform Builder

Was dieser Fehler bedeutet und wie kann ich das Problem beheben?

Antwort

2

Was dieser Fehler bedeutet, ist ziemlich einfach: Es kann einfach nicht die gewünschte DLL auf dem System finden, um es zu laden. Stellen Sie daher sicher, dass Ihre Datei wirklich auf dem Gerät verfügbar ist, indem Sie sie mit dem Explorer überprüfen.

Wenn die Datei in Ihr Bild und wirklich an der gewünschten Stelle gebacken wird, die Sie mögen (richtiger Ordner?) Sollten Sie sicherstellen, dass Ihre Anwendung wirklich an der richtigen Stelle für die DLL sucht. Schaut es nur in ein eigenes Arbeitsverzeichnis oder nur in den Windows-Ordner?

Um sicherzustellen, dass die Datei für Ihre Anwendung verfügbar ist, schreiben Sie ein anderes kleines Dienstprogramm, das sich nicht auf Ihre DLL bezieht. Verwenden Sie stattdessen einfach einen Anruf von Directory.GetFiles(), um sicherzustellen, dass die Datei auch über Ihre Anwendung erreichbar ist.

Wenn alle diese überprüft werden, dann ist vielleicht die DLL für die falsche Plattform kompiliert? Stellen Sie sicher, dass es auf den richtigen CPU-Typ eingestellt ist und prüfen Sie auch, ob Ihre DLL selbst Abhängigkeiten aufweist und diese auch alle auf dem Ziel verfügbar sind.

+0

Vielen Dank, das Problem war, dass die DLL nicht auf dem Gerät war. – janneob