2016-04-12 15 views
0

Ich habe eine C#WPF Anwendung, die eine Visual C++ CRL-Assembly verwendet. Beide Projekte haben als Zielrahmen .NET 4.0. Wenn ich das Programm auf dem Computer mit Visual Studio ausführe, wo ich das Projekt entwickelt habe, sowie auf meinem PC habe ich keine Probleme. Aber es kann in einigen Computern vorkommen, dass, wenn die Anwendung die Methode aufruft, wo ich eine Methode in der Baugruppe definiert aufrufen, erhalte ich eine nicht behandelte Ausnahme:Benutzerdefinierte Visual C++ - CRL-Assembly nicht gefunden

konnte nicht Datei oder Assembly laden ‚MyAssembly.dll‘ oder ein von seinen Abhängigkeiten. Das ausgewählte Module kann nicht gefunden werden.

Warum bekomme ich dieses Problem und wie kann ich es beheben?

+0

Welche Abhängigkeiten hat Ihre C++ - DLL? – auburg

+0

@ auburg mscorlib System.Data System System.Xml, aber auch das Entfernen von System.Data und System.Xml bleibt das Problem – Nick

+1

Es hat mehr. Sie schreiben eine C++/CLI-Assembly, um nativen C++ - Code zu umbrechen. Sie haben also zumindest eine Abhängigkeit von der C-Laufzeitbibliothek. Wie msvcr120.dll und vielleicht msvcp120.dll unter der Annahme, dass Sie VS2013 verwenden (lassen Sie uns nicht raten). Und vielleicht auch dieser C++ - Code, wenn er in einer eigenen DLL lebt. Oder benutzt DLLs selbst. Verwenden Sie SysInternals Process Monitor, wenn Sie keine Ahnung haben. –

Antwort

1

Ich denke, Sie müssen die zugehörige Visual C++ Redistributable installieren. Sorry, verwechselte es mit dem SDK.

+0

In diesem Fall wie soll ich die Visual Studio-Projekteigenschaften ändern, um das Problem zu beheben? – Nick

+0

Das SDK wird nur auf einem Dev-Computer, niemals auf dem Computer des Benutzers benötigt. –

+0

Sie haben Recht - ich meinte das Visual C++ Redistributable. – weismat

Verwandte Themen