Register for your free account! | Forgot your password?

Go Back   elitepvpers > Coders Den > C/C++
You last visited: Today at 03:52

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

Advertisement



C++ mit SQL verbinden?

Discussion on C++ mit SQL verbinden? within the C/C++ forum part of the Coders Den category.

Reply
 
Old 02/17/2011, 17:55   #16


 
MrSm!th's Avatar
 
elite*gold: 7110
Join Date: Jun 2009
Posts: 28,902
Received Thanks: 25,407
Nein, du kannst eine Variable nicht 3.4 nennen.

Eine Funktion GETURLPAGE ist mir nicht bekannt und übrigens, warum nutzt du sprintf, um eine statische URL in den Buffer zu kopieren?
Schreib doch gleich:
Code:
char URL_V[] = "hier die url";
MrSm!th is offline  
Old 02/17/2011, 18:00   #17

 
Deda94's Avatar
 
elite*gold: 21
Join Date: Nov 2010
Posts: 2,062
Received Thanks: 2,320
Hier die GETURLPAGE Funktion...

Code:
int GETURLPAGE(char *link, char *buffer, int maxsize)
{
  HINTERNET hSession;  
  HINTERNET hURL;
  DWORD dwBYTEsRead;
  int   ok;

  ok=0;
  buffer[0]=0;
  hSession = InternetOpen(                         // Make internet connection.
                  "Microsoft Internet Explorer",   // agent
                  INTERNET_OPEN_TYPE_PRECONFIG,    // access
                  NULL, NULL, 0);                  // defaults
  if (hSession) {
	  hURL = InternetOpenUrl(  // Make connection to desired page.
             hSession,                        // session handle
             link,                             // URL to access
             NULL, 0, 0, 0);                 // defaults
      if (hURL) {
          // Read page into memory buffer.
          InternetReadFile(
                hURL,                // handle to URL
                (LPSTR)buffer,       // pointer to buffer
                (DWORD)maxsize,      // size of buffer
                &dwBYTEsRead);       // pointer to var to hold return value

          // Close down connections.
          InternetCloseHandle(hURL);
          buffer[dwBYTEsRead]=0;     // end string
          ok=(int)dwBYTEsRead;
      }

      InternetCloseHandle(hSession);
  }
  return ok;
}
Ok ausser das mit sprintf hast du mir nicht viel geholfen xD


Also wie die Funktion ist, würde sie dann die Version abfragen?
Deda94 is offline  
Old 02/17/2011, 19:06   #18


 
MrSm!th's Avatar
 
elite*gold: 7110
Join Date: Jun 2009
Posts: 28,902
Received Thanks: 25,407
Quote:
Originally Posted by ToxicLibrary™ View Post
Ok ausser das mit sprintf hast du mir nicht viel geholfen xD
woran das wohl liegen mag...
Ich habe außerdem schonmal deinen Code dazu gebracht, dass er kompiliert werden kann
Quote:
Also wie die Funktion ist, würde sie dann die Version abfragen?
Die Funktion CheckVersion? Ja, sie sollte funktionieren.
MrSm!th is offline  
Old 02/17/2011, 19:15   #19

 
Deda94's Avatar
 
elite*gold: 21
Join Date: Nov 2010
Posts: 2,062
Received Thanks: 2,320
Aber was mir fehlt ist das er vergleicht... Dort steht nirgendwo was er für einen Text checken soll..


...Stimmt hast mir mal geholfen xD.. war i-was mit L i-wo davor setzen oder? ^^
Deda94 is offline  
Old 02/18/2011, 10:22   #20


 
MrSm!th's Avatar
 
elite*gold: 7110
Join Date: Jun 2009
Posts: 28,902
Received Thanks: 25,407
Du würdest dann einfach schreiben:

Code:
bool IsOwnVersion = false;
bool VersionChecked = false;
char OwnVersion[] = "3.4";

void CheckVersion()
{
    if (!VersionChecked)
    {
        sprintf(szURL_V, "httü://TEST.DE/versionTEST.txt");
        if(GETURLPAGE(szURL_V, VersionResult, 256) != 0)
        {
            if(strcmp(VersionResult, OwnVersion) == 0)
                IsOwnVersion = true;
        }
        else
        {
            ExitProcess(0);
        }
        VersionChecked = true;
    }
}
Wenn du in deiner Version.txt nur die Version und nichts anderes drin hast, sollte es so klappen.
Du vergleichst eben den Text mit OwnVersion und falls er gleich ist, wird IsOwnVersion (vorher 3.4) auf true gesetzt.
Und wenn das true ist, kannst du machen, was auch immer du machen willst, wenn die Versionen gleich sind.
Ich würde aber lieber die globale Variable IsOwnVersion entfernen und die CheckVersion zu bool machen. Dann gibst du in dem Fall true zurück, anstatt eine globale Variable auf true zu setzen, ist ein besserer Stil.

Nein, das war nicht das mit dem L, man kann Variablen nicht "3.4" nennen!
MrSm!th is offline  
Old 02/18/2011, 13:18   #21

 
Deda94's Avatar
 
elite*gold: 21
Join Date: Nov 2010
Posts: 2,062
Received Thanks: 2,320
Alles perfekt und richtig...

Was zum Teufel sollen diese 2 Fehler?

Code:
1>cBase.obj : error LNK2001: Nicht aufgelöstes externes Symbol ""public: int __thiscall Checker::CheckActive(void)" (?CheckActive@Checker@@QAEHXZ)".
1>C:\Users\Toxic\Desktop\Toxic VIP\Release\Toxic.dll : fatal error LNK1120: 1 nicht aufgelöste externe Verweise.

Die Class:

Code:
#ifndef _ACTIVECHECKER_H
#define _ACTIVECHECKER_H


#include <windows.h>
#include <wininet.h>
#include <winsock.h>
#include <urlmon.h>
#pragma comment(lib, "wininet.lib")
#pragma comment(lib, "wsock32.lib")
#pragma comment(lib, "urlmon.lib")

class Checker
{
public:
	BOOL CheckActive();
	INT GETURLPAGE();
private:
	CHAR * GetDirectoryFile(char *filename);
};

#endif

Die Funktionen:

Code:
#include <windows.h>
#include <stdio.h>
#include <string.h>
#include <fstream>
#include <stdio.h>
#include <time.h>
#include "activechecker.h"

int Checker::GETURLPAGE(char *link, char *buffer, int maxsize)
{
  HINTERNET hSession;  
  HINTERNET hURL;
  DWORD dwBYTEsRead;
  int   ok;

  ok=0;
  buffer[0]=0;
  hSession = InternetOpen(                         // Make internet connection.
                  "Microsoft Internet Explorer",   // agent
                  INTERNET_OPEN_TYPE_PRECONFIG,    // access
                  NULL, NULL, 0);                  // defaults
  if (hSession) {
	  hURL = InternetOpenUrl(  // Make connection to desired page.
             hSession,                        // session handle
             link,                             // URL to access
             NULL, 0, 0, 0);                 // defaults
      if (hURL) {
          // Read page into memory buffer.
          InternetReadFile(
                hURL,                // handle to URL
                (LPSTR)buffer,       // pointer to buffer
                (DWORD)maxsize,      // size of buffer
                &dwBYTEsRead);       // pointer to var to hold return value

          // Close down connections.
          InternetCloseHandle(hURL);
          buffer[dwBYTEsRead]=0;     // end string
          ok=(int)dwBYTEsRead;
      }

      InternetCloseHandle(hSession);
  }
  return ok;
}

BOOL Checker::CheckActive()
{
	char OwnVersion[] = "3.4";
	char szURL_V[256];
	char VersionResult[256];

        sprintf(szURL_V, "http://*ZENSIERT*.de/version/version.txt");
        if(GETURLPAGE(szURL_V, VersionResult, 256) != 0)
        {
            if(strcmp(VersionResult, OwnVersion) == 0);
        }
        else
        {
            ExitProcess(0);
        }
    }

CHAR * Checker::GetDirectoryFile(char *filename){
	static char path[320];
	strcpy(path, dlldir);
	strcat(path, filename);
	return path;
}

Der Fehler ist ekelhaft, angeblich nicht aufgelöste Verweise O.o

Deda94 is offline  
Reply


Similar Threads Similar Threads
[HP] mit [DB] verbinden , wie?
01/20/2011 - Metin2 Private Server - 3 Replies
Guten Morgen Liebe Com Ich möchte meine HP mit der Db verbinden . Momentan steht auf der Hp Seite :Verbindung zur Datenbank fehlgeschlagen: Abbruch Was muss ich tun? Danke
PC mit TV verbinden x)
11/03/2010 - Technical Support - 13 Replies
Wie geht das bzw. welche Programme/Kabel brauche ich dafür? Ich weiß, Google, aber 90% von diesen Spezialbezeichnungen versteh ich nicht, PC-Depp unso xD
mit mc.exe verbinden?
08/12/2010 - Metin2 Private Server - 1 Replies
Heyho, ich habe ein Problem. Ich spiele zurzeit mit dem Neonblue-Client , aber kann NUR mit dem Multistarter bzw. diesem Surafenster das spiel starten. Wenn ich auf mc.exe klicke und sich Metin öffnet und ich mich einloggen will, kommt direkt Fehler beim Verbinden. Einige verbinden nur mit der mc.exe, wie macht man das? ps: ip ist in mc.txt drin
UGC verbinden
07/03/2010 - WarRock - 5 Replies
HI ich hab 2 mal 10 ugc und möchte mir jetzt so ein 19.95$ packet holen. Aber wie kann ich die beiden ugc miteinander verbinden?
PS2 mit PC verbinden?
03/05/2007 - Consoles - 2 Replies
Da meine alte PS2 flöten gegangen ist hab ich mit am WE ne neue im Mediamarkt gekauft, als ich hintendraufschaute, sah ich dass sie auch nen LAN anschluss hat, jetz wollte ich wissen ob es möglich ist die PS2 mit dem PC zu verbinden sodass man Spiele von der Festplatte aus starten kann, ist sowas in der art möglich? MFG DarkVenom



All times are GMT +1. The time now is 03:52.


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.