#define DEFAULT_COUNT 20
#define DEFAULT_PORT 5150
#define DEFAULT_BUFFER 2048
#define DEFAULT_MESSAGE "This is a test of emergency broadcasting system"
char g_szServer[128] = {0}; //server to connect to
char g_Message[2048] = {0}; //message sending to server
int gi_Port = DEFAULT_PORT; //Port on server to connect to
DWORD gdw_Count = DEFAULT_COUNT; //Number of times to send message
BOOL gb_SendOnly = FALSE; //Send data only: don't receive
void usage()
{
printf("usage: client [-p:x] [-s:IP] [-n:x] [-o] \n\n");
printf(" -p:x Romote port to send to \n");
printf(" -s:IP Server's IP address or host name\n");
printf(" -n:x Number of times to send message \n");
printf(" -o Send message only \n");
ExitProcess( 1 );
}
void ValidateArgs( int argc, char **argv )
{
int i = 0;
for( i = 0; i < argc; i++ )
{
if( (argv[i][0] == '-') || ( argv[i][0] == '/' ) )
{
switch( tolower(argv[i][1]) )
{
case 'p': //remote port
if( strlen(argv[i]) > 3 )
gi_Port = atoi( &argv[i][3] );
break;
case 's': // server
if( strlen(argv[i]) > 3 )
strcpy( g_szServer, &argv[i][3] );
break;
case 'n':
if( strlen(argv[i]) > 3 )
gdw_Count = atol( &argv[i][3] );
break;
case 'o':
gb_SendOnly = TRUE;
break;
default:
usage();
break;
}
}
}
}
int main( int argc, char **argv )
{
WSADATA wsd;
SOCKET sClient;
char szBuffer[DEFAULT_BUFFER] = {0};
int ret, i ;
struct sockaddr_in server = {0};
struct hostent *host = NULL;
char *p =NULL;
short TermError = 0;
int RepLength = 0;
ValidateArgs( argc, argv );
/* 模拟抱文信息 */
int ReportLength = 20;
unsigned short ZoneCode = 0x91;
int Address = 10026;
char RepCon[11] = {"1234567890"};
char GetMsg[100] = {0};
short flag = 0;
unsigned short zonecode = 0;
int address = 0;
short ErrorCode = 0;
void usage()
{
printf("usage: server [-p:x] [-i:IP] [-o] \n\n");
printf(" -p:x port number to listen on \n");
printf(" -i:str interface to listen on \n");
printf(" -o don't echo the data back \n");
ExitProcess( 1 );
}
/*
* Function: ValidateArgs
* Descriptions:phrase the commad line arguements
* and set some globle flags
*/
void ValidateArgs( int argc, char **argv )
{
int i = 0;