Visual C++ Speichern

Dieses Thema Visual C++ Speichern im Forum "Webentwicklung, Hosting & Programmierung" wurde erstellt von Don_Pazo, 21. Sep. 2005.

Thema: Visual C++ Speichern Hallo, ich habe eine Programm mit MFC (Visual C++ 6) erstellt. Es ist SDI, und es ist auf die Klasse (class...

  1. Hallo,
    ich habe eine Programm mit MFC (Visual C++ 6) erstellt. Es ist SDI, und es ist auf die Klasse (class CE_LearnView : public CHtmlView) basiert. Das Programm ist etwas enliches wie Internet Explorer nur das man in einene bestimten Link ferschiedene Optionen wählen kann, z.B. http://www.server/bla/ble/OPTIONEN
    Mann wählt die gewühnschte Option und drückt OK. Es wird das Ergebnis gezeigt wie HTML, (weil die class CE_LearnView : public CHtmlView ).

    Ich wersuche es seit lange aber leder gelingt es mir nicht die HTML Ergebniss als *.csv Datei zu speichern.

    Bitte, weist jemend wie ich HTML seite von  class CE_LearnView : public CHtmlView  als *.csv speichern kann?
     
  2. Hallo,

    mich würde erstmal interessieren, WARUM du eine HTML-Seite als .csv speichern willst?
    Bei Excel oder so würde ich das ja noch verstehen, aber eine HTML-Seite?
    Für was soll das gut sein?

    Gruss

    Reiner
     
  3. Ich brauche es, weil auf dem Server sind mehrere Tabelen. Die ich mit dem Programmchen,  mit Hilfe verschiedene ComboBox Optionen , anzeige.
    Die Tabelen kann ich aber nur als HTTP zeigen.
    Daraus volgt das ich die in *.csv oder Exel umwandeln soll damit man arbeiten kann.

    Ich hoffe das jeimand einen Rat hat, ich bin nemmlich schon hilfslos !!!
     
  4. Hallo,

    wenn ich das jetzt richtig verstanden habe, befinden sich auf den Webseiten, die du anzeigst HTML-Tabellen und du willst den Inhalt dieser Tabellen auslesen und in einer .csv-Datei speichern!

    Ist das so richtig?

    Wenn ja, kannst du dafür das ActiveX-Control des Internet-Explorer in der SHDOCVW.DLL benutzen, und so auf das Browser-Dokument zugreifen.
    So ganz einfach ist das allerdings nicht!

    Gruss

    Reiner
     
  5. Das Programm, das ich habe, fuktioniert voldendermassen:

    1. Das Programm ist mit Visual C++ (MFC) erstelt worden.

    2. Es ist SDI Anwendung, und es ist keinen TextEditor (CTextView) sondern
    HTML (CHatmlView)

    3. Wenn man auf verbindung... klickt, zeigt sich einen Dialogfenster in dem
    man:

    |Server| |................|
    |Benutzername| |................|
    |Passwort| |................|
    Statistik| |................|

    eingeben kann.

    4. Beim OK klicken, bildet die Wariable LINK ungefähr so was:
    LINK = http:// + m_strServer +//FCB.HaHa// + ........;

    5. Dann wirt die vorhandene Information als Html-Seite auf meinen Programm
    gezeigt.


    Problemmen:

    1: Ich möchte das die Information nach dem in dem Programm als HTML
    gezeigt wurde, als *.csv Datei speichern.

    Wie ich an den HTML-Code rankomme?
    Wie ich die Daten aus HTML raushole?
    Wie ich eine CSV-Datei erstelle?


    Bitte, kann mir jemand Rat geben wie ich das lösen kann ?
     
  6. CHtmlView::GetSource?
    EDIT: Ups...  Visual C++ 6. Ok, auf GetSource wärst du auch selbst gekommen :D.
    Da musst du wohl IHTMLDocument etc. verwenden. Ich melde mich später noch mit Code.
    EDIT2:
    Ok, ich habe das hier zusammengebastelt; es sollte für deine Zwecke das Richtige sein:
    Code:
    BOOL CDeineHtmlView::GetHTMLSource(CString& body)
    {
      BOOL ok= FALSE;
      HRESULT hr;
      	
      LPDISPATCH pDispatch= NULL;
      pDispatch= GetHtmlDocument();
      if(pDispatch != NULL)
      {
        IHTMLDocument2* pHtmlDocument = NULL;
        hr= pDispatch->QueryInterface(IID_IHTMLDocument2, (void**)&pHtmlDocument);		
        if(SUCCEEDED(hr) && (pHtmlDocument != NULL))
        {
          IHTMLElement* pBody= NULL;
          hr= pHtmlDocument->get_body(&pBody);
          if(SUCCEEDED(hr) && (pBody != NULL))
          {
            BSTR bsHtmlSource;
            hr= pBody->get_outerHTML(&bsHtmlSource);
            pBody->Release();
            if(SUCCEEDED(hr))
            {					
              body= bsHtmlSource;
              SysFreeString(bsHtmlSource);
              ok= TRUE;				
            }
          }
          pHtmlDocument->Release();
        }
        pDispatch->Release();
      }
      return ok;
    }
    
    (#include <mshtml.h> nicht vergessen)

    Hmm ... den HTML-Code durchsuchen? Du kennst den Aufbau ja. Es geht auch aufwendiger (siehe Reiner; in einer CHtmlView ist das Browser-Objekt zugänglich; man kann sich ein Dokumenten-Interface holen, die IHTMLElementCollection(s) zerpflücken etc., aber das ist recht aufwendig).
    Vielleicht tun es in diesem Fall ein paar Stringoperationen?

    Z.B. alles in einem String zusammenbauen (oder die einzelnen Zeilen in einer CStringList o.ä. ablegen) und dann per CFile in eine Datei schreiben.
     
Die Seite wird geladen...

Visual C++ Speichern - Ähnliche Themen

Forum Datum
Digittrade DVB-T Stick Visual C++ Runtime Fehler Windows 7 Forum 25. Okt. 2014
fehlermeldung von visual c++ runtime library Windows XP Forum 23. Nov. 2011
Probleme mit Visual C++ Windows XP Forum 27. Okt. 2011
Visual C++ 2005 x86/x64 Error 1935 Software: Empfehlungen, Gesuche & Problemlösungen 13. Juni 2011
Visual Studio 2010 und .NET Framework 4 Beta 2 Windows XP Forum 5. Nov. 2009