Wie stelle ich bei C++ den zweiten Punkt an?

Also ich soll das machen:

  • Add the following statement in your dialog’s header file or if its a doc/view project, then add it to your document class’s header file.
    Collapse

#include „afxinet.h“


  • In the header file ( dialog’s or document class’s ), add the following Member Variables
    Collapse

CFtpConnection *m_pFtpConnection;
CInternetSession m_Session;

Nun hab ich mir ein header File angelegt also eine Datei mit dem Namen afxinet.h und in der cpp Datei hab ich #include „afxinet.h“ geschrieben.
Nun kommt in der h datei das die se CFtp… falsch bzw. nicht Definiert sind. Wie soll ich dies dann nur anstellen?
Ab da hab ich probleme… bin schon jede Menge Tutorial am durchstöbern und Lerne gerade nur für C und Cpp …

Das hast Du glaube ich falsch verstanden. Ich denke die Datei „afxinet.h“ existiert bereits (wenn ich mich nicht irre eine MFC Klasse). Du sollst eine eigene Header Datei erstellen und dort die „afxinet.h“ includieren.

Hi Dennis.
Könntest du noch ein paar mehr Infos geben, um was es geht?
So kann ich dir nur allgemein sagen:
Du sollst eine bestimmte Klasse in dein Projekt einbinden.
Diese soll in der Datei afxinet.h definiert werden.
Da bringt es nichts, wenn du die Datei nur anlegst. du musst auch die Klasse oder die Funktionen definieren.
Gruß
re-G

Also ich hab mich auf die Webseite http://www.codeproject.com/KB/IP/ftpByVGirish.aspx bezogen ich möchte genau das erlernen aber irgentwie bekomm ich das nicht hin…

Also ich soll das machen:

  • Add the following statement in your dialog’s header file or
    if its a doc/view project, then add it to your document
    class’s header file.
    Collapse

#include „afxinet.h“


  • In the header file ( dialog’s or document class’s ), add the
    following Member Variables
    Collapse

CFtpConnection *m_pFtpConnection;
CInternetSession m_Session;

Nun hab ich mir ein header File angelegt also eine Datei mit
dem Namen afxinet.h und in der cpp Datei hab ich #include
„afxinet.h“ geschrieben.
Nun kommt in der h datei das die se CFtp… falsch bzw. nicht
Definiert sind. Wie soll ich dies dann nur anstellen?
Ab da hab ich probleme… bin schon jede Menge Tutorial am
durchstöbern und Lerne gerade nur für C und Cpp …

Verstehe ich das richtig, daß Dein Compiler die Datei afxinet.h
nicht findet?

das Include-Statement kann man in zwei Varianten schreiben:

#include „datei“
#include

Die Variante mit den Gänsefüßchen „“ sucht nur im aktuellen
Verzeichnis, die Variante mit in den Verzeichnissen, die in
der -I (da stehen die Include-Pfade) Option des Compilers
angegeben sind. Fehlt da etwa der Pfad?

Leider hast Du nicht angegeben, welchen Compiler Du benutzt.
aber wenn’s der GCC ist, dann findest Du mehr Info, wenn Du im
Terminal ‚info gcc‘ eingibst und die Command Options mal
durchliest.

ich benutze Microsoft Visual c++ Express alles Standart einstellungen…

Also ich fang mal von vorne an:

  1. Öffnen des Programms
  2. Neues Projekt…
  3. Klick auf Leeres Projekt und geb den Name ein (FTPProgramm)
  4. Klick auf OK
  5. Rechts Klick auf Projektmappen Explorer auf FTPProgramm
  6. Hinzufügen -> Neues Element
  7. Auswahl von der Datei .cpp
  8. Name eingeben: main und auf Hinzufügen drücken
  9. In dieser Datei (main.cpp) schreibe ich #include „afxinet.h“
  10. Teste dies indem ich das Debugging Starte.

Jetzt erhalte ich natürlich eine Fehlermeldung weil die Datei nicht im Ordner Headerdateien Ordner ist.

Nun änder ich den Inhalt der main.cpp Datei in:
#include
um zu Testen ob es dann klappt.
Aber nein, selbe Fehlermeldung: No such file or directory

Nun werde ich die afxinet.h Datei anlegen:

  1. Im Projektmappen-Explorer auf FTPProgramm Rechtklicken
  2. Hinzufügen -> Neues Element
  3. Headerdatei (.h) auswählen und Name geben (afxinet.h)
  4. Auf Hinzufügen klicken.
  5. Nun gebe ich in die afxinet.h Datei den Code
    CFtpConnection *m_pFtpConnection;
    CInternetSession m_Session;
    ein.

Jetzt wird er mir Rot angestrichen!
Ab da komme ich auch nicht weiter.

Die main.cpp Datei sieht nun auch so aus:
#include „afxinet.h“

Ich klick auf Debugging

Ausgabe:
1>------ Erstellen gestartet: Projekt: FTPProgramm, Konfiguration: Debug Win32 ------
1> main.cpp
1>c:\dokumente und einstellungen\d\eigene dateien\visual studio 2010\projects\ftpprogramm\ftpprogramm\afxinet.h(1): error C2143: Syntaxfehler: Es fehlt ‚;‘ vor ‚*‘
1>c:\dokumente und einstellungen\d\eigene dateien\visual studio 2010\projects\ftpprogramm\ftpprogramm\afxinet.h(1): error C4430: Fehlender Typspezifizierer - int wird angenommen. Hinweis: „default-int“ wird von C++ nicht unterstützt.
1>c:\dokumente und einstellungen\d\eigene dateien\visual studio 2010\projects\ftpprogramm\ftpprogramm\afxinet.h(1): error C4430: Fehlender Typspezifizierer - int wird angenommen. Hinweis: „default-int“ wird von C++ nicht unterstützt.
1>c:\dokumente und einstellungen\d\eigene dateien\visual studio 2010\projects\ftpprogramm\ftpprogramm\afxinet.h(2): error C2146: Syntaxfehler: Fehlendes ‚;‘ vor Bezeichner ‚m_Session‘
1>c:\dokumente und einstellungen\d\eigene dateien\visual studio 2010\projects\ftpprogramm\ftpprogramm\afxinet.h(2): error C4430: Fehlender Typspezifizierer - int wird angenommen. Hinweis: „default-int“ wird von C++ nicht unterstützt.
1>c:\dokumente und einstellungen\d\eigene dateien\visual studio 2010\projects\ftpprogramm\ftpprogramm\afxinet.h(2): error C4430: Fehlender Typspezifizierer - int wird angenommen. Hinweis: „default-int“ wird von C++ nicht unterstützt.
========== Erstellen: 0 erfolgreich, Fehler bei 1, 0 aktuell, 0 übersprungen ==========

OK, jetzt glaube ich, hab ich’s begriffen.

Erst einmal soltest Du verstehen, daß, bevor der Compiler läuft,
eine Precompiler-Phase durchlaufen wird, in der sämtliche #-
Daraus erstellt der Precompiler eine große Datei, in der alle
Includes, Makrros usw. drinstehen.

In Der Date, die Du Deinem Compiler servierst, steht als erstes
(die #include-Anweisung wird durch den Inhalt der Include-Datei
ersetzt):

CFtpConnection *m_pFtpConnection;

Ja woher soll der Compiler denn wissen, was ein CFtpConnection
ist? Eine Intgeger-Variable, ein Struct, eine Klasse oder was?
Das muß man ihm schon sagen, indem in der Datei afxinet.h
wiederum eine #include-Anweisung mit der Datei steht, in der
CFtpConnection definiert ist. Klar?

Ich vermute mal, daß Du die „afxinet.h“ nicht selbst erstellen
sollst, sondern schon existiert. Dein Compiler findet sie aber
nicht. Nun kenne ich mich mit Deinem Compiler nicht aus, weiß
auch nicht, ob „afxinet.h“ Teil Deiner Entwicklungsumgebung ist.
Ich würde also an Deiner Stelle erst einmal herausfinden, wo
diese Datei zu finden ist, und den entsprechenden Ordner zum
Include-Pfad des Compilers hinzufügen. Wie schon gesagt, beim
GCC wäre es die Option -I, beim Visual C++ wird es etwas
ähnliches geben.

Leider ist C++ nicht so mein Fachgebiet aber ich denke, dass Du eine neu Headerdatei erstellen mußt (z.B. „internet.h“ und in diese die „afxnet.h“ incluieren mußt. Ich glaube das deine Menbervariablen in der „afxnet.h“ deklariert sind, sonst kannst Du sie nicht verwenden (ohne Deklaration keine Varible). Ich hoffe das hilft Dir und ich habe das richtige erzählt!? Wie gesagt C++ ist nicht mein Fach gebiet und ich weiß nur die Grundbegriffe!

Gruß Thomas