2009-08-18 18 views
0

Ich bin schmerzhaft Debuggen einer alten VS 6.0 MFC-App, und ich würde wirklich gerne in MFC-Code einsteigen. Nun hat der Code Schiff mit VS6 und die Symbole (mfc42.pdb) auch, aber der Debugger behauptetMFC in Visual Studio 6.0 kompilieren

'Symbole geladen (Quelle Informationen gestrippt)'

auf Befestigung. Von these Tipps, alle Kopien von mfc42.pdb auf meiner Maschine sind in der Tat abgestreift (ihre Größe ist 1,5M-2M, nirgendwo in der Nähe von 10M). Ich bekomme aussagekräftige Stapel, kann aber keinen MFC-Code eingeben.

Ich versuche gerade, MFC neu zu kompilieren, um Codeview-Symbole zu erhalten (ja, die Situation ist , die desparate). Ich habe versucht, folgende this schön Durchlauf von Daniel Howard, aber ich halte Stoßen in die folgenden Linkfehler:

... delayimp.lib Bibliothek erstellen .. \ lib \ mfc42.LIB und Objekt .. \ lib \ mfc42.exp mfc42.exp: Fehler LNK2001: nicht aufgelöstes externes Symbol "public: int __thiscall CTime :: operator == (Klasse CTime) const" (?? 8CTime @@ QBEHV0 @@ Z) mfc42.exp: Fehler LNK2001 : nicht aufgelöstes externes Symbol "public: int __thiscall CTime :: operator! = (Klasse CTime) const" (?? 9CTime @@ QBEHV0 @@ Z) mfc42.exp: Fehler LNK2001: nicht aufgelöstes externes Symbol "public: int __thiscall CTime: : operator < (Klasse CTime) const "(?? MCTime @@ QBEHV0 @@ Z) mfc42.exp: Fehler LNK2001: nicht aufgelöstes externes Symbol "public: int __thiscall CTime :: operator> (Klasse CTime) const" (?? OCTime @@ QBEHV0 @@ Z) mfc42.DLL: Schwerwiegender Fehler LNK1120: 4 nicht aufgelöste externe Daten

CTime wurde in TIMECORE.cpp implementiert, die solche Operatoren tatsächlich nicht implementiert. Ich konnte die Benutzer des Benutzers nicht finden.

Hat jemand einen Einblick? Jede indirekte Beratung wäre auch toll.

Antwort

3

Es ist in AFX.INL in VC98 \ MFC \ Include \ AFX.INL definiert. Sie haben wahrscheinlich nur die .cpp zu Ihrem Projekt hinzugefügt.

Ein Schritt in MFC-Code ist ein Muss. MFC-Code ist ein Muss. Es macht dich demütig und wütend zugleich.

1

Mein Speicher ist normalerweise ziemlich schlecht und das war vor langer Zeit, aber ich erinnere mich, dass eine Version der Bibliotheken, kompiliert und zum Debuggen verlinkt, eine der zusätzlichen Optionen des VC6 ++ Installers war.

+0

Danke Manni. VC6 ++ kommt in der Tat mit MFC42d.dll und die Likes, wenn das ist, was Sie meinen - aber ich brauche vollständige Symbole (Codeview) für die Produktionsversion, MFC42.dll. Erinnerst du dich daran, * das * installiert zu haben? Ich überprüft erneut für Ihre Antwort - es gab diese MFC-Installationskomponente namens "Source Browser". Das Hinzufügen schien keinen Unterschied zu machen, und Googeln zeigt an, dass es wahrscheinlich eine Art Objektbrowser/IntelliSense-Vorgänger ist. –

Verwandte Themen