Obrazki w C++!? plz help

0

Witam zaczne moze od tego ze nie jestem zaawanasowanym programista c++ ale mam pewien problem i musze go rozwiazac.

Chodzi mi o napisanie prostego winshitowskiego (czyt. windowsowego) programu w C++ ktory by pobieral z jakiejs stronki obrazek i wyswietlal go w programie.

Załóżmy ze www.xx.pl/foto/zdjecie.jpg jest moje zdjecie, a ja teraz chce napisac program po odpaleniu ktorego wyswietli sie wlasnie moje foto. Ale gdy podmienie foto na www.xx.pl/foto/zdjecie.jpg, to foto w programie rowniez ma sie zmienic.

Najlepiej byloby jak by ktos wstawil mi w odpowiedzi kawalek kodu, zawsze latwiej z niego sie nauczyc niz z jakis drobnych podpowiedzi. Dzieki i pozdrawiam cale forum!

0

Stwórz sobie połączenie socketami (zakładając, że piszesz korzystając z API a nie komponentów w środowiskach), przykładowo pobierz protokołem HTTP plik i wyświetl w swoim programie.. Nie widzę w tym problemu.

P.S. Nie wyglądasz z takimi pytaniami na zaawansowanego programistę, ale może się mylę. :)

//przecież napisał, że nim nie jest ;) - M
//chciałem podkreślić, że widać po tym co napisał - nie musi pisać osobno ;P - S

0

Tak komentarzem do protokołu HTTP (to jest w tych linkach, ale tak podsumowując): nagłówek może mieć zmienną długość, ale cechą charakterystyczną jest to, że kończy się pustą linią, po której następuje obszar danych. Jego długość określona jest w bajtach nagłówku linią Content-Lenght.

Twoje zamówienie powinno wyglądać tak (chcemy dla przykładu pobrać plik strony powitalnej [4P] www.4programmers.net):

  1. (połącz się do serwera np.: www.4programmers.net, port 80 - dla przykładu z linii komend telnet www.4programmers.net 80)

  2. Wyślij komendę (/ oznacza katalog główny - serwer HTTP w takim przypadku poszukuje plików w stylu index.html, jak chcesz jakiś konkretny to podaj jego nazwę):

GET / HTTP/1.0\n
\n
  1. Spodziewaj się opdowiedzi w formacie (pierwsza linia: HTTP/1.1 to protokół w jakim udzielono odpowiedzi, 200 to kod błędu OK, "OK" to słowny opis błędu - dla użytkownika):
HTTP/1.1 200 OK\n
Parametry: Wartości\n
Content-Length: N\n
Parametry: Wartości\n
\n
<N bajtów danych>
  1. Ostatecznie serwer zrywa połączenie.

P.S. Być może \n powinno mieć postać \n\r - trzeba by zajrzeć do specyfikacji HTTP.

//zostało to omówione w wątku, który podałem - M

1 użytkowników online, w tym zalogowanych: 0, gości: 1