Unterschiede zwischen alten VS6 Vc++2008 und Neuen Projekten?
-
Hallo,
Ich hatte über google gesucht und habe so euer Board gefunden, nachdem ich bei 2 anderen Foren leider keine gute Antwort auf meine Frage bekommen hatte
.Ich versuche einen vor Jahren erstellten C++ Source-Code weiterzuarbeiten. Nun aber in V-c++2008 express edition. Leider mit vielen Fehlern, zu viele um alles hier aufzulisten.
Deshalb wollte ich nur mal eben fragen, was die wichtigsten Unterschiede zwischen programmieren mit den älteren VS6 und dem V-c++2008er sind?
Der häufigste Fehler den ich bekomme ist: error C4430 Fehlender Typspezifizierer - int wird angenommen. Hinweis: "default-int" wird von C++ nicht unterstützt
Der fehler muss aber woanders liegen, denn ich habe int verwendet.
Und wie sieht das aus mit den DWord Befehlen? Ich denke da könnte mein Fehler liegen.
Hier mal 2 Ausschnitte aus den Source-Codes
void _ror DWORD (Value,UCHAR, Shift); void _rol DWORD (Value,UCHAR, Shift); void DWORD Initrandom, DWORD (dwRange); void EncryptBuff (char Base,DWORD dwRV,DWORD Size); void DecryptBuff (char Base,DWORD dwRV,DWORD Size); void MakePER (char pEncryptBuff,char pDecryptBuff,DWORD dwSize); ================================================ extern HINSTANCE hInst; extern HWND hwndMain; extern HMENU hMenu; extern HWND hButton; extern HWND hwndTab; extern HWND hwndDisplay;Danke und ich hoffe es hat jemand einen Tip oder sogar eine gute Lösung für mich!!!

-
Der größte Unterschied ist der das VC6 einfach inkorrekten Code aktzeptiert hat.
Schau Dir doch einfach diese zwei Funktionen an:
void _ror DWORD (Value,UCHAR, Shift); void _rol DWORD (Value,UCHAR, Shift);Welchen Type soll den Value haben, oder Shift?
Korrekt wäre:
void _ror DWORD (int Value, UCHAR c, int Shift); void _rol DWORD (int Value, UCHAR c, int Shift);
-
Danke das war ein echt guter tip, hätte ich auch selber drauf kommen können.

Jetzt besteht noch folgendes Problem (häh wieso denn <prsht.h>)
:C:\Programme\Microsoft SDKs\Windows\v6.0A\include\prsht.h(97) : error C2065: 'CALLBACK': nichtdeklarierter Bezeichner C:\Programme\Microsoft SDKs\Windows\v6.0A\include\prsht.h(97) : error C2065: 'LPFNPSPCALLBACKA': nichtdeklarierter Bezeichner C:\Programme\Microsoft SDKs\Windows\v6.0A\include\prsht.h(97) : error C4430: Fehlender Typspezifizierer - int wird angenommen. Hinweis: "default-int" wird von C++ nicht unterstützt.grüße!
-
Weil Du windows.h nicht zuerst includest...
Vielleicht solltest Du mal etwas SDK Doku lesen
