db-client.cpp

来自「ace开发环境 用来开发网络程序 其运用了设计模式、多平台、C++等多种知识」· C++ 代码 · 共 61 行

CPP
61
字号
// $Id: db-client.cpp 72796 2006-05-26 22:33:39Z shuston $#include "ace/TLI_Connector.h"#include "ace/Log_Msg.h"#include "ace/OS_NS_stdio.h"#include "ace/OS_NS_stdlib.h"#include "ace/OS_NS_string.h"ACE_RCSID(TLI_SAP, db_client, "$Id: db-client.cpp 72796 2006-05-26 22:33:39Z shuston $")#if defined (ACE_HAS_TLI)const int MAXLINE = 255;int ACE_TMAIN (int argc, ACE_TCHAR *argv[]){  if (argc < 2)    ACE_ERROR_RETURN ((LM_ERROR,                       ACE_TEXT ("Usage: %s employee_id [server-host port-number]\n"),		       argv[0]),                      -1);  const ACE_TCHAR *emp_num = argv[1];  const ACE_TCHAR *host_name = argc < 3 ? ACE_DEFAULT_SERVER_HOST : argv[2];  unsigned short port	= argc < 4 ? ACE_DEFAULT_SERVER_PORT : ACE_OS::atoi (argv[3]);  int n;  char buf[MAXLINE];  ACE_TLI_Stream client;  ACE_TLI_Connector con;  if (con.connect (client, ACE_INET_Addr (port, host_name)) == -1)    ACE_OS::t_error ((char *) host_name), ACE_OS::exit (1);  ACE_OS::strcpy (buf, ACE_TEXT_ALWAYS_CHAR (emp_num));  n = ACE_OS::strlen (buf);  if (client.send_n (buf, n) != n)    ACE_OS::t_error ("client.send error");  if (client.recv (buf, MAXLINE) == -1 && t_errno != TLOOK && client.look () != T_DISCONNECT)    ACE_OS::t_error ("client.recv error");  if (ACE_OS::strcmp (buf, "ERROR") == 0)    ACE_OS::printf ("Employee ID %s not in database\n", emp_num);  else    ACE_OS::printf ("Employee name requested is: %s\n", buf);  if (client.close () == -1)    ACE_OS::t_error ("cli_close"), ACE_OS::exit (1);  return 0;}#elseint ACE_TMAIN (int, ACE_TCHAR *[]){  ACE_ERROR_RETURN ((LM_ERROR,                     "your platform isn't configured to support TLI\n"),                    1);}#endif /* ACE_HAS_TLI */

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?