2009-03-28 15 views

Antwort

5

Ich denke, was Sie tun müssen, finden Sie die Linker -> Input-Eigenschaft Seite für Ihr Projekt und sagen Sie es msvcrtd.dll/msvcrt.dll spezifisch zu ignorieren und dann explizit auf die gewünschte Version zu verknüpfen (vollständiger Pfad). Nicht sicher, was passiert, wenn sie den gleichen Namen haben ...

1

Ich denke, dass Microsoft ausdrücklich sagt "tue das nicht." Die Sache ist, msvcrt.dll wird jetzt als Teil des Betriebssystems angesehen, nicht Teil einer bestimmten App, und nicht eine weitervertreibbar. MS aktualisiert es möglicherweise mit einem Service Pack und kann das Verhalten erheblich ändern, wie dies bei XP SP2 der Fall war. Welches würde Apps brechen! Also ... Don't Do It.

+1

Wenn Sie Ihre Anwendung mit vs2008 bauen, wird es auf msvcr09.dll, die in Winsxs Ordner nicht in der Windows \ system32 Ordner existiert –

+0

Ich weiß nicht, welche Frage Sie beantworten, aber sicherlich ist es nicht die von Jimmy hier gefragt. .. –

3

VS ist nur eine IDE. Sie können es verwenden, um mit einem älteren Toolset zu erstellen, aber es erfordert einige Optimierungen - Sie müssen zwei Side-by-Side-VS-Installationen (z. B. VS2008 + vs6) installieren und mit verschiedenen VSARGS laden. Sehen Sie dieses ausgezeichnete step by step von Bojan Resnik.

Beachten Sie, dass diese Lösung in VS2010 nicht anwendbar ist - es hat eine neue pro Projekteinstellungen -> allgemein -> "Plattform Toolset". Falls gewünscht, installieren Sie this und aktualisieren Sie die Projekteinstellungen-> VC++ - Verzeichnisse manuell (oder ändern Sie den Standardwert settings manuell).

+0

Hallo, ich habe Daffodil nach Ihrem Kommentar installiert, aber ich bin mir nicht sicher, was ich mit den VC++ - Verzeichnissen machen soll. Könnten Sie mir bitte einen Rat geben? – Vermin

+0

Nun, IIRC, nach der Installation dieses Tools müssen Sie nur die Toolchain auswählen (anstatt die VC-Verzeichnisse zu ändern ...). Siehe http://blogs.msdn.com/b/vcblog/archive/2009/12/08/c-native-multi-targeting.aspx unter "Wie native Multi-Targeting aktivieren?". –