Der Weg über DMO bzw. SMO ist professionell und richtig.
Jedoch gibt es dabei auch ein paar Fallen.
Wenn du SQLServer DMO (
SQL-Server 6.5, 7 ,2000) bzw. SQLServer SMO (
SQL-Server 2005 Versionen) zum suchen von
SQL-Servern nutzen möchtest, müssen diese Objekte auf dem ausführenden System installiert sein.
Die DMO wurden mit den
SQL-Server Clienttools ausgeliefert. Das bedeutet bei den Vorgängerversionen von
SQL-Server 2005, das die Clienttools vorhanden sein müssen. Kunden, die nur mit der
MSDE arbeiten, fallen dann schon einmal raus, weil die Clienttools bei der
MSDE fehlen.
Bernhard Geyer hat im
Entwicklerforum ein Beispielcode veröffentlicht, der
SQL-Server ohne DMO findet.
Wie man an die Datenbanken eines Remoteservers herankommt weiss ich auch noch nicht so genau.
Ein einfaches
SELECT [name] from <ServerName>.master.dbo.sysdatabases
funktioniert nicht in jedem Fall, weil der Remoteserver
imho in master.dbo.sysservers eingetragen sein muss.
Eventuell kann man die Remoteserver aber auch schnell in die Master-
DB des verbundenen Servers einfügen ...
Schöne Grüße,
Jens