Click here to Skip to main content
15,921,577 members
Home / Discussions / C / C++ / MFC
   

C / C++ / MFC

 
GeneralRe: need help in CListCtrl Pin
Christian Graus22-Aug-05 19:01
protectorChristian Graus22-Aug-05 19:01 
GeneralRe: need help in CListCtrl Pin
firebolt7722-Aug-05 20:05
firebolt7722-Aug-05 20:05 
GeneralRe: need help in CListCtrl Pin
ThatsAlok22-Aug-05 22:57
ThatsAlok22-Aug-05 22:57 
GeneralRe: need help in CListCtrl Pin
firebolt7723-Aug-05 19:42
firebolt7723-Aug-05 19:42 
GeneralRe: need help in CListCtrl Pin
ThatsAlok23-Aug-05 19:58
ThatsAlok23-Aug-05 19:58 
GeneralUpdating a field in Access database Pin
joy00722-Aug-05 18:12
joy00722-Aug-05 18:12 
GeneralRe: Updating a field in Access database Pin
Jose Lamas Rios22-Aug-05 18:27
Jose Lamas Rios22-Aug-05 18:27 
GeneralRecieving a file over TCP Pin
Member 183908222-Aug-05 17:56
Member 183908222-Aug-05 17:56 
Ok, I am creating a c++ application that recieves files from a c# application.

The c++ code is what I am having problems with, the application tends to crash after transfering 300k of a 15 meg file (which takes about 20 seconds). Here is the c++ code:

<br />
void RecieveFile()<br />
{<br />
	XBNetwork xbns;<br />
	WSADATA WsaData;<br />
	if(WSAStartup(MAKEWORD(2,2), &WsaData) != 0)<br />
		Debug("Winsock Statup Error\n");<br />
<br />
	SOCKET ListenSocket = socket(AF_INET, SOCK_STREAM, IPPROTO_TCP);<br />
	if(ListenSocket == INVALID_SOCKET)<br />
		Debug("Socket Creation Error\n");<br />
<br />
	struct sockaddr_in ServerAddress, ClientAddress;<br />
	ServerAddress.sin_family = AF_INET;<br />
	ServerAddress.sin_addr.s_addr = htonl(INADDR_ANY);<br />
	ServerAddress.sin_port = htons(6969);<br />
<br />
	if(bind(ListenSocket, (struct sockaddr *) &ServerAddress, sizeof(ServerAddress)) == SOCKET_ERROR)<br />
		Debug("Socket Binding Error\n");<br />
<br />
	if(Listen(ListenSocket, 5) == SOCKET_ERROR)<br />
		Debug("Socket Listening Error\n");<br />
<br />
	char xrec[2049];<br />
	memset(xrec, 0x0, 2049);<br />
<br />
	while(true)<br />
	{<br />
		int ClientAddressLength = sizeof(ClientAddress);<br />
<br />
		SOCKET ClientSocket = accept(ListenSocket, (struct sockaddr *) &ClientAddress, &ClientAddressLength);<br />
		if(ClientSocket == INVALID_SOCKET)<br />
			Debug("Socket Accepting Error");<br />
<br />
		while(recv(ClientSocket, xrec, 2048, 0) > 0)<br />
		{<br />
<br />
			FILE *fp;<br />
			fp = fopen("C:\\TestFile.dat", "ab");<br />
			fprintf(fp, xrec);<br />
			fclose(fp);<br />
<br />
			memset(xrec, 0x0, 1025);<br />
		}<br />
	}<br />
}<br />



Here is the c# code:

<br />
public void SendFile()<br />
{<br />
	Socket so = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp);<br />
	IPHostEntry localHostEntry = Dns.GetHostByName(Dns.GetHostName());<br />
	IPEndPoint localIpEndPoint = new IPEndPoint(localHostEntry.AddressList[0], 0);<br />
	so.Bind(localIpEndPoint);<br />
<br />
	IPHostEntry remoteHostEntry = Dns.GetHostByName("192.168.1.49");<br />
	IPEndPoint remoteIpEndPoint = new IPEndPoint(remoteHostEntry.AddressList[0], 6969);<br />
	so.Connect(remoteIpEndPoint);<br />
<br />
	BinaryReader br = new BinaryReader(new FileStream("D:\\thefile.dat", FileMode.Open, FileAccess.Read, FileShare.None));<br />
<br />
	for(int x = 0; x < br.BaseStream.Length / 2048; x++)<br />
	{<br />
		Byte[] BytesToSend = br.ReadBytes(2048);<br />
		so.Send(BytesToSend);<br />
	}<br />
<br />
	br.Close();<br />
	so.Close();<br />
}<br />



Thanks!!!
GeneralRe: Recieving a file over TCP Pin
Jose Lamas Rios22-Aug-05 18:04
Jose Lamas Rios22-Aug-05 18:04 
GeneralRe: Recieving a file over TCP Pin
Member 183908222-Aug-05 18:13
Member 183908222-Aug-05 18:13 
GeneralRe: Recieving a file over TCP Pin
Jose Lamas Rios22-Aug-05 19:10
Jose Lamas Rios22-Aug-05 19:10 
GeneralRe: Recieving a file over TCP Pin
Member 183908223-Aug-05 7:44
Member 183908223-Aug-05 7:44 
GeneralRe: Recieving a file over TCP Pin
Member 183908223-Aug-05 17:10
Member 183908223-Aug-05 17:10 
Questionhow to create a listbox using GLUI. Pin
jasrina22-Aug-05 17:45
jasrina22-Aug-05 17:45 
AnswerRe: how to create a listbox using GLUI. Pin
Jose Lamas Rios22-Aug-05 18:02
Jose Lamas Rios22-Aug-05 18:02 
GeneralTree List Control Pin
Nishad S22-Aug-05 17:45
Nishad S22-Aug-05 17:45 
GeneralRe: Tree List Control Pin
Jose Lamas Rios22-Aug-05 18:08
Jose Lamas Rios22-Aug-05 18:08 
QuestionHow to make text link in dialog box with Win32api? Pin
Member 159461422-Aug-05 16:55
Member 159461422-Aug-05 16:55 
AnswerRe: How to make text link in dialog box with Win32api? Pin
Jose Lamas Rios22-Aug-05 17:05
Jose Lamas Rios22-Aug-05 17:05 
GeneralRe: How to make text link in dialog box with Win32api? Pin
Member 159461422-Aug-05 18:01
Member 159461422-Aug-05 18:01 
GeneralRe: How to make text link in dialog box with Win32api? Pin
Jose Lamas Rios22-Aug-05 18:05
Jose Lamas Rios22-Aug-05 18:05 
QuestionInternet game? Pin
gr8coaster32922-Aug-05 16:14
gr8coaster32922-Aug-05 16:14 
QuestionHow can i chang the type of int to type of POSITION Pin
ebinaini22-Aug-05 15:14
ebinaini22-Aug-05 15:14 
AnswerRe: How can i chang the type of int to type of POSITION Pin
Anonymous22-Aug-05 15:33
Anonymous22-Aug-05 15:33 
AnswerRe: How can i chang the type of int to type of POSITION Pin
Jose Lamas Rios22-Aug-05 15:40
Jose Lamas Rios22-Aug-05 15:40 

General General    News News    Suggestion Suggestion    Question Question    Bug Bug    Answer Answer    Joke Joke    Praise Praise    Rant Rant    Admin Admin   

Use Ctrl+Left/Right to switch messages, Ctrl+Up/Down to switch threads, Ctrl+Shift+Left/Right to switch pages.