I use (sort of) Microsoft SMS. The reason I say sort of is that SMS isnt quite all there yet... It does do hardware inventories very well. Software inventories are useable, but are some times a little messy (but this may be my setup). It also has a host of other applications that go along with it, but some work better than others.