TCP/ip Soket data network 
소켓 데이터 구조체 통신 

 

#pragma once
#include "afxwin.h"


// Client 대화 상자입니다.

class Client : public CDialog
{
DECLARE_DYNAMIC(Client)

public:
Client(CWnd* pParent = NULL);   // 표준 생성자입니다.
virtual ~Client();

// 대화 상자 데이터입니다.
#ifdef AFX_DESIGN_TIME
enum { IDD = IDD_D_ClientDlg };
#endif

protected:
virtual void DoDataExchange(CDataExchange* pDX);    // DDX/DDV 지원입니다.
afx_msg void OnBnClickedBcconnect();
afx_msg void OnBnClickedBcsend();
afx_msg void OnBnClickedBcdisconnect();
afx_msg void OnDestroy();
afx_msg void OnBnClickedBcclear();
afx_msg void OnBnClickedBclogreset();
afx_msg void OnBnClickedBcclientclear();
afx_msg void OnBnClickedBcstateclear();
CListBox Client_List;
CEdit m_ClientEditLog;
DECLARE_MESSAGE_MAP()

private:
void GetSendData();
void OpenClientSocket();
void ClientSend();
void CloseClient();
// void SendMsg();



public:
CString m_icOneN;
CString m_icTwoN;
CString m_icThreeN;
CString m_icfourN;
CString m_icPortN;

CString m_cscModel;
CString m_cscLocation;
CString m_cscXaxis;
CString m_cscYaxis;
CString m_cscVoltage;
CString m_cscCurrent;

SOCKET m_hClient;
SOCKET m_hcServer;
SOCKADDR_IN tClientSocket;

/*struct m_cSendData;*/

struct m_cSendData
{
CString cModel = 0;
CString cLocation = 0;
CString cXaxis = 0;
CString cYaxis = 0;
CString cVoltage = 0;
CString cCurrent = 0;

};



};


*이 게시글에 문제가 있을시  신고보단 지적을 먼저 부탁드립니다. 빠른시간안으로  수정하겠습니다. 감사합니다
제글을  재밌게 봐주셨다면  ♥(공감)한번씩 눌러주시면 감사합니다 좋은하루 되세요!

** 완벽하진 않습니다만 기능만 보면 동작은 매끄럽게 됨으로 필요하신부분들만 보시길바랍니다.

TCP/ip Soket data network 

소켓 데이터 구조체 통신 

 

 

#pragma once
#include "afxwin.h"
#include "Client.h"

// ServerDlg 대화 상자입니다.

class ServerDlg : public CDialog
{
DECLARE_DYNAMIC(ServerDlg)

public:
ServerDlg(CWnd* pParent = NULL);   // 표준 생성자입니다.
virtual ~ServerDlg();
Client *m_clientdlg;

// 대화 상자 데이터입니다.
#ifdef AFX_DESIGN_TIME
enum { IDD = IDD_D_ServerDlg };
#endif

protected:
virtual void DoDataExchange(CDataExchange* pDX);    // DDX/DDV 지원입니다.
afx_msg void OnBnClickedBsconnecter();
afx_msg void OnDestroy();
afx_msg void OnBnClickedBsdisconnecter();
afx_msg void OnBnClickedBslogreset();
afx_msg void OnBnClickedBsclear();
afx_msg void OnBnClickedBsloadclear();
afx_msg void OnBnClickedBsdataclear();
afx_msg void OnBnClickedBsload();
CListBox m_ServerSDL;
CListBox m_ServerCDL;
CListBox m_ServerUDL;
CEdit ServerEditLog;
DECLARE_MESSAGE_MAP()


private:


void OpenSocket();
void OpenServer();
void CloseServer();
void C_DataLoad();
void C_DataSubLoad();
void C_DataSave();
void compareMS();


HANDLE m_hWaitAccept;
HANDLE m_evhWaitAccServer;
HANDLE m_hRecvS;
HANDLE m_evhRecvS;

unsigned m_WaitAccept();   //쓰레드 구체적인 선언 부분인데 조사필요 
static unsigned __stdcall _m_WaitAccept(void *p)
{
return ((ServerDlg*)p)->m_WaitAccept();
}

unsigned m_sRecvThread();   //쓰레드 구체적인 선언 부분인데 조사필요 
static unsigned __stdcall _m_sRecvThread(void *p)
{
return ((ServerDlg*)p)->m_sRecvThread();
}


public:
CString m_isOneN;
CString m_isTwoN;
CString m_isThreeN;
CString m_isfourN;
CString m_isPortN;

CString m_sModel;
CString m_sLocation;
CString m_sXaxis;
CString m_sYaxis;
CString m_sVoltage;
CString m_sCurrent;
CString m_Test;

//sub 
CString m_sSubModel;
CString m_sSubLocation;
CString m_sSubXaxis;
CString m_sSubYaxis;
CString m_sSubVoltage;
CString m_sSubCurrent;

CString as;

SOCKET hServer;
SOCKET m_hWaitSocket;
SOCKET hClient;
// SOCKET m_ListenServer;
SOCKADDR_IN tServerSocket; //기본 값 받을곳 
SOCKADDR_IN m_siClientSocket; //기본 값 받을곳 
SOCKADDR_IN m_soServerAPSK;  // accept 받을곳

 char *m_sRecvData;
 int m_iClientLen;
 int m_iSaveData;

/* struct m_cSendData;*/

 struct m_cSendData
 {
 CString cModel = 0;
 CString cLocation = 0;
 CString cXaxis = 0;
 CString cYaxis = 0;
 CString cVoltage = 0;
 CString cCurrent = 0;

 };

 m_cSendData m_struct;

};


*이 게시글에 문제가 있을시  신고보단 지적을 먼저 부탁드립니다. 빠른시간안으로  수정하겠습니다. 감사합니다
제글을  재밌게 봐주셨다면  ♥(공감)한번씩 눌러주시면 감사합니다 좋은하루 되세요!

+ Recent posts