server vs client,可以s2c沒辦法c2s~why?why?why? |
缺席
|
geminigreat
一般會員 發表:10 回覆:10 積分:4 註冊:2004-03-01 發送簡訊給我 |
請大家幫我測試一下,這支程式在單機可以執行傳檔,可是在兩台電腦執行時,就只能s2c不能c2s,或者是只能c2s不能s2c,都只能單方面傳送,請問各位問題出在那裡呢?謝謝。 這是>
#>
#> >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
#>
#> >Address="127.0.0.1">Port=4000;
ClientSocket1->Open();
gmsFile=new TMemoryStream;
}
__fastcall TForm1::~TForm1()
{
if(gmsFile) delete gmsFile;
ClientSocket1->Close();
}
//--------------------------------------------------------------------------- void __fastcall TForm1::ConnectClick(TObject *Sender)
{
msFile=new TMemoryStream;
ClientSocket1->Socket->SendText("Connect");
Connect->Enabled=false;
Disconnect->Enabled=true;
}
//---------------------------------------------------------------------------
void __fastcall TForm1::FormDestroy(TObject *Sender)
{
ClientSocket1->Close();
delete msFile;
}
//---------------------------------------------------------------------------
void __fastcall TForm1::ClientSocket1Read(TObject *Sender,
TCustomWinSocket *Socket)
{ MYPACK mp;
Socket->ReceiveBuf(&mp, sizeof(MYPACK));
AnsiString sz=(AnsiString)mp.szHeader;
if(sz.SubString(1, 4)=="FILE")
{
if(sz=="FILE-START")
{
msFile->Size=mp.dwTotalDataSize;
msFile->Position=0;
}
msFile->Write(mp.pbThisData, mp.dwThisDataSize);
if(sz=="FILE-END")
{
msFile->Position=0;
msFile->SaveToFile(mp.szFileName); msFile->Clear();
}
} }
//---------------------------------------------------------------------------
void __fastcall TForm1::DisconnectClick(TObject *Sender)
{
Connect->Enabled=true;
Disconnect->Enabled=false;
ClientSocket1->Socket->SendText("Disconnect");
} //---------------------------------------------------------------------------
void __fastcall TForm1::TransferFile(TObject *Sender,AnsiString filename)
{ ProgressBar1->Visible =true;
TMemoryStream *File=new TMemoryStream;
File->LoadFromFile(filename); MYPACK my_pack;
int i=0;
int block=(File->Size%MAX_DATASIZE==0)?
File->Size/MAX_DATASIZE: File->Size/MAX_DATASIZE 1;
ProgressBar1->Max =block;
for(i=0; i
|
Roach
中階會員 發表:61 回覆:104 積分:98 註冊:2002-11-05 發送簡訊給我 |
|
geminigreat
一般會員 發表:10 回覆:10 積分:4 註冊:2004-03-01 發送簡訊給我 |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |