BCB中,Undefined symbol 'ListUserName'有关问题啊
BCB中,Undefined symbol 'ListUserName'问题啊!
/---------------------------------------
#include <vcl.h>
#pragma hdrstop
#include "Unit1.h"
//---------------------------------------
#pragma package(smart_init)
#pragma resource "*.dfm"
TMainForm *MainForm;
//---------------------------------------
__fastcall TMainForm::TMainForm(TComponent* Owner)
: TForm(Owner)
{
ServerSocket1->Port=50; // 监听端口
ServerSocket1->Active=true; //初始化为打开
m_iClientNum=0; // 默认连接数为0
m_sIsName="NA";
m_sIsChat="CT";
m_sPart="#";
m_sIsCommand="CO";
m_sTo="ALL";
}
//---------------------------------------
void __fastcall TMainForm::ServerSocket1Accept(TObject *Sender,
TCustomWinSocket *Socket)
{ //当客户端连接时,在状态栏显示连接数
AnsiString sClientNum;
m_iClientNum++;
sClientNum.sprintf("有%d台客户连接",ServerSocket1->Socket->ActiveConnections);
StatusBar1->Panels->Items[1]->Text="连接成功!"; //发送一个信息给客户机
StatusBar1->Panels->Items[0]->Text=sClientNum; // 在Panel的第一个框输出连接的客户机
ListUserAddr->Items->Add(Socket->RemoteAddress); //把客户机的IP在ListUserAddr中输出
}
//---------------------------------------
void __fastcall TMainForm::ServerSocket1ClientRead(TObject *Sender,
TCustomWinSocket *Socket)
{
AnsiString sTemp;
AnsiString sPre;
AnsiString sWelcome;
sTemp=Socket->ReceiveText();
sPre=sTemp.SubString(1,2);
if(sPre==m_sIsName)
{
AnsiString sName;
sName=sTemp.SubString(3,sTemp.Length()-2);
ListUserName->Items->Add(sName);
for(int i=0;i<ServerSocket1->Socket->ActiveConnections;i++)
{
for(int j=0;j<ListUserName->Items->Count;j++)
{
AnsiString sName;
sName=ListUserName->Items->Strings[j];
ServerSocket1->Socket->Connections[i]->SendText(sName);
Sleep(10);
}
sWelcome=m_sIsChat+m_sPart;
sWelcome+=AnsiString("大家欢迎(")+sName+AnsiString(") :) 的光临!( 服务器说:)");
ServerSocket1->Socket->Connections[i]->SendText(sWelcome);
}
}
if(sPre==m_sIsChat)
{
AnsiString sTo,sChat;
int iPos;
iPos=sTemp.Pos(m_sPart);
sTo=sTemp.SubString(3,iPos-3);
sChat=m_sIsChat+sTemp.SubString(iPos,sTemp.Length()-iPos+1);
if(sTo==AnsiString("ALL") )
for(int i=0;i<ServerSocket1->Socket->ActiveConnections;i++)
ServerSocket1->Socket->Connections[i]->SendText(sChat);
if(sTo!=AnsiString("ALL") )
{
int iIndex=ListUserName->Items->IndexOf(sTo);
ServerSocket1->Socket->Connections[iIndex]->SendText(sChat);
}
}
}
//---------------------------------------
void __fastcall TMainForm::ServerSocket1ClientDisconnect(TObject *Sender,
TCustomWinSocket *Socket)
/---------------------------------------
#include <vcl.h>
#pragma hdrstop
#include "Unit1.h"
//---------------------------------------
#pragma package(smart_init)
#pragma resource "*.dfm"
TMainForm *MainForm;
//---------------------------------------
__fastcall TMainForm::TMainForm(TComponent* Owner)
: TForm(Owner)
{
ServerSocket1->Port=50; // 监听端口
ServerSocket1->Active=true; //初始化为打开
m_iClientNum=0; // 默认连接数为0
m_sIsName="NA";
m_sIsChat="CT";
m_sPart="#";
m_sIsCommand="CO";
m_sTo="ALL";
}
//---------------------------------------
void __fastcall TMainForm::ServerSocket1Accept(TObject *Sender,
TCustomWinSocket *Socket)
{ //当客户端连接时,在状态栏显示连接数
AnsiString sClientNum;
m_iClientNum++;
sClientNum.sprintf("有%d台客户连接",ServerSocket1->Socket->ActiveConnections);
StatusBar1->Panels->Items[1]->Text="连接成功!"; //发送一个信息给客户机
StatusBar1->Panels->Items[0]->Text=sClientNum; // 在Panel的第一个框输出连接的客户机
ListUserAddr->Items->Add(Socket->RemoteAddress); //把客户机的IP在ListUserAddr中输出
}
//---------------------------------------
void __fastcall TMainForm::ServerSocket1ClientRead(TObject *Sender,
TCustomWinSocket *Socket)
{
AnsiString sTemp;
AnsiString sPre;
AnsiString sWelcome;
sTemp=Socket->ReceiveText();
sPre=sTemp.SubString(1,2);
if(sPre==m_sIsName)
{
AnsiString sName;
sName=sTemp.SubString(3,sTemp.Length()-2);
ListUserName->Items->Add(sName);
for(int i=0;i<ServerSocket1->Socket->ActiveConnections;i++)
{
for(int j=0;j<ListUserName->Items->Count;j++)
{
AnsiString sName;
sName=ListUserName->Items->Strings[j];
ServerSocket1->Socket->Connections[i]->SendText(sName);
Sleep(10);
}
sWelcome=m_sIsChat+m_sPart;
sWelcome+=AnsiString("大家欢迎(")+sName+AnsiString(") :) 的光临!( 服务器说:)");
ServerSocket1->Socket->Connections[i]->SendText(sWelcome);
}
}
if(sPre==m_sIsChat)
{
AnsiString sTo,sChat;
int iPos;
iPos=sTemp.Pos(m_sPart);
sTo=sTemp.SubString(3,iPos-3);
sChat=m_sIsChat+sTemp.SubString(iPos,sTemp.Length()-iPos+1);
if(sTo==AnsiString("ALL") )
for(int i=0;i<ServerSocket1->Socket->ActiveConnections;i++)
ServerSocket1->Socket->Connections[i]->SendText(sChat);
if(sTo!=AnsiString("ALL") )
{
int iIndex=ListUserName->Items->IndexOf(sTo);
ServerSocket1->Socket->Connections[iIndex]->SendText(sChat);
}
}
}
//---------------------------------------
void __fastcall TMainForm::ServerSocket1ClientDisconnect(TObject *Sender,
TCustomWinSocket *Socket)