我希望能够获得所有正在运行的Sybase SQL Anywhere v10-16数据库服务器名称(和版本)的列表。
是否有“内置”方式(最好是在C#中)?
我正在考虑查找所有正在运行的SQL Anywhere服务器进程,然后进行pinvoking以从其中一个进程'主窗口中拉出Caption / Window Title(不幸的是,process.MainWindowTitle不起作用,至少在服务器时不起作用)以隐藏的方式启动。
答案 0 :(得分:0)
不在C#中。您可以在C / C ++应用程序中使用dblocate_servers_ex
函数(documentation),或者可以生成dblocate实用程序并捕获输出,但这就是它。
dblocate实用程序FYI不进行任何TCP连接。它发送SQL Anywhere服务器响应的广播数据包,然后列出响应。
请注意,-sb 0
切换点是 make 无法使用dblocate查找服务器。如果有可能找到它,那么转换将毫无用处。
完全披露:我在SQL Anywhere工程中为SAP工作。