Solved

search software installed

Posted on 2001-06-29
5
119 Views
Last Modified: 2010-04-06
i need a program in delphi that show me the software installed (software and license number) of each computer attached at my network. how can i do that?
0
Comment
Question by:gonzmar
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
  • 2
  • 2
5 Comments
 
LVL 4

Expert Comment

by:YodaMage
ID: 6239076
Huh? What software?  What kind of network?
0
 

Author Comment

by:gonzmar
ID: 6239615
i need to retrieve de software installled on each computer (this software appear in the add/remove programs in the control panel applet) and our network (LAN) are based on TCP/IP.

For example, if a double click on my network neighborhood icon, i can see a lot of PC's attached to my local network, so, i need to obtain the software installed on each computer and build a report of that information.
0
 
LVL 14

Expert Comment

by:DragonSlayer
ID: 6240063
Hi gonzmar,

To do that you would have to remotely connect to each computer's registry, then query the registry entries.

1. You connect to a remote registry via RegConnectRegistry
2. You will get a handle to the registry (if all goes well)
3. Open HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall and read all the values there
4. Also open HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Uninstall and read all the values there
5. Use RegCloseKey to close the remote registry handle
6. Loop 1-5 for each other computer.

NOTE:
You need to read the DisplayName (it's a String Value) under the registry key, e.g. for HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\Delphi5, reading the DisplayName value will give you "Borland Delphi 5"


Good luck!


DragonSlayer.
0
 

Author Comment

by:gonzmar
ID: 6249047
ok, dragon!, would you please send me an example of using regconnectregistry?
0
 
LVL 14

Accepted Solution

by:
DragonSlayer earned 30 total points
ID: 6251241
Hi Gonzmar,

I just found out that you can do it with TRegistry as well.

Check out TRegistry.RegistryConnect from the Help file.


Cheers,
DragonSlayer.
0

Featured Post

Enroll in June's Course of the Month

June's Course of the Month is now available! Every 10 seconds, a consumer gets hit with ransomware. Refresh your knowledge of ransomware best practices by enrolling in this month's complimentary course for Premium Members, Team Accounts, and Qualified Experts.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

A lot of questions regard threads in Delphi.   One of the more specific questions is how to show progress of the thread.   Updating a progressbar from inside a thread is a mistake. A solution to this would be to send a synchronized message to the…
Introduction The parallel port is a very commonly known port, it was widely used to connect a printer to the PC, if you look at the back of your computer, for those who don't have newer computers, there will be a port with 25 pins and a small print…
In this video we outline the Physical Segments view of NetCrunch network monitor. By following this brief how-to video, you will be able to learn how NetCrunch visualizes your network, how granular is the information collected, as well as where to f…
This is my first video review of Microsoft Bookings, I will be doing a part two with a bit more information, but wanted to get this out to you folks.

734 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question