Você pode encontrar os programas instalados no registro dos computadores. Para conetar a um registro de computador remoto você terá que ter privilégios do admin no computador. Assim o programa que você cria terá que basicamente funcionar sob um cliente do admin do domínio.
Você pode usar RegistryKey.OpenRemoteBaseKey
para puxar a informação chave do registro.
http://msdn.microsoft.com/en-us/library/microsoft.win32.registrykey.openremotebasekey.aspxVocê pode basicamente tomar este exemplo e substituir a leitura do registro para ler um computador remoto em vez do computador local
http://www.dreamincode.net/code/snippet1995.htm