Страница: 1 | 
		
		 
			   
			 
			 
			 
			 Страница: 1 | 
 
			
 
  
		
     
  
    
Вопрос: Проблема с winsock
     
    
Добавлено: 31.03.05 15:56
     
      
  
				
			  
					 
			
				 
    
		
       
    
Автор вопроса:  
     az
 az
      
       
  
Может кто ответить на мой вопрос?
 
    
Как отфильтровать данные принимаемые через winsock?Мне надо откинуть первые 48 байтов сообщения а остальные вывести на textbox?Буду очень благодарен за ответ.
				
		
		
					 
			
				 
  
		
     
  
    
Ответы
     
    
Всего ответов: 5
     
      
  
		
	  
			 
	
		 
    
       
    
Номер ответа: 1 
      
Автор ответа: az
 az



Вопросов: 2
Ответов: 3
      
 Профиль |  | #1
       
Добавлено:  31.03.05 16:07
       
    
       
  
Или может кто-нить переведет на ВБ с С++?
 
    
#include <vcl.h>
#pragma hdrstop
#include "udp.h"
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma resource "*.dfm"
TForm1 *Form1;
//---------------------------------------------------------------------------
__fastcall TForm1::TForm1(TComponent* Owner)
        : TForm(Owner)
{
}
//---------------------------------------------------------------------------
void __fastcall TForm1::NMUDP1DataReceived(TComponent *Sender,
      int NumberBytes, AnsiString FromIP, int Port)
{
 int num, len;
 AnsiString str;
 char buf[255];
 NMUDP1->ReadBuffer(buf,255,num);
 str = PChar(&buf[48]);
 len = str.Length()+1;
 MemoMess->Lines->Add( str );
 MemoTag->Lines->Add( PChar(&buf[48+len]) );
		
	  
			 
	
		 
    
       
    
Номер ответа: 2 
      
Автор ответа: Sharp
 Sharp










Лидер форума
ICQ: 216865379 
Вопросов: 106
Ответов: 9979
      
 Web-сайт:  
 Профиль |  | #2
      
Добавлено:  31.03.05 19:04
       
    
       
  
Сохраняй все в строковую переменную, а потом выводи все, кроме первых 48 байт (right(s,len(s)-48))
 
    
		
	  
			 
	
		 
    
       
    
Номер ответа: 3 
      
Автор ответа: DaSharm
 DaSharm

ICQ: 780477 
Вопросов: 72
Ответов: 1297
      
 Web-сайт:  
 Профиль |  | #3
      
Добавлено:  31.03.05 19:36
       
    
       
  
Делай глобальную переменную, например. И в событии получения данных додавай к ёё значению число принятых байт. Далее, если это число больше 48 тогда...
 
    
		
	  
			 
	
		 
    
       
    
Номер ответа: 4 
      
Автор ответа: az
 az



Вопросов: 2
Ответов: 3
      
 Профиль |  | #4
       
Добавлено:  02.04.05 07:27
       
    
       
  
Спасиба, щас папробую
 
    
		
	  
			 
	
		 
    
       
    
Номер ответа: 5 
      
Автор ответа: az
 az



Вопросов: 2
Ответов: 3
      
 Профиль |  | #5
       
Добавлено:  02.04.05 12:35
       
    
       
  
Ура все получилось!И еще вопросик:а как сохранить в базу данных, Access напримар эти полученные данные динамически т.е. строка в тексбоксе появилась и тут же в базу записалась, а?