64-bit-tools wie BoundsChecker & Reinigen
Seit vielen Jahren habe ich zwei tolle tools, BoundsChecker & Reinigenaber die Entwickler dieser Anwendungen haben mich im Stich lassen, Sie nicht mehr Aufwand zu pflegen oder weiterzuentwickeln. Wir haben corporate-Konten der beiden Unternehmen, und Sie beide sagen mir, dass Sie keine Absicht haben, zu produzieren Versionen unterstützen 64-bit-Anwendungen.
Kann jemand empfehlen, entweder open source oder kommerzielle alternativen, die 64 bit unterstützen native C++/MFC-Anwendungen?
InformationsquelleAutor der Frage titanae | 2008-09-08
Du musst angemeldet sein, um einen Kommentar abzugeben.
Viva64 ( http://www.viva64.com/viva64-tool/ ) - tool ermöglicht die Erkennung von Fehlern, die typisch für 64-bit-Windows-Anwendungen. Viva64 ist ein lint-wie der statischen Analyse von C/C++ - code. Viva64 integriert sich in Visual Studio 2005/2008 Umgebung und bietet benutzerfreundliche Schnittstelle, um zu testen Ihre software-Projekte.
InformationsquelleAutor der Antwort
Parasoft hat ein tool namens Versichern++ (link: http://www.parasoft.com/jsp/products/quick_facts.jsp?product=Insure), die sagt, es werde tun, dass.
Ich verwendet habe, Versichern++ auf 32-bit-und 64-bit-Anwendungen, die auf Linux und es war okay. Kam es manchmal verwirrt, wenn er versucht hatte, Sie zu analysieren template/stl code und würde Umfallen.
Diese url sagt, es funktioniert auf 32 - und 64-bit-windows, viel Glück!
InformationsquelleAutor der Antwort svec
BoundsChecker 9.01 unterstützt jetzt VC2008-und x64-bit -, endlich.
InformationsquelleAutor der Antwort titanae
versichern++ nur workse wenn Sie Ihr instrument code. Ich habe einmal versucht es. Es dauerte ungefähr 5 Minuten zum kompilieren von über 1000 Zeilen code. Da das Projekt, dass ich brauchte, um zu kompilieren war riesig, habe ich schnell festgestellt, dass Versichern++ war nicht zur Arbeit zu gehen.
Nicht zu erwähnen, Ihre reporting -, oder Ausgabe Versichern++ ist ziemlich archaisch. auch die Laufzeit-performance penalty wurde attrocious.
Hinweis zu boundschecker von numega/compuware/other_new_company: kaufen Sie es nicht. Es werden nur profile 32-bit-apps. Es ist NICHT 64-bit-apps. Es kann installiert werden, auf einem 64-bit-OS aber. Ich hörte es vor Jahren auf unsere app. Ich nutze es auf CppUnit-Tests obwohl... manchmal.
Im Allgemeinen ich ' m völlig angewidert mit alle native memory-leak-tools gibt. Sie alle funktionieren nicht, oder nur sperren Sie Ihre Anwendung auf das Herunterfahren.
InformationsquelleAutor der Antwort C Johnson
FYI: BoundsChecker 10.0 läuft auf Windows XP bis Windows 7, auf 32-und 64-bit-Versionen. Es unterstützt WOW64-Anwendungen, und es unterstützt auch Visual Studio 2010. In der Tat, wir veröffentlicht VS2010-support innerhalb von 30 Tagen von Microsofts release.
Fangen wir mit unseren Auftragsbestand. Wir waren sehr spät die VS2005 und VS2008 Unterstützung aus (mit BC 9.0, Herbst 2008), aber es gab eine Vielzahl von Gründen, warum dies geschah. Das Wunder war, dass wir es bekamen.
BoundsChecker 10.5, wenn es rauskommt, sollten einige weitere goodies. Bleiben Sie dran.
Offenlegung: ich arbeite für die Mikrofokus.
InformationsquelleAutor der Antwort Rick Papo
Intel(R) Parallel Inspector (http://software.intel.com/en-us/intel-parallel-inspector/) ist ein threading-und memory-checking plugin-tool zum Microsoft* Visual Studio; es unterstützt 32-bit und 64-bit-C/C++ auf Windows. Es ist eine kommerzielle Anwendung mit einer 30-Tage Kostenlose Testversion.
Offenlegung: ich arbeite für Intel.
InformationsquelleAutor der Antwort Jay DeSouza
Ich habe bounds checking und andere dynamische Analyse-tools und während der Architekturen sind unterschiedlich, es ist der code, der Sie überprüft - in der Theorie Sie könnten bounds checking auf jedem backend und das Ergebnis wäre das gleiche - der code, der entweder Schritte außerhalb seiner Grenzen oder nicht.
Nur Komplikationen sind die Adressierung von mehr als 4GB Speicherplatz, Umgang mit code-Stücken, die Sie nicht cross-kompilieren, um eine 32-bit-Architektur (64-bit Objekt-Dateien für die du keine Quelle, etc), und generell 64-bit-migration (Plattform-spezifischen code, wie etwa die überprüfung für 0xFFFFFFFF statt -1)
Welche anderen Probleme Sie zu tun bounds checking auf Ihrem Programm? Sind Sie nicht in der Lage zu kompilieren, eine 32-bit-version?
Es ist nicht die ideale Lösung, sicherlich, und man sollte immer überprüfen Sie den code, den Sie gehen, zu laufen, aber in diesem Fall Sie möglicherweise nicht haben eine Wahl, es sei denn, Sie wollen Ihre eigenen bounds checking (das ist eine gute Idee in jedem Fall...).
-Adam
InformationsquelleAutor der Antwort Adam Davis
es ist mein Verständnis, dass BC 9.0 unterstützt WOW64
InformationsquelleAutor der Antwort
Application verifier für x64 und x86, erkennt heap-Beschädigung
http://www.microsoft.com/download/en/details.aspx?id=20028
InformationsquelleAutor der Antwort lrascao
Vom IBM PurifyPlus Unterstützung für 64-bit-Versionen von Microsoft Windows:
Installieren Sie diese version von Reinigen und man bekommt ein "Reinigen (für 64-bit-Anwendungen)" - Eintrag in Ihrem Startmenü.
InformationsquelleAutor der Antwort mheyman