Hallo,
ich bin noch relativ neu in der Programmierung und wahrscheinlich deshalb habe ich nun eine evtl. blöde Frage.
Bisher habe ich immer Konsolenprogramme geschrieben und bin damit eigentlich auch wunderbar klar gekommen. Die Programme schrieb ich bisher mit der IDE Dev-C++. Nun möchte ich aber anfangen und Programme mit einer GUI schreiben, wobei mir da VC++ in die Hände fiel (Studentenversion an der Uni ausgegeben).
Um mich mit VC++ anzufreunden habe ich eine Beispielanwendung von mir genommen und wollte diese erstmal als Win32 Konsolenprogramm kompilieren. Unter Dev-C++ läuft diese Anwendung, unter VC++ nicht.
Unter Dev-C++ mußte ich nur die mySQL Includes bekannt machen und den Linker mit der Option "-lmysql" starten. Schon rennt diese Anwendung.
Nun zu dem eigentlich Problem:
Unter VC++ 2005 geht dies nicht. Ich habe die Includes bekannt gemacht aber ich weiß nicht, wie ich dem Linker sagen kann, daß er die o.g. Option nutzt. Dann bin ich mir nicht sicher, ob ich unter VC++ überhaupt eine windows.h habe. Muss ich da eine SDK installieren?
Ich hoffe ihr könnt mir helfen. Wenn ich nichtmal ein Konsolenprogramm mit VC++ hinbekomme, wie soll ich dann eine MFC Anwendung schaffen *argh*
Danke für's lesen
ich bin noch relativ neu in der Programmierung und wahrscheinlich deshalb habe ich nun eine evtl. blöde Frage.
Bisher habe ich immer Konsolenprogramme geschrieben und bin damit eigentlich auch wunderbar klar gekommen. Die Programme schrieb ich bisher mit der IDE Dev-C++. Nun möchte ich aber anfangen und Programme mit einer GUI schreiben, wobei mir da VC++ in die Hände fiel (Studentenversion an der Uni ausgegeben).
Um mich mit VC++ anzufreunden habe ich eine Beispielanwendung von mir genommen und wollte diese erstmal als Win32 Konsolenprogramm kompilieren. Unter Dev-C++ läuft diese Anwendung, unter VC++ nicht.
Code:
/* mysql3.c */
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#if defined __WIN32__ || _MSC_VER
#include <windows.h>
#endif
#include <mysql.h>
using namespace std;
/* Wegen sehr vielen malloc()-Aufrufen im Listing
* wurde hier zur Verkürzung des Listings ein Makro
* geschrieben, welches aber keine Schule machen soll!!
*/
#define malloc(size) \
malloc(size);\
if( (size) == NULL)\
{\
printf("Kein Speicher mehr ...\n");\
return;\
}
/* Funktionsprototypen */
void check_error(void);
void verbinden(void);
void verbindung_schliessen(void);
void db_waehlen(char *);
void print_line(MYSQL_RES *);
MYSQL *mysql;
/*
* Ab hier können Sie die einzelnen Funktion der
* kommenden Seiten einfügen
*/
int main (int argc, char **argv) {
int auswahl;
char darsteller[255];
char *ptr;
printf("Baue verbindung zur Datenbank auf ...\n\n");
verbinden();
db_waehlen("dvd_archiv");
printf("Verbindung steht!\n");
system("PAUSE");
verbindung_schliessen();
return EXIT_SUCCESS;
}
/* Bricht bei Fehler (mysql_error != 0) das Programm ab */
void check_error(void) {
if (mysql_errno(mysql) != 0) {
fprintf(stderr, "Fehler: %s\n", mysql_error(mysql));
system("PAUSE");
exit(EXIT_FAILURE);
}
}
/* Baut eine Verbindung zum Datenbankserver auf.
* Passen Sie ggf. Usernamen und Passwort und, sofern
* andere Parameter benötigt werden, diese Ihren
* Umständen selbst an
*/
void verbinden(void) {
mysql=mysql_init(mysql);
check_error();
mysql_real_connect(mysql, "localhost", "root",
"", NULL, 0, NULL, 0);
check_error();
}
/* Serververbindung wieder schließen und den Speicher für die
* Struktur MYSQL wieder freigeben */
void verbindung_schliessen(void) {
mysql_close(mysql);
}
/* Falls Datenbank bei der Funktion verbinden() nicht angegeben
* wurde oder Sie die Datenbank wechseln wollen, dann verwenden
* Sie diese Funktion */
void db_waehlen(char *db) {
mysql_select_db(mysql, db);
check_error();
}
Unter Dev-C++ mußte ich nur die mySQL Includes bekannt machen und den Linker mit der Option "-lmysql" starten. Schon rennt diese Anwendung.
Nun zu dem eigentlich Problem:
Unter VC++ 2005 geht dies nicht. Ich habe die Includes bekannt gemacht aber ich weiß nicht, wie ich dem Linker sagen kann, daß er die o.g. Option nutzt. Dann bin ich mir nicht sicher, ob ich unter VC++ überhaupt eine windows.h habe. Muss ich da eine SDK installieren?
Ich hoffe ihr könnt mir helfen. Wenn ich nichtmal ein Konsolenprogramm mit VC++ hinbekomme, wie soll ich dann eine MFC Anwendung schaffen *argh*
Danke für's lesen
