Frage

Ich habe einen Klienten, der noch Visual Studio 6 für den Aufbau von Produktionssystemen verwendet. Sie schreiben Multi-Threaded-Systeme, die STL verwenden und laufen auf mutli-Prozessor-Maschinen.

Gelegentlich, wenn sie ändern die Spezifikation oder die Last auf einem ihrer Server-Maschinen erhöhen sie ‚seltsam‘ schwer zu reproduzieren Fehler bekommen ...

Ich weiß, dass es mehrere Probleme mit Visual Studio 6 Entwicklung und ich möchte sie überzeugen, auf Visual Stuio 2005 oder 2008 (sie haben Visual Studio 2005 und verwenden Sie es für einige Projekte) zu bewegen.

Der Zweck dieser Frage ist, zusammen eine Liste der bekannten Probleme oder Gründe zu setzen, um ein Upgrade zusammen mit Links zu denen diese Themen diskutiert oder berichtet. Es wäre auch sinnvoll sein, die wirkliche Leben ‚Geschichten Horror‘ zu haben, wie diese Probleme, die Sie haben gebissen.

War es hilfreich?

Lösung

Nicht mit Vista auf 64-Bit-Systemen Kompatibilitätsprobleme unterstützt, und es wurde aus erweiterten Support von Microsoft am 8. April 2008

bewegt

http://msdn.microsoft.com/en-us/vbrun /ms788708.aspx

Andere Tipps

ungepatchten VC6 STL ist nicht Thread-sicher. Sehen Sie hier http://www.amanjit-gill.de/articles/vc6_stl.html werden die Patches nicht in dem Service Pack enthalten und Sie direkt haben, um sie von Dinkumware zu erhalten (hier von http://www.dinkumware.com/vc_fixes.html ) und dann wenden sie auf jede Installation ...

Das größte Problem, das wir an meinem Arbeitsplatz gesehen haben, ist es Unfähigkeit, auch nur geringfügig komplexer als Templat Klassen oder Funktionen zu handhaben. Allein diese Tatsache hat einige der eifrigsten VS6 Fans im Unternehmen zwingen, zu aktualisieren und mit VS2005 zu starten. Neben der Vorlage Problem ist intellisense viel besser, Debuggen ist einfacher und genauer, und viele Menschen die IDE einfacher zu navigieren finden. Der einzige Nachteil, den wir bisher gesehen haben, ist, dass baut im Jahr 2005 ein wenig länger dauern, als sie in 6 taten (aber das ist wahrscheinlich eine Nebenwirkung des Compilers robuster zu sein)

Sie können auch diese Stellen für eine Probenahme der bekannten Probleme in VS6 Check-out:

Ich bin sicher, Sie könnten mehr finden, wenn Sie ein wenig herum stochern.

VS6 nicht kompiliert Code entsprechend den aktuellen C / C ++ Standard. Zum Beispiel:

  • es falsch (veraltet) Scoping-Regeln für Schleifen hat. Mindestens ein MSFT SDK hat mit Code jetzt aktualisiert worden, die die richtige Semantik erwartet, so dass das SDK nicht einmal mit VS6 mehr kompilieren.
  • Es hat Schwierigkeiten der Lage, alle, aber die meisten trivialen Vorlage Konstrukte zu kompilieren.
  • Es wird einige Template-Konstrukte kompilieren, die in den letzten Standards Updates für illegal erklärt wurden (weil die Konstrukte tun nicht wirklich, was normale Benutzer erwarten).

operator new entspricht nicht den C ++ spec und keine Ausnahmen auf Zuordnungsfehler werfen, Festsetzung dieser nicht trivial ist.

siehe: http://msdn.microsoft.com/en-us/magazine/cc164087.aspx

Einer der größten Gründe für mich war die Standard-konformen C aktualisieren ++ Compiler (wenn auch noch nicht zu 100%), so konnte ich mehr C ++ Funktionen in meinen Projekten nutzen und sich keine Sorgen über seltsame Hacks und Workarounds, die zu hart führen kann Fehler finden.

Nicht kompatibel mit Vista. Heck, gibt es eine lange Liste von Fragen VS 2005 hat mit Vista.

aber sagen, dass die meisten Verbesserungen in VS scheinen alles andere als C ++ nativen Code anzuwenden. Was ich sehe mehr die Einhaltung von Standards ist, die wichtige, aber kaum dramatisch ist.

Visual Studio 6 ist nicht kompatibel mit dem neuesten Windows-SDKs, so kann es nicht nutzen (zumindest leicht) die neuesten OS-Funktionen.

Obwohl ich nicht mehr Konkretes hat, werde ich nur werfen, wenn wir bei der Arbeit aufgewertet, der neue Compiler schon einige Fehler gefunden, dass VC 6 let Schlupf durch leise. Verbessertes Produkt Robustheit nur aus dem Upgrade.

Wenn sie die STL verwenden, können sie in der kürzlich veröffentlichten Feature Pack , die eine Implementierung von TR1 .

Ich habe meine Sachen aufgerüstet, aber es ist relativ unkompliziert. A con zu aktualisieren ist VS 2005 DLL-Hölle

Die VS 2008 Version des STL kompiliert mit /clr, so dass, wenn sie beim Übergang auf die verwalteten Welt interessiert ist, müssen sie alle ihren alten Code nicht verlieren.

Mit dem defoult neueren Versionen haben eine besseren Compiler und eine besseren Bibliotheken. Aber es ist nicht immer einfach zu portieren bestehende Projekte zu neuerem Studio, und Sie können sowohl Compiler und Bibliotheken manuell aktualisieren.

war ich vor VS 6.0 mit Intel-Compiler nur Jahr verwenden. Wir hatten nur einen Haufen alten Code dann, die Iteratoren als Zeiger und umgekehrt wurde threating, und es war alles echt chaotisch und beängstigend, so dass diese holded uns von einem Upgrade.

Aber ich hatte schließlich zu aktualisieren, da der Rahmen, den ich zur Zeit einfach nicht auf VS 6.0 läuft mit bin. Denken Sie dies der ultimative Grund ist: -)

Dritt Teil Bibliotheken unterstützen nur eine begrenzte Anzahl von Compilern, auch. Ihr Kunde kann nicht in der Lage sein, Fehlerbehebung oder Feature-Upgrades als Ergebnis zu akzeptieren.

Zum Beispiel, auch eine weit verbreitete Bibliothek als Boost-unterstützt nur VS 7.1 und höher ( Raymond Chen .

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top