Panel użytkownika
Nazwa użytkownika:
Hasło:
Nie masz jeszcze konta?

Visual Studio, C++, WebBrowser, Źródło strony

Ostatnio zmodyfikowano 2018-03-02 17:03
Autor Wiadomość
mirik
Temat założony przez niniejszego użytkownika
Visual Studio, C++, WebBrowser, Źródło strony
» 2018-02-26 10:42:31
Witam.
Potrafię korzystać-użyć w swoim kodzie przeglądanie stron internetowych przy użyciu WebBrowser, różne możliwości . Nie potrafię natomiast znaleźć sposobu na wczytanie np. do TexBox kompletnego 'źródła strony' strony z internetu, pełnego kodu html. Wiem, że jest to możliwe.

Dla porównania potrafię obsługiwać protokoły pobierania-zapisu-wysyłania pod FTP. Natomiast wczytać pełne 'źródło strony' -nie mogę znaleźć sposobu.
Czy mógłby ktoś doradzić coś konkretnego w tym temacie ?
P-169617
DejaVu
» 2018-02-26 20:57:40
Weź bibliotekę np. libcurl i po prostu wykonaj requesta, który pobierze Ci zawartość strony.
P-169631
mirik
Temat założony przez niniejszego użytkownika
» 2018-02-26 23:12:13
Łatwo powiedzieć.. czy mógłbym prosić o jakiś prosty-najprostszy przykład kodu. Bo nic mi nie wychodzi, nie wiadomo jak to ugryźć, za diabła. Pozdrawiam
P-169638
DejaVu
» 2018-02-26 23:19:50
P-169639
mirik
Temat założony przez niniejszego użytkownika
» 2018-02-27 00:06:25
Dzięki za odzew. Niełatwy chleb...
P-169640
mirik
Temat założony przez niniejszego użytkownika
» 2018-03-01 18:14:51
Nadal drążę temat.
Znalazłem sposób na wczytanie źródła strony -działa OK, ale w kosoli.. Zamieszczam poniżej kod dla potrzebujących (Visual Studio, C++, projekt: konsola).

C/C++
//  Próba wczytania stony html   = OK

#include <urlmon.h>
#include <iostream>
#include <string>

#pragma comment(lib, "urlmon.lib")

using namespace std;

void Pobierz( string AdrStrony, string Plik_Zapis )
{
    string AdrStr = AdrStrony;
    string PlikZapisz = Plik_Zapis;
   
    if( URLDownloadToFileA( NULL, AdrStr.c_str(), PlikZapisz.c_str(), 0, NULL ) == S_OK )
    { cout << "  plik : " << AdrStrony << "    pobrany OK. \n \n"; } // =zakończone pomyślnie 
    else { cout << "  pliku : " << AdrStrony << "\n \n \n     NIE udalo sie pobrac. NIESTETY... \n \n"; }
}

int main()
{
    string AdresStrony;
    string PlikZapisu;
   
    AdresStrony = "https://www.wp.pl"; // przykładowy adres strony z internetu
   
    cout << endl;
    cout << "  Moja testowana strona internetowa:   " + AdresStrony;
    cout << endl;
   
    PlikZapisu = "C:/Users/Wind7/Desktop/NowyPusty.txt"; // plik wynikowy, wypełniony kodem źródła strony html, =tu jako .txt
   
    cout << endl << "  Folder docelowy i plik:  pulpit -> Pusty.txt " << endl << endl;
    cout << endl << endl << "     -Czekaj, trwa pobieranie pliku - " << endl << endl;
    Pobierz( AdresStrony, PlikZapisu );
   
    cout << endl;
    system( "pause" );
}

Czy potafiłby ktoś teraz, na tym etapie pomóż-podpowiedzieć: edytor okienkowy Visual Studio`2013 nie przyjmuje składni najważniejszej linii kodu:
C/C++
if( URLDownloadToFileA( NULL, AdrStr.c_str(), PlikZapisz.c_str(), 0, NULL ) == S_OK )
Pytanie: jak poprawnie powyższy kod przenieść do edytora 'okienkowego' C++ Visual Studio, dla bezbłędnego przyjęcia i debugowania.. ?
Proszę o pomoc..
P-169674
geceves
» 2018-03-02 08:50:26

nie przyjmuje składni
Zgodnie z ilością udzielonych informacji o problemie: to musisz zrobić tak żeby przyjął. Jaki dokładnie błąd występuje?

P-169676
mirik
Temat założony przez niniejszego użytkownika
» 2018-03-02 16:25:46
Już po problemie. Przeskoczone.. już poprawnie potrafię wczytać dowolną stronę www do textBoxa;  z pominięciem WebBrowser. Prostszy sposób: 'URLDownloadToFileA'.
Składnia -w okienkowym VisualStudio- musi być inna niż pod konsolę. Skuteczne lekarstwo: LPCSTR; użyłem m.in.: 'LPCSTR AdresStrony'.
Dużo czasu straciłem -ale bylo warto..
Proponuję zamknąć temat
P-169684
« 1 » 2
  Strona 1 z 2 Następna strona