<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0"><channel><title><![CDATA[Hilfe! Probleme mit Socket-Programm]]></title><description><![CDATA[<p>Hallo Leute!<br />
Ich brauche dringend eure Hilfe!<br />
Ich weis einfach nicht, warum die folgenden Dateien nicht korrekt<br />
kompiliert werden können.</p>
<blockquote>
<p>**<br />
--------------------Konfiguration: NetChat - Win32 Debug--------------------<br />
Kompilierung läuft...<br />
NetChatDlg.cpp<br />
MySocket.cpp<br />
MySocket.cpp(38) : error C2039: 'SetParent' : Ist kein Element von 'CMySocket'<br />
mysocket.h(15) : Siehe Deklaration von 'CMySocket'<br />
MySocket.cpp(40) : error C2065: 'm_pWnd' : nichtdeklarierter Bezeichner<br />
MySocket.cpp(40) : error C2440: '=' : 'class CDialog *' kann nicht in 'int' konvertiert werden<br />
Diese Konvertierung erfordert einen reinterpret_cast-Operator oder eine Typumwandlung im C- oder Funktionsformat<br />
MySocket.cpp(49) : error C2065: 'CSocketDlg' : nichtdeklarierter Bezeichner<br />
MySocket.cpp(49) : error C2059: Syntaxfehler : ')'<br />
MySocket.cpp(58) : error C2248: &quot;OnAccept&quot; : Kein Zugriff auf private Element, dessen Deklaration in der Klasse &quot;CNetChatDlg&quot; erfolgte<br />
netchatdlg.h(49) : Siehe Deklaration von 'OnAccept'<br />
**</p>
</blockquote>
<p>Hoffe, ihr könnt mir weiterhelfen<br />
THX <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f642.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--slightly_smiling_face"
      title=":)"
      alt="🙂"
    /></p>
<p><strong>MySocket.cpp</strong></p>
<pre><code class="language-cpp">// MySocket.cpp: Implementierungsdatei
//

#include &quot;stdafx.h&quot;
#include &quot;NetChat.h&quot;
#include &quot;MySocket.h&quot;
#include &quot;NetChatDlg.h&quot;

#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif

/////////////////////////////////////////////////////////////////////////////
// CMySocket

CMySocket::CMySocket()
{
}

CMySocket::~CMySocket()
{
}

//Die folgenden Zeilen nicht bearbeiten. Sie werden vom Klassen-Assistenten benötigt.
#if 0
BEGIN_MESSAGE_MAP(CMySocket, CAsyncSocket)
	//{{AFX_MSG_MAP(CMySocket)
	//}}AFX_MSG_MAP
END_MESSAGE_MAP()
#endif	// 0

/////////////////////////////////////////////////////////////////////////////
// Member-Funktion CMySocket 

void CMySocket::SetParent(CDialog *pWnd)
{
	m_pWnd = pWnd;
}

void CMySocket::OnConnect(int nErrorCode)
{
// Sind Fehler aufgetreten?
      if (nErrorCode == 0)
          // Nein, OnAccept-Funktion des Dialogfelds aufrufen
          ((CSocketDlg*)m_pWnd)-&gt;OnConnect();
}

void CMySocket::OnAccept(int nErrorCode) 
{
	// Sind Fehler aufgetreten?
	if (nErrorCode == 0)
	// Nein, OnAccept-Funktion des Dialogfelds aufrufen
	((CNetChatDlg*)m_pWnd)-&gt;OnAccept();
}

void CMySocket::OnSend(int nErrorCode)
{
// Sind Fehler aufgetreten?
      if (nErrorCode == 0)
          // Nein, OnAccept-Funktion des Dialogfelds aufrufen
          ((CNetChatDlg*)m_pWnd)-&gt;OnSend();
}

void CMySocket::OnReceive(int nErrorCode)
{
// Sind Fehler aufgetreten?
      if (nErrorCode == 0)
          // Nein, OnAccept-Funktion des Dialogfelds aufrufen
          ((CNetChatDlg*)m_pWnd)-&gt;OnReceive();
}

void CMySocket::OnClose(int nErrorCode)
{
// Sind Fehler aufgetreten?
      if (nErrorCode == 0)
          // Nein, OnAccept-Funktion des Dialogfelds aufrufen
          ((CNetChatDlg*)m_pWnd)-&gt;OnClose();
}
</code></pre>
<p><strong>MySocket.h</strong></p>
<pre><code class="language-cpp">#if !defined(AFX_MYSOCKET_H__8ED834E0_66D9_11D8_86FF_0030F1A2113D__INCLUDED_)
#define AFX_MYSOCKET_H__8ED834E0_66D9_11D8_86FF_0030F1A2113D__INCLUDED_

#if _MSC_VER &gt; 1000
#pragma once
#endif // _MSC_VER &gt; 1000
// MySocket.h : Header-Datei
//

/////////////////////////////////////////////////////////////////////////////
// Befehlsziel CMySocket 

class CMySocket : public CAsyncSocket
{
// Attribute
public:

// Operationen
public:
	CMySocket();
	virtual ~CMySocket();

// Überschreibungen
public:
	// Vom Klassen-Assistenten generierte virtuelle Funktionsüberschreibungen
	//{{AFX_VIRTUAL(CMySocket)
	//}}AFX_VIRTUAL

	// Generierte Nachrichtenzuordnungsfunktionen
	//{{AFX_MSG(CMySocket)
		// HINWEIS - Der Klassen-Assistent fügt hier Member-Funktionen ein und entfernt diese.
	//}}AFX_MSG

// Implementierung
protected:
    virtual void OnSend(int nErrorCode);
    virtual void OnReceive(int nErrorCode);
    virtual void OnClose(int nErrorCode);
    virtual void OnConnect(int nErrorCode);
    virtual void OnAccept(int ErrorCode);
};

/////////////////////////////////////////////////////////////////////////////

//{{AFX_INSERT_LOCATION}}
// Microsoft Visual C++ fügt unmittelbar vor der vorhergehenden Zeile zusätzliche Deklarationen ein.

#endif // AFX_MYSOCKET_H__8ED834E0_66D9_11D8_86FF_0030F1A2113D__INCLUDED_
</code></pre>
<p><strong>NetChatDlg.h</strong></p>
<pre><code class="language-cpp">// NetChatDlg.h : Header-Datei
//
#if !defined(AFX_NETCHATDLG_H__EDECAC44_662A_11D8_86FF_0030F1A2113D__INCLUDED_)
#define AFX_NETCHATDLG_H__EDECAC44_662A_11D8_86FF_0030F1A2113D__INCLUDED_

#include &quot;MySocket.h&quot;    // Hinzugefügt von der Klassenansicht 
#if _MSC_VER &gt; 1000
#pragma once
#endif // _MSC_VER &gt; 1000

/////////////////////////////////////////////////////////////////////////////
// CNetChatDlg Dialogfeld

class CNetChatDlg : public CDialog
{
// Konstruktion
public:
	void OnClose();
    void OnReceive();
    void OnSend();
    void OnConnect();
	CNetChatDlg(CWnd* pParent = NULL);	// Standard-Konstruktor

// Dialogfelddaten
	//{{AFX_DATA(CNetChatDlg)
	enum { IDD = IDD_NETCHAT_DIALOG };
	CString	m_ip;
	int		m_port;
	//}}AFX_DATA

	// Vom Klassenassistenten generierte Überladungen virtueller Funktionen
	//{{AFX_VIRTUAL(CNetChatDlg)
	protected:
	virtual void DoDataExchange(CDataExchange* pDX);	// DDX/DDV-Unterstützung
	//}}AFX_VIRTUAL

// Implementierung
protected:
	HICON m_hIcon;

	// Generierte Message-Map-Funktionen
	//{{AFX_MSG(CNetChatDlg)
	virtual BOOL OnInitDialog();
	afx_msg void OnPaint();
	afx_msg HCURSOR OnQueryDragIcon();
	//}}AFX_MSG
	DECLARE_MESSAGE_MAP()
private:
    void OnAccept();
    CMySocket m_sConnectSocket;
    CMySocket m_sListenSocket; 
};

//{{AFX_INSERT_LOCATION}}
// Microsoft Visual C++ fügt unmittelbar vor der vorhergehenden Zeile zusätzliche Deklarationen ein.

#endif // !defined(AFX_NETCHATDLG_H__EDECAC44_662A_11D8_86FF_0030F1A2113D__INCLUDED_)
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/topic/66027/hilfe-probleme-mit-socket-programm</link><generator>RSS for Node</generator><lastBuildDate>Fri, 05 Jun 2026 17:58:43 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/66027.rss" rel="self" type="application/rss+xml"/><pubDate>Tue, 24 Feb 2004 14:41:14 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Hilfe! Probleme mit Socket-Programm on Tue, 24 Feb 2004 14:41:14 GMT]]></title><description><![CDATA[<p>Hallo Leute!<br />
Ich brauche dringend eure Hilfe!<br />
Ich weis einfach nicht, warum die folgenden Dateien nicht korrekt<br />
kompiliert werden können.</p>
<blockquote>
<p>**<br />
--------------------Konfiguration: NetChat - Win32 Debug--------------------<br />
Kompilierung läuft...<br />
NetChatDlg.cpp<br />
MySocket.cpp<br />
MySocket.cpp(38) : error C2039: 'SetParent' : Ist kein Element von 'CMySocket'<br />
mysocket.h(15) : Siehe Deklaration von 'CMySocket'<br />
MySocket.cpp(40) : error C2065: 'm_pWnd' : nichtdeklarierter Bezeichner<br />
MySocket.cpp(40) : error C2440: '=' : 'class CDialog *' kann nicht in 'int' konvertiert werden<br />
Diese Konvertierung erfordert einen reinterpret_cast-Operator oder eine Typumwandlung im C- oder Funktionsformat<br />
MySocket.cpp(49) : error C2065: 'CSocketDlg' : nichtdeklarierter Bezeichner<br />
MySocket.cpp(49) : error C2059: Syntaxfehler : ')'<br />
MySocket.cpp(58) : error C2248: &quot;OnAccept&quot; : Kein Zugriff auf private Element, dessen Deklaration in der Klasse &quot;CNetChatDlg&quot; erfolgte<br />
netchatdlg.h(49) : Siehe Deklaration von 'OnAccept'<br />
**</p>
</blockquote>
<p>Hoffe, ihr könnt mir weiterhelfen<br />
THX <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f642.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--slightly_smiling_face"
      title=":)"
      alt="🙂"
    /></p>
<p><strong>MySocket.cpp</strong></p>
<pre><code class="language-cpp">// MySocket.cpp: Implementierungsdatei
//

#include &quot;stdafx.h&quot;
#include &quot;NetChat.h&quot;
#include &quot;MySocket.h&quot;
#include &quot;NetChatDlg.h&quot;

#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif

/////////////////////////////////////////////////////////////////////////////
// CMySocket

CMySocket::CMySocket()
{
}

CMySocket::~CMySocket()
{
}

//Die folgenden Zeilen nicht bearbeiten. Sie werden vom Klassen-Assistenten benötigt.
#if 0
BEGIN_MESSAGE_MAP(CMySocket, CAsyncSocket)
	//{{AFX_MSG_MAP(CMySocket)
	//}}AFX_MSG_MAP
END_MESSAGE_MAP()
#endif	// 0

/////////////////////////////////////////////////////////////////////////////
// Member-Funktion CMySocket 

void CMySocket::SetParent(CDialog *pWnd)
{
	m_pWnd = pWnd;
}

void CMySocket::OnConnect(int nErrorCode)
{
// Sind Fehler aufgetreten?
      if (nErrorCode == 0)
          // Nein, OnAccept-Funktion des Dialogfelds aufrufen
          ((CSocketDlg*)m_pWnd)-&gt;OnConnect();
}

void CMySocket::OnAccept(int nErrorCode) 
{
	// Sind Fehler aufgetreten?
	if (nErrorCode == 0)
	// Nein, OnAccept-Funktion des Dialogfelds aufrufen
	((CNetChatDlg*)m_pWnd)-&gt;OnAccept();
}

void CMySocket::OnSend(int nErrorCode)
{
// Sind Fehler aufgetreten?
      if (nErrorCode == 0)
          // Nein, OnAccept-Funktion des Dialogfelds aufrufen
          ((CNetChatDlg*)m_pWnd)-&gt;OnSend();
}

void CMySocket::OnReceive(int nErrorCode)
{
// Sind Fehler aufgetreten?
      if (nErrorCode == 0)
          // Nein, OnAccept-Funktion des Dialogfelds aufrufen
          ((CNetChatDlg*)m_pWnd)-&gt;OnReceive();
}

void CMySocket::OnClose(int nErrorCode)
{
// Sind Fehler aufgetreten?
      if (nErrorCode == 0)
          // Nein, OnAccept-Funktion des Dialogfelds aufrufen
          ((CNetChatDlg*)m_pWnd)-&gt;OnClose();
}
</code></pre>
<p><strong>MySocket.h</strong></p>
<pre><code class="language-cpp">#if !defined(AFX_MYSOCKET_H__8ED834E0_66D9_11D8_86FF_0030F1A2113D__INCLUDED_)
#define AFX_MYSOCKET_H__8ED834E0_66D9_11D8_86FF_0030F1A2113D__INCLUDED_

#if _MSC_VER &gt; 1000
#pragma once
#endif // _MSC_VER &gt; 1000
// MySocket.h : Header-Datei
//

/////////////////////////////////////////////////////////////////////////////
// Befehlsziel CMySocket 

class CMySocket : public CAsyncSocket
{
// Attribute
public:

// Operationen
public:
	CMySocket();
	virtual ~CMySocket();

// Überschreibungen
public:
	// Vom Klassen-Assistenten generierte virtuelle Funktionsüberschreibungen
	//{{AFX_VIRTUAL(CMySocket)
	//}}AFX_VIRTUAL

	// Generierte Nachrichtenzuordnungsfunktionen
	//{{AFX_MSG(CMySocket)
		// HINWEIS - Der Klassen-Assistent fügt hier Member-Funktionen ein und entfernt diese.
	//}}AFX_MSG

// Implementierung
protected:
    virtual void OnSend(int nErrorCode);
    virtual void OnReceive(int nErrorCode);
    virtual void OnClose(int nErrorCode);
    virtual void OnConnect(int nErrorCode);
    virtual void OnAccept(int ErrorCode);
};

/////////////////////////////////////////////////////////////////////////////

//{{AFX_INSERT_LOCATION}}
// Microsoft Visual C++ fügt unmittelbar vor der vorhergehenden Zeile zusätzliche Deklarationen ein.

#endif // AFX_MYSOCKET_H__8ED834E0_66D9_11D8_86FF_0030F1A2113D__INCLUDED_
</code></pre>
<p><strong>NetChatDlg.h</strong></p>
<pre><code class="language-cpp">// NetChatDlg.h : Header-Datei
//
#if !defined(AFX_NETCHATDLG_H__EDECAC44_662A_11D8_86FF_0030F1A2113D__INCLUDED_)
#define AFX_NETCHATDLG_H__EDECAC44_662A_11D8_86FF_0030F1A2113D__INCLUDED_

#include &quot;MySocket.h&quot;    // Hinzugefügt von der Klassenansicht 
#if _MSC_VER &gt; 1000
#pragma once
#endif // _MSC_VER &gt; 1000

/////////////////////////////////////////////////////////////////////////////
// CNetChatDlg Dialogfeld

class CNetChatDlg : public CDialog
{
// Konstruktion
public:
	void OnClose();
    void OnReceive();
    void OnSend();
    void OnConnect();
	CNetChatDlg(CWnd* pParent = NULL);	// Standard-Konstruktor

// Dialogfelddaten
	//{{AFX_DATA(CNetChatDlg)
	enum { IDD = IDD_NETCHAT_DIALOG };
	CString	m_ip;
	int		m_port;
	//}}AFX_DATA

	// Vom Klassenassistenten generierte Überladungen virtueller Funktionen
	//{{AFX_VIRTUAL(CNetChatDlg)
	protected:
	virtual void DoDataExchange(CDataExchange* pDX);	// DDX/DDV-Unterstützung
	//}}AFX_VIRTUAL

// Implementierung
protected:
	HICON m_hIcon;

	// Generierte Message-Map-Funktionen
	//{{AFX_MSG(CNetChatDlg)
	virtual BOOL OnInitDialog();
	afx_msg void OnPaint();
	afx_msg HCURSOR OnQueryDragIcon();
	//}}AFX_MSG
	DECLARE_MESSAGE_MAP()
private:
    void OnAccept();
    CMySocket m_sConnectSocket;
    CMySocket m_sListenSocket; 
};

//{{AFX_INSERT_LOCATION}}
// Microsoft Visual C++ fügt unmittelbar vor der vorhergehenden Zeile zusätzliche Deklarationen ein.

#endif // !defined(AFX_NETCHATDLG_H__EDECAC44_662A_11D8_86FF_0030F1A2113D__INCLUDED_)
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/466852</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/466852</guid><dc:creator><![CDATA[Nichtsanichtsnichts]]></dc:creator><pubDate>Tue, 24 Feb 2004 14:41:14 GMT</pubDate></item><item><title><![CDATA[Reply to Hilfe! Probleme mit Socket-Programm on Tue, 24 Feb 2004 21:24:06 GMT]]></title><description><![CDATA[<p>Hallo,</p>
<p>sorry, aber das paßt alles nicht zusammen. Es gibt kein SetParent und kein Member m_pWnd in der MySocket.h, und auch wenn es das gäbe, wäre es vom Design her fragwürdig, warum ein CMySocket-Objekt einen Parent(ein Window) haben soll. Es gibt auch keinen CSocketDlg, ich sehe jedenfalls keinen. Du kannst also die fehlenden Member in MySocket.h hinzufügen, was CSocketDlg sein soll(vielleicht ein CNetChatDlg?), weiß ich allerdings nicht. Außerdem kann nicht auf OnAccept zugegriffen werden, weil dies eine private Member-Funktion von CNetChatDlg ist.</p>
<p>MfG</p>
]]></description><link>https://www.c-plusplus.net/forum/post/467227</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/467227</guid><dc:creator><![CDATA[Probe-Nutzer]]></dc:creator><pubDate>Tue, 24 Feb 2004 21:24:06 GMT</pubDate></item><item><title><![CDATA[Reply to Hilfe! Probleme mit Socket-Programm on Wed, 25 Feb 2004 06:11:52 GMT]]></title><description><![CDATA[<p>Sieh dir das Bsp. aus VC++ 6 in 21 Tagen nochmal genau an. Bitte richtig Abschreiben.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/467301</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/467301</guid><dc:creator><![CDATA[Unix-Tom]]></dc:creator><pubDate>Wed, 25 Feb 2004 06:11:52 GMT</pubDate></item></channel></rss>