Click here to view and discuss this page in DocCommentXchange. In the future, you will be sent there automatically.

SQL Anywhere 11.0.1 (中文) » MobiLink - 客户端管理 » 用于 MobiLink 的 SQL Anywhere 客户端 » Dbmlsync API » 适用于 C++ 的 Dbmlsync API

 

StartServer 方法

此方法首先检查是否有 dbmlsync 服务器在指定的端口上监听。如果存在服务器,该方法将 starttype 参数设置为 DBSC_SS_ALREADY_RUNNING 并且不执行进一步动作即返回。如果未找到服务器,则此方法使用由 cmdline 参数所指定的选项启动一个新的服务器并在返回前等待其开始接受请求。

注意

在 Windows Mobile 设备中,在成功调用 StartServer 之前,通常需要设置服务器路径属性。在以下实例中不需要设置服务器路径属性:

  • 应用程序与 dbmlsync.exe 位于同一目录。

  • dbmlsync.exe 位于 Windows 目录。

语法
bool StartServer( unsigned port, const char *cmdline, unsigned timeout, DBSC_Starttype *starttype );
参数
  • port    检查是否已有 dbmlsync 服务器的 TCP 端口。如果启动新服务器,则它会被设置为监听此端口。

  • cmdline   用于启动 dbmlsync 服务器的有效命令行。此命令行仅能包含以下选项(这些选项对于 dbmlsync 实用程序具有相同的含义):

    • -a、-c、-dl、-do、-ek、-ep、-k、-l、-o、-os、-ot、-p、-pc+、-pc-、-pd、-pp、-q、-qi、-qc、-sc、-sp、-uc、-ud、-ui、-um、-un、-ux、-v[cnoprsut]、-wc、-wh。请参见dbmlsync 语法

    必须指定 -c 选项。

  • timeout   dbmlsync 服务器启动后到其可接受请求所需的最长等待时间,以毫秒为单位。使用 DBSC_INFINITY 可一直等待。

  • starttype   这是一个 OUT 参数。如果 starttype 为非空条目并且 StartServer 返回 true,则退出时 starttype 指向的变量被设置为以下值之一:

    • DBSC_SS_STARTED   表示已启动了新的 dbmlsync 服务器。

    • DBSC_SS_ALREADY_RUNNING   表示已找到一个现有 dbmlsync 服务器,所以未启动新的服务器。

返回值

如果服务器已经运行或成功启动,则返回 true。

如果服务器未成功启动或者在超时到期之前未开始处理请求,则返回 false。返回 false 时,您可调用 GetErrorInfo 方法获取有关失败的详细信息。请参见GetErrorInfo 方法