VS2005+MFC --> VS 2013



  • Hallo zusammen,

    sicher ein altes Problem:
    viele Jahre habe ich mit VS 2005 + MFC bis Win7 problemlos gearbeitet,
    jetzt habe ich ein Surface Pro 3, das hat Win 8.1 und jetzt stehe ich auf dem Schlauch,
    denn VS 2005 konnte ich darauf nicht mehr installieren.

    Also habe ich VS 2013 Express installiert, damit kann ich aber nicht die MFC nutzen oder doch?
    An einem Testbeispiel habe ich gesehen, dass man mit der Exprss-Version auch keine Resourcen (Dialoge usw.) erstellen kann, oder doch?

    Also meine zentrale Frage: wenn ich VS 2013 Prof. erwerbe, kann ich erwarten,
    dass mit hoher Wahrscheinlichkeit meine alten Programme, die unter VS 2005 einwandfrei liefen, weiterhin laufen werden?

    Mit der Express Version werde ich wohl nicht weit kommen, oder doch.

    Danke im voraus
    E.S.



  • Man kann VS 90 Tage lang oder so ausprobieren ohne zu kaufen.


  • Mod

    Note3 schrieb:

    Also meine zentrale Frage: wenn ich VS 2013 Prof. erwerbe, kann ich erwarten,
    dass mit hoher Wahrscheinlichkeit meine alten Programme, die unter VS 2005 einwandfrei liefen, weiterhin laufen werden?

    JA!



  • Martin Richter schrieb:

    Note3 schrieb:

    Also meine zentrale Frage: wenn ich VS 2013 Prof. erwerbe, kann ich erwarten,
    dass mit hoher Wahrscheinlichkeit meine alten Programme, die unter VS 2005 einwandfrei liefen, weiterhin laufen werden?

    JA!

    Leider noch nicht.
    Habe die Testversion heruntergeladen und meine xyz.sin angeklickt.
    Dann kommen die Fehlermeldungen
    ... nicht ordnungsgemäß geladen
    ... nicht kompatibel

    und in der xml-Datei steht u.a.
    <entry>
    <record>50</record>
    <time>2014/10/07 18:53:02.914</time>
    <type>Error</type>
    <source>VisualStudio</source>
    <description>SetSite failed for package [Visual Studio Build Manager Package]</description>
    <guid>{B718A162-0361-4B0E-920B-D88D70BE609B}</guid>
    <hr>80131604</hr>
    <errorinfo>Ein Aufrufziel hat einen Ausnahmefehler verursacht.</errorinfo>
    </entry>
    <entry>
    <record>51</record>
    <time>2014/10/07 18:53:02.930</time>
    <type>Error</type>
    <source>VisualStudio</source>
    <description>End package load [Visual Studio Build Manager Package]</description>
    <guid>{B718A162-0361-4B0E-920B-D88D70BE609B}</guid>
    <errorinfo>Ein Aufrufziel hat einen Ausnahmefehler verursacht.</errorinfo>
    </entry>

    Mit ratlosem Gruß
    E.S.



  • Diese Frage war wohl etwas voreilig.
    Hab da wohl das falsche Tool aufgerufen, ich brauche ja erst mal einen Produkt Schlüssel.
    Aber wo bekomme ich den her.
    Ich soll ein Abonnement abschliessen sagt der Dialog.
    Muss ich das für die Testversion tun??



  • Probier erstmal ob das 2013 Studio an und für sich läuft - mit irgend nem neu erstellten C++ Projekt.
    Wenn das geht, dann kannst du nochmal probieren die Solution zu konvertieren.
    Oder auch mal die Solution löschen und statt dessen nur das Project-File laden.
    Wenn das auch nicht geht, dann leg einfach ein neues Projekt an und stopf alle Files vom VC2005 Projekt da rein.

    IIRC macht VS nicht wirklich viele sinnvolle Dinge beim "Konvertieren" eines C++ Projekts => kannst du genau so gut manuell machen.

    EDIT: Tippfehler.



  • hustbaer schrieb:

    Probier erstmal ob das 2013 Studio an und für sich läuft - mit irgend nem ner erstellten C++ Projekt.
    IIRC macht VS nicht wirklich viele sinnvolle Dinge beim "Konvertieren" eines C++ Projekts => kannst du genau so gut manuell machen.

    Geht auch nicht, weil in dem Menü Datei (dort konnte ich in der Testversion ein neues Projekt erstellen) nur der Menüpunkt "Neues Teamprojekt" steht.
    Damit komme ich nicht weiter.
    Habe ich da was falsches heruntergeladen?
    Aber das Icon für VS sieht wie bei der Testversion aus.



  • Mach mal das Tools Menu auf, dort den Menupunkt "Import and Export Settings...", Option "Reset all settings" - und dann Visual C++ auswählen.
    Wenn das nix hilft dann versuch es neu zu installieren (vorher uninstall!).

    Ernst Sauer schrieb:

    Habe ich da was falsches heruntergeladen?

    Weiss nicht. Was hast du denn runtergeladen?


  • Mod

    Evtl. hast Du nur den Team-Explorer heruntergeladen...



  • Inzwischen habe ich mal VS von einer Chip-Seite heruntergeladen,
    immerhin kann ich damit mein Projekt laden.
    Es wird zwar als nicht kompatibel angezeigt und auch nicht in die Projektmappe aufgenommen, aber das sei jetzt mal dahingestellt.
    Auch weiss ich nicht, ob es eine Test- oder Expressversion ist (Version 12.0.21005.1 REL) aber auch das ist erstmal egal.

    Je nach Projekteinstellungen bekomme ich zwischen 2 und 100 Fehlermeldungen.

    In der Version mit 2 Fehlern beginnt es mit:
    error C2509: 'GetMessageMap': Memberfunktion wurde in 'CMkapp' nicht deklariert ...
    Das folgende wurde aber nicht von mir, sondern vor vielen Jahren von VS in eine Datei geschrieben.

    BEGIN_MESSAGE_MAP(CMkapp, CDialog)
    //{{AFX_MSG_MAP(CMkapp)
    // ON_CBN_SELCHANGE(IDC_COMBO1, OnSelchangeCombo)
    ON_BN_CLICKED(IDC_RADIO1, OnDIN)
    ...
    ON_WM_CTLCOLOR()
    //}}AFX_MSG_MAP
    ON_BN_CLICKED(IDC_BUTTON5, OnBnClickedMplus)
    ...
    // ON_CBN_SELCHANGE(IDC_COMBO7, OnCbnSelchangeCombo7)
    END_MESSAGE_MAP()

    Was muss man hier ändern?
    Wäre sehr schade um mein Progy wenn ich es nicht zum laufen bringen würde.

    Gruß
    E.S.



  • Du verrätst uns nicht sehr viel über dein Projekt und zum Raten hab ich keine Lust.

    Damit 'GetMessageMap' deklariert ist musst du in der Klasse das Makro DECLARE_MESSAGE_MAP() verwenden ("aufrufen"). Daran kann es aber eher nicht liegen, denn ohne DECLARE_MESSAGE_MAP() hätte es auch in älteren VS Versionen nicht funktioniert.



  • hustbaer schrieb:

    Du verrätst uns nicht sehr viel über dein Projekt und zum Raten hab ich keine Lust.

    Damit 'GetMessageMap' deklariert ist musst du in der Klasse das Makro DECLARE_MESSAGE_MAP() verwenden ("aufrufen"). Daran kann es aber eher nicht liegen, denn ohne DECLARE_MESSAGE_MAP() hätte es auch in älteren VS Versionen nicht funktioniert.

    DECLARE_MESSAGE_MAP() steht in der zugehörigen Header-Datei.

    Meine Frage war natürlich eher genereller Natur, was sich da grundsätzlich geändert hat, denn das Programm läuft unter VS2005/Win7 fehlerfrei.

    Aber ich sehe schon, so einfach wie gedacht wird die Umstellung nicht.

    Offensichtlich hat sich auch viel bei den Strings geändert,
    denn da gibt es plötzlich Fehlermeldungen ohne Ende.

    Werde das Projekt wohl neu aufbauen müssen, um dann gezielt Fragen stellen zu können.


  • Mod

    Alle meine Umstellungen liefen in Minuten...
    Zeige uns mehr Code.
    War das besethender Code oder hast Du neue Projkete abgelegt und bestehenden Code verwendet? Neue Projekte warden grundsätzlich in Unicode angelegt!
    Du verwendest vermutlich MBCS...

    Ohne das Du weißt was Du hast wird es nicht gehen. Die Express Version hat keine MFC.



  • Werde das Projekt wohl neu aufbauen müssen, um dann gezielt Fragen stellen zu können.

    Das wird nicht an den Projekten, sondern eher an der Studio-Version liegen.
    Ich hatte keinerlei Umstellungsprobleme und ein Teil meiner Projekte stammt nicht erst aus 2005.

    Wie Martin sagt:

    Die Express Version hat keine MFC.

    und die wirst Du wohl brauchen


Log in to reply