Register for your free account! | Forgot your password?

Go Back   elitepvpers > Coders Den > C/C++
You last visited: Today at 04:05

  • Please register to post and access all features, it's quick, easy and FREE!

Advertisement



[c++] kleines Programm

Discussion on [c++] kleines Programm within the C/C++ forum part of the Coders Den category.

Reply
 
Old   #1
 
elite*gold: 0
Join Date: Jul 2011
Posts: 44
Received Thanks: 5
[c++] kleines Programm

Hallo liebe E-Pvp- Community,
da ich mir ein wenig c++ aneignen wollte, habe ich mir vorgenommen mit einem kleinen Programm eine Datenbank auszulesen. Nun taucht aber bei mir ein Fehler auf, den ich nicht selbst lösen kann und weis auch nicht wie.
Ich bin gerade dabei erst einmal eine Verbindung zur Datenbank aufzubauen.


Zum Programm (mit VS2013 geschreiben):
- Konsolenanwendung
- mysql.h wurde schon im Includeverzeichniss hinzugefügt
- Lib wurde auch schon im Bibliotheksverzeichniss hinzugefügt

connecotion.h

conn.h

conn.cpp

Fehler


MFG Nick

P.S. ja die Kommentare sind ein bisschen albern...
callinq is offline  
Old 01/09/2014, 21:15   #2

 
snow's Avatar
 
elite*gold: 724
Join Date: Mar 2011
Posts: 10,479
Received Thanks: 3,318
Das sieht so aus als ob da der Include, der SOCKET definiert, nicht gefunden wird.

Funktioniert es, wenn du
Code:
#include <WinSock2.h>
vor
Code:
#include <mysql.h>
setzt?

Noch ein paar Tipps:
cstdlib - der c-Präfix deklariert die C-Funktionen im std-namespace, du solltest also der Korrektheit halber std::exit(1); verwenden
fprintf(stderr, "%s\n", mysql_error(conn)); - std::cerr << mysql_error(conn) funktioniert ebenfalls und du musst dich nicht mit korrekten Formatierung rumärgern.
snow is offline  
Thanks
1 User
Old 01/09/2014, 21:27   #3
 
elite*gold: 0
Join Date: Jul 2011
Posts: 44
Received Thanks: 5
Ich danke dir erst einmal, hab das schon geändert im Code, sieht auch schon viel besser aus und danke für die Tipps.
Allerdings wenn ich "#include <WinSock2.h>" vor den Mysql include setze, bekomme ich einen neuen Fehler, mit dem ich wieder nichts anfangen kann.

neuer Fehler


MFG Nick
callinq is offline  
Old 01/09/2014, 21:31   #4
 
elite*gold: 1000
Join Date: Apr 2012
Posts: 1,003
Received Thanks: 208
mysql libs einbinden
qkuh is offline  
Thanks
1 User
Old 01/09/2014, 21:31   #5

 
snow's Avatar
 
elite*gold: 724
Join Date: Mar 2011
Posts: 10,479
Received Thanks: 3,318
Der Linker kann die von dir aufgerufenen Funktionen nicht finden. Der Include <mysql.h> hat zwar die Funktionen deklariert, die Implementierung ist aber wahrscheinlich in einer .lib (oder?), die musst du ebenfalls einbinden. Das geht unter Eigenschaften -> VC++-Verzeichnisse -> Bibliotheksverzeichnisse -> Bearbeiten und dort dann auf den Pfad deiner mysql.lib verlinken.

Wenn du gerade anfängst, C++ zu lernen, kann es sicherlich nicht schaden, wenn du dir mal die Zusammenhänge beim Kompilieren anschaust, so kann man viele Fehler vermeiden.
snow is offline  
Thanks
1 User
Old 01/09/2014, 21:38   #6
 
elite*gold: 0
Join Date: Jul 2011
Posts: 44
Received Thanks: 5
Quote:
Originally Posted by snow911 View Post
Der Linker kann die von dir aufgerufenen Funktionen nicht finden. Der Include <mysql.h> hat zwar die Funktionen deklariert, die Implementierung ist aber wahrscheinlich in einer .lib (oder?), die musst du ebenfalls einbinden. Das geht unter Eigenschaften -> VC++-Verzeichnisse -> Bibliotheksverzeichnisse -> Bearbeiten und dort dann auf den Pfad deiner mysql.lib verlinken.

Wenn du gerade anfängst, C++ zu lernen, kann es sicherlich nicht schaden, wenn du dir mal die Zusammenhänge beim Kompilieren anschaust, so kann man viele Fehler vermeiden.
Quote:
Originally Posted by qkuh View Post
mysql libs einbinden
Danke euch beiden schonmal, aber die Lib hatte ich schon von vornerein mit eingebunden. Habs nur vergessen zu sagen. Tut mir leid.






Quote:
Originally Posted by snow911 View Post

Noch ein paar Tipps:
cstdlib - der c-Präfix deklariert die C-Funktionen im std-namespace, du solltest also der Korrektheit halber std::exit(1); verwenden
fprintf(stderr, "%s\n", mysql_error(conn)); - std::cerr << mysql_error(conn) funktioniert ebenfalls und du musst dich nicht mit korrekten Formatierung rumärgern.
Dadurch kann dann "#include <cstdlib>" weggelassen werden, oder?

MFG Nick
callinq is offline  
Old 01/10/2014, 03:56   #7

 
Delinquenz's Avatar
 
elite*gold: 0
Join Date: Jan 2009
Posts: 1,160
Received Thanks: 232
Quote:
Dadurch kann dann "#include <cstdlib>" weggelassen werden, oder?
Ja, sofern du keine andere Funktion daraus benutzt.

Lern C++ mit einem Buch - ein Tipp von mir.
Delinquenz is offline  
Old 01/11/2014, 13:53   #8


 
elite*gold: 1091
Join Date: Jun 2007
Posts: 19,836
Received Thanks: 7,180
Quote:
Originally Posted by Bananex45 View Post
Danke euch beiden schonmal, aber die Lib hatte ich schon von vornerein mit eingebunden. Habs nur vergessen zu sagen. Tut mir leid.








Dadurch kann dann "#include <cstdlib>" weggelassen werden, oder?

MFG Nick
Und trotzdem findet er die .lib nicht? Sind die auch garantiert dort in dem Ordner vorhanden? Ansonsten mal explizit linken (das hat mir mal bei einer anderen Library geholfen)

Projekteigenschaften -> Linker -> Eingabe - Zusätzliche Abhängigkeiten und dort die Namen der jeweiligen Librarys (mit .lib) hinzufügen.
Mostey is offline  
Thanks
1 User
Old 01/11/2014, 22:49   #9


 
MrSm!th's Avatar
 
elite*gold: 7110
Join Date: Jun 2009
Posts: 28,902
Received Thanks: 25,407
Quote:
Originally Posted by Mostey View Post
Und trotzdem findet er die .lib nicht? Sind die auch garantiert dort in dem Ordner vorhanden? Ansonsten mal explizit linken (das hat mir mal bei einer anderen Library geholfen)

Projekteigenschaften -> Linker -> Eingabe - Zusätzliche Abhängigkeiten und dort die Namen der jeweiligen Librarys (mit .lib) hinzufügen.
Natürlich muss die Lib explizit gelinkt werden. Die erstgenannte Einstellung fügt lediglich das Verzeichnis zu denen hinzu, in denen nach Libs gesucht wird.
Danach muss man entweder über die nun von dir genannte Einstellung oder mithilfe von
Code:
#pragma comment(lib, "libname")
die Lib linken.
MrSm!th is offline  
Thanks
1 User
Old 01/12/2014, 00:16   #10
 
elite*gold: 0
Join Date: Jul 2011
Posts: 44
Received Thanks: 5
Quote:
Originally Posted by Mostey View Post
Und trotzdem findet er die .lib nicht? Sind die auch garantiert dort in dem Ordner vorhanden? Ansonsten mal explizit linken (das hat mir mal bei einer anderen Library geholfen)

Projekteigenschaften -> Linker -> Eingabe - Zusätzliche Abhängigkeiten und dort die Namen der jeweiligen Librarys (mit .lib) hinzufügen.
Quote:
Originally Posted by MrSm!th View Post
Natürlich muss die Lib explizit gelinkt werden. Die erstgenannte Einstellung fügt lediglich das Verzeichnis zu denen hinzu, in denen nach Libs gesucht wird.
Danach muss man entweder über die nun von dir genannte Einstellung oder mithilfe von
Code:
#pragma comment(lib, "libname")
die Lib linken.
Danke erstmal euch beiden. Dennoch klappt es immernoch nicht, es wird immernoch der gleiche Fehler angezeigt.Allerdings haben all eure Tipps mich schon ein wenig weiter gebracht.

MFG Nick

EDIT:

Problem gelöst qkuh hat mir geholfen...

Lösung:
die libs sind für 64bit gedacht und das projekt ist 32bit.
Sowas wusste ich nicht, aber danke nochmal an qkuh.

MFG Nick
callinq is offline  
Old 01/13/2014, 15:16   #11


 
elite*gold: 1091
Join Date: Jun 2007
Posts: 19,836
Received Thanks: 7,180
Quote:
Originally Posted by Bananex45 View Post
Danke erstmal euch beiden. Dennoch klappt es immernoch nicht, es wird immernoch der gleiche Fehler angezeigt.Allerdings haben all eure Tipps mich schon ein wenig weiter gebracht.

MFG Nick

EDIT:

Problem gelöst qkuh hat mir geholfen...

Lösung:
die libs sind für 64bit gedacht und das projekt ist 32bit.
Sowas wusste ich nicht, aber danke nochmal an qkuh.

MFG Nick
Und das lag wirklich am Projekt? ;O

Meinst du nicht eher das Betriebssystem?

Quote:
Originally Posted by MrSm!th View Post
Natürlich muss die Lib explizit gelinkt werden. Die erstgenannte Einstellung fügt lediglich das Verzeichnis zu denen hinzu, in denen nach Libs gesucht wird.
Danach muss man entweder über die nun von dir genannte Einstellung oder mithilfe von
Code:
#pragma comment(lib, "libname")
die Lib linken.
Muss sie nicht. Es gibt Auto-Linker.

Natürlich gibt's die nicht in allen Libs aber boost bietet zum Beispiel sowas an und macht das auch standardmäßig.
Mostey is offline  
Reply


Similar Threads Similar Threads
[S] Kleines Programm
07/23/2013 - elite*gold Trading - 3 Replies
Hallo, suche ein Programm das folgendes machen soll: Es soll 2 Buttons geben. Einmal View Page-->Öffnen der Seite Pietsmiet.tv Und einmal Start Zarfirbel Bot-->Enter drücken--> pietsmiet.tv schreiben --> Enter drücken, das ganze in einem Abstand von 3-5 Minuten. Das ganze soll dan Zarfirbel-Bot heißen. Evtl. Als Design das PietSmiet Zeichen. Zahle bis zu 100 E*G. Ich möchte die Rechte an dem Bot haben.
[S]Kleines VB Programm
09/18/2012 - Coders Trading - 2 Replies
Hallo, Ich suche ein kleines VB Programm. Undzwar brauche ich einen in VB intigrierten Browser wo ich mit 1 Klick die IP ändern und die Browser Cache leeren kann. Hoffe mir kann da jemand weiterhelfen. Sollte alles Funktionieren würde ich auch 60-70e*Gold dafür zahlen..
[RELEASE]Kleines Map Programm
01/05/2012 - Metin2 PServer Guides & Strategies - 14 Replies
#removed
[S] ein kleines Tool, Programm
03/07/2011 - General Coding - 1 Replies
Hey & Hallo :P Kann einer von euch ein Tool schreiben, was 11 Sekunden lang die ganze Zeit linksklick drückt ,also so ganz schnell ? Ich suche so eins mal :D Würde mich freuen , lg.
Kleines Playspan Programm
06/23/2010 - WarRock - 12 Replies
Hey Leute. Ich habe für euch einen Playspan Programm gecodet. Erstmal der Screen: http://img651.imageshack.us/img651/3105/playspanpr ogrammby67bea.jpg Downloadlinks: Von Uploaded Von Rapidshare



All times are GMT +1. The time now is 04:06.


Powered by vBulletin®
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
SEO by vBSEO ©2011, Crawlability, Inc.
This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.

Support | Contact Us | FAQ | Advertising | Privacy Policy | Terms of Service | Abuse
Copyright ©2025 elitepvpers All Rights Reserved.