1. Liebe Forumsgemeinde,

    aufgrund der Bestimmungen, die sich aus der DSGVO ergeben, müssten umfangreiche Anpassungen am Forum vorgenommen werden, die sich für uns nicht wirtschaftlich abbilden lassen. Daher haben wir uns entschlossen, das Forum in seiner aktuellen Form zu archivieren und online bereit zu stellen, jedoch keine Neuanmeldungen oder neuen Kommentare mehr zuzulassen. So ist sichergestellt, dass das gesammelte Wissen nicht verloren geht, und wir die Seite dennoch DSGVO-konform zur Verfügung stellen können.
    Dies wird in den nächsten Tagen umgesetzt.

    Ich danke allen, die sich in den letzten Jahren für Hilfesuchende und auch für das Forum selbst engagiert haben. Ich bin weiterhin für euch erreichbar unter tti(bei)pcwelt.de.
    Dismiss Notice

Hyperlink

Discussion in 'Programmieren' started by maggmich, Jan 16, 2003.

Thread Status:
Not open for further replies.
  1. maggmich

    maggmich Byte

    Hallo!
    Wie macht man im C++ Builder einen Hyperlink auf eine Internet Website?
    Mfg Jürgen
     
  2. SourceLE

    SourceLE Kbyte

    Hi...

    das sollte eigentl. ein Tipp sein, dass im MSDN zu finden. Das war wohl nix :-). Also gut. Da ich leider keine Ahnung habe was inDeinem Programm schon drin ist, kann ich Dir hier nur Beispiele geben. Im ersten wird die WinInet-API verwendet.

    #include <windows.h>
    #include <wininet.h>
    #include <stdio.h>

    void main(void)
    {
    HINTERNET hIS, hIC, hIR;
    DWORD dwBytes;
    char c;

    hIS = InternetOpen("HTTPGET", INTERNET_OPEN_TYPE_DIRECT, NULL, NULL, 0);
    hIC = InternetConnect(hIS, "www.adresse.com", INTERNET_DEFAULT_HTTP_PORT, NULL, NULL, INTERNET_SERVICE_HTTP, 0, 0);
    hIR = HttpOpenRequest(hIC, NULL, "/index.asp", NULL, NULL, NULL, 0, 0);
    if (HttpSendRequest(hIR, NULL, 0, NULL, 0))
    {
    while (InternetReadFile(hIR, &c, 1, &dwBytes))
    {
    if (dwBytes != 1) break;
    putchar(c);
    }
    }
    InternetCloseHandle(hIR);
    InternetCloseHandle(hIC);
    InternetCloseHandle(hIS);
    }

    Statt dem HTTP-Server, gehen natürl. auch FTP-/GOPHER-Server. Aber das wird Dich wahrscheinlich nicht so interessieren. In Beispiel 2 nun, das ganze über die MFC-Internet-Klassen:

    #include <afxinet.h>
    #include <iostream.h>

    void main(void)
    {
    CInternetSession is(_T("HTTPGET"));
    CHttpConnection *pHC = NULL;
    CHttpFile *pHF = NULL;
    try
    {
    pHC = is.GetHttpConnection(_T("www.adresse.com"));
    pHF = pHC->OpenRequest(_T(""), _T("/index.asp"), NULL, 0,
    NULL, NULL, 0);
    pHF->SendRequest();
    char c;
    while (pHF->Read(&c, 1) == 1) cout << c;
    pHF->Close();
    pHC->Close();
    }
    catch (CInternetException *pIE)
    {
    cout << "Internet error " << pIE->m_dwError << "." << endl;
    }
    delete pHF;
    delete pHC;
    }

    Willst Du allerdings HTML auswerten; also die URLs bearbeiten, bleibt Dir nur die Extraktion. Vereinfacht; Es gibt keine Funktion in den MFC-Klassen, mit der Du eine HTML-Verküpfung in Deiner Anwendung auswählen kannst. Jedenfalls ist mir das nicht bekannt.

    Konnte ich helfen?

    MfG & CU
    [Diese Nachricht wurde von SourceLE am 19.01.2003 | 01:03 geändert.]
     
  3. maggmich

    maggmich Byte

    Und wo gebe ich da die http: Adresse an, die anzeigen soll?
    Mfg Jürgen
     
  4. SourceLE

    SourceLE Kbyte

    Hi...

    ich nehme mal an Du meinst das...

    public HyperLink();
    ...
    void Page_Load(Object sender, EventArgs e)
    {
    HyperLink link = new HyperLink();
    }

    mehr Infos gibts hier >>> http://msdn.microsoft.com/library/default.asp

    MfG & CU
     
Thread Status:
Not open for further replies.

Share This Page