2009-07-29 9 views
1

So habe ich eine Visual Studio 2005-Lösung, die ein C# -Projekt (Test-Treiber - erstellt Exe) und 7 C++ - Projekte (DLLs) enthält.Devpartner-Instrumentierung für Code-Coverage verursacht Linker-Fehler

Diese Lösung baut bis zu diesem Punkt gut.

Ich habe DevPartner Studio 8.2 installiert. Ich versuche, eine Testabdeckung für die gesamte Lösung zu generieren, die es erfordert, nativen C++ - Code während Builds zu instrumentieren. Wenn ich diese DevPartner-Option aktiviere, erzeugt der Build Linker-Fehler.

Hat jemand Erfahrung damit?

Zum Beispiel:

Error 25 error LNK2001: unresolved external symbol "public: __thiscall IntLong::IntLong(class BufObjBase *,int,int,unsigned char,wchar_t const *,bool)" ([email protected]@[email protected]@@[email protected]) X.obj 

Antwort

1

Ein Mitarbeiter dachte, dies. Falls jemand anderes auf dieses Problem stoßen sollte:

Es gibt eine Abhängigkeitskette im Projekt zwischen DLLs, anderen DLLs und Bibliotheken. In einem normalen Build ist Visual Studio intelligent genug, um die Bibliotheken zu finden. Wenn DevPartner seine Instrumentierung einfügt, ist dies nicht der Fall.

Stellen Sie sicher, dass alle zusätzlichen Abhängigkeiten explizit angegeben sind (Eigenschaften des Projekts, das den Verbindungsfehler erhält) -> Linker -> Eingabe -> Zusätzliche Abhängigkeiten.