Programmera spel i C++ för nybörjare/Nätverksprogrammering

Från Wikibooks


Nätverksprogrammering[redigera]

Att programmera för nätverk kan ställa programmeraren inför mängder med problem.

  • Vilka portar kan användas?
  • Har jag kontakt med internet?
  • Kommer jag åt en databas?
  • kan jag koppla en mac med en pc över det lokala nätverket?

Osv. Här nedanför följer några hjälprutiner, anpassade (tyvärr) främst för Windows, som kan hjälpa dig just när det gäller nätverk.

Ping[redigera]

Ett enkelt sätt att se om man har kontakt med internet är kommandot "ping", i sin renaste form kan man skriva:

#include "stdafx.h"
#include <stdlib.h>
#include <iostream>
 
int _tmain(int argc, _TCHAR* argv[])
{
	bool failed=false;


	 failed = system("ping -n 1 www.example.com");	
	if (failed==true) {std::cout << "ingen kontakt";	} 
	else {std::cout << "kontakt";}


	return 0;
}


Du får upp en svart konsollruta med information om du fick kontakt eller ej. Kontakten gäller adressen "www.example.com" men får du kontakt med den adressen har du generellt kontakt med Internet. Kommandot ping har fler växlar än "-n" så det går att utöka så att det passar dina syften.

Ladda ner fil från Internet[redigera]

Ibland finns det ett behov av att ladda hem en specifik fil från Internet. Tyvärr finns det inga inbyggda kommandon för det, som t.ex. java har, men om du har en pc med Windows fungerar den här rutinen:

#include "stdafx.h"
#include <stdlib.h>
#include <iostream>
#include <string>
#include <tchar.h>
#include <urlmon.h>
#pragma comment(lib, "urlmon.lib")

int main()
{
HRESULT hr = URLDownloadToFile ( NULL, _T("http://office.microsoft.com/sv-se/images/" ), _T("c:/Temp/web_page.txt"), 0, NULL );
//Första string = adress för nedladdning, andra = filnamn inkl sökväg dit där informationen skall sparas
	return 0;
}