Forum: PC-Programmierung Netwerkprogrammierung MFC


von Hansi (Gast)


Angehängte Dateien:

Lesenswert?

Guten Tag

Ich habe ein Problem, bei mir gibt es immer eine Fehlermeldung:
z.B. 'SetParent' : is not a member of 'CString'
z.B. 'Create' : is not a member of 'CString'
wie müssen diese deklariert werden, damit es keine Fehlermeldung gibt?

Besten Dank für die Hilfe
Hansi

von Sven P. (Gast)


Lesenswert?

Wie haste denn die Socken deklariert (m_ListenSocket etc.) ?
Vermutlich als

> CString m_ListenSocket;

von Hansi (Gast)


Lesenswert?

Ja, genau so hab ich sie deklariert und dann gibt es die Fehlermeldungen

von Sven P. (Gast)


Lesenswert?

Dann frag dich mal warum. Haste schonmal deinen Kugelschreiber 
aufgefordert, Kaffee zu kochen...?

von Hansi (Gast)


Lesenswert?

aufgefordert schon, gemacht hat er es trotzdem nicht.
Wie soll ich es deklarieren?

von Rufus Τ. F. (rufus) Benutzerseite


Lesenswert?

Was möchtest Du verwenden? Einen String oder einen Socket?

von Hansi (Gast)


Lesenswert?

String kann ich glaube ich nicht gebrauchen, eher einen Socket.

Gruss Hansi

von Rufus Τ. F. (rufus) Benutzerseite


Lesenswert?

Na, uuund was sagt die Dokumentation, die Du sicherlich schon 
gelesen hast, dazu?

von Hansi (Gast)


Lesenswert?

Nun aber! Die neue Klasse ist automatisch schon in der Dialogklasse 
includiert, so dass wir nun die beiden Hauptobjekte erstellen können, 
nämlich m_ConnectSocket und m_ListenSocket. Über m_ConnectSocket wird 
die Verbindung für den Client erstellt und kommuniziert, und über 
m_ListenSocket hört der Server auf Verbindungs-Anfragen. Beides sind 
Member-Variablen der Dialogklasse vom Typ unserer selbsterstellten 
Klasse CMySocket. Auch diese beiden Variablen sind Private. Nun 
verwenden wir die Funktion OnInitDialog(), um die "Parents zu setzen":

Wenn ich dies so erstelle, bekomme ich noch meher Fehlermeldungen

von Sven P. (Gast)


Lesenswert?

Solange m_ListenSocket und das andre Dingsda vom Typ CString sind, 
kannste dir Löcher ins Knie bohren ind Radieschen reinpflanzen, aber 
Verbindungen werden damit dann trotzdem nicht aufgebaut.

Ist ja schön, dass du da zwei Strings (CString) als privat irgendwo 
reindeklarierst, aber Sockets werden da dann immer noch net drauß.

von Sven P. (Gast)


Lesenswert?


von Karl H. (kbuchegg)


Lesenswert?

> Beides sind
> Member-Variablen der Dialogklasse vom Typ unserer selbsterstellten
> Klasse CMySocket.

Da steht doch explizit, dass es sich um CMySocket Objekte
handelt und nicht um CString Objekte.

> Wenn ich dies so erstelle, bekomme ich noch meher Fehlermeldungen

Header File, in dem die CMySocket Klasse definiert ist,
vergessen zu inkludieren?

von Hansi (Gast)


Angehängte Dateien:

Lesenswert?

Guten Tag

Hab es jetzt so gelöst

Header File:
private:
  CMySocket m_sConnectSocket;
  CMySocket sm_ListenSocket;

Implementation File:
  m_sConnectSocket.SetParent(this);
  m_sListenSocket.SetParent(this);
  m_sConnectSocket.Create();
  m_sConnectSocket.Connect(m_ip,m_port); ..........

Gibt bei mir immer noch seher viele Fehler, bin ein Anfänger in diesem 
Gebiet.
Ich wär froh wenn mir jemand behilflich sein kann. Errors siehe Anhang

Gruss Hansi

von Karl H. (kbuchegg)


Lesenswert?

Hansi wrote:


> Ich wär froh wenn mir jemand behilflich sein kann. Errors siehe Anhang

Deine Errors klingen alle danach, als ob du vergessen hast, das
Header File, in dem die MySocket Klasse deklariert ist, zu inkludieren.

> Gibt bei mir immer noch seher viele Fehler, bin ein Anfänger in diesem
> Gebiet.

Dann solltest du erst mal kleiner Brötchen backen und mit den
Basics eines Programmaufbaues beschäftigen. Wizards sind gut,
ersetzen aber nicht das Wissen darüber was man tut.

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.