Thank you so much for replying to me.:) The following is my send code when the button is clicked. I found most of it on this site: void CMainFrame::OnSFile() { MessageBox("File Transfer"); CSocket cSocket; cSocket.Create(); //cSocket.Connect((LPCTSTR(m_strServerIP)),m_iFTPort); cSocket.Connect("127.0.0.1", 700); csocketfile sf(&cSocket); CArchive ar(&sf, CArchive::store); /*code for CFileDialog goes here*/ static char BASED_CODE szFilter[] = "All Files (*.*)|*.*||"; CString strPath; CFileDialog m_ldFile(TRUE,".*","*.*",OFN_HIDEREADONLY | OFN_OVERWRITEPROMPT, szFilter); // Initialize the starting directory //m_ldFile.m_ofn.lpstrInitialDir = _T("C:\\"); // Show the file open dialog and captures the result //if IDOK if (m_ldFile.DoModal() == IDOK) { strPath = m_ldFile.GetPathName(); CFile myFile(strPath, CFile::modeRead | CFile::typeBinary); //get file info DWORD length = myFile.GetLength(); char *data = new char[length]; myFile.Read(data, length); //send it across ar << myFile.GetFileName(); ar << length; ar.Write(data, length); delete[] data; myFile.Close(); } } -------------------------------------------------------------------------- On the server side, I've put this as the receiving code. Maybe I've put it in the wrong place?:~ There is a void CClientSocket::OnReceive(int nErrorCode) which is an overrided method from the CSocket class. So basically whenever the socket receives something, it kicks off the OnReceive code. I've put it there. Also, in my Send code, there is a line commented off, and replaced with a hardcoded statement. Before I did that I was getting another error, "An unknown error occurred while accessing an unnamed file" I'm going to try changing around a few things, but if you have any suggestions on thoughts on this, please let me know. Thank you so much.