0

is there any way (or API) to use to get a list of all installed DBMS in a computer using C# ?

I heared WMI can get informations about the system , but can it be used to get installed DBMS ?

any advice ? EDIT : problem solved , there isn't any API or DLL to pull list of installed DBMS , the only way is to get list of running processes and then compare them to an internal list.

Thanks!

RedhopIT
  • 609
  • 2
  • 7
  • 20
  • 4
    I highly doubt there is a function to retrieve specifically the installed DBMS. You would most likely have to look at running processes or installed applications and search for specific applications. – trickdev Feb 02 '12 at 15:39

1 Answers1

2

Short answer: No.

Longer answer: There is nothing that defines a particular application as a "DBMS". So you would need to look at all the installed software, and attempt to identify the individual pieces of software that you qualify as a "DBMS". To windows, its just software and services.

For example, what qualifies as a "DBMS" (to you)? Probably SQL Server, MySQL, but what about RavenDB? It's not what I would call a "DBMS", although it can certainly fill a lot of the same roles.

CodingGorilla
  • 19,612
  • 4
  • 45
  • 65
  • thanks for your reply , i've seen something similar (a software that get a list of only installed and running DBMS)...i thought there would be an api to handle this – RedhopIT Feb 02 '12 at 15:51
  • If that's the case, then it probably has an internal list that it compares installed software to. Each "DBMS" in it's list probably even has some criteria (ie. file system folder, or registry key) that it uses to identify whether it's installed or not. – CodingGorilla Feb 02 '12 at 16:25