Alexander01
Nov 5 2003, 07:41 PM
anobody knows a command to display the software list in the control panel into a dos box..
M3lon
Nov 5 2003, 09:30 PM
Can't u just use something like tlist, thats the simplest way i know to list all the programs running and get their id.
Grinler
Nov 6 2003, 03:55 AM
What exactly are you trying to do? Are you trying to list the running processes on your box from a dos/cmd prompt or something else?
Alexander01
Nov 6 2003, 08:24 AM
this program does it but i ONLY need the software list.. (it's for my rootkit)
i want to intergrate it, ive done the same with tlist and info.exe and now i want it too with a tool that can list the software in the control panel so i have 1 txt with al info
Alexander01
Nov 6 2003, 08:29 AM
fertile
Nov 6 2003, 10:03 AM
regedit /e appsreg.txt HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall
do that command and it willl output the reg keys into a text file, then you can "type" the text file in a dos window or do whatever you like with it
this is the quickest way to do it using existing tools..
but im sure there is some random obscure freeware program that will do it better
fertile
Nov 6 2003, 10:09 AM
this will only be helpful to a small amount of people but is a real handy info gathering "script" (i think calling it a script is pushing it heh).. stick it in a text file and rename it .bat
useful for a quick overview of the machine state and config..
all the .exe's are freeware if i remember correctly.. google will find em for you
mkdir %COMPUTERNAME%
REM run process viewer to grab running processes info - focus on explorer
pv.exe -s > %COMPUTERNAME%\proc1.txt
pv.exe -t > %COMPUTERNAME%\proc2.txt
pv.exe -e > %COMPUTERNAME%\proc3.txt
pv.exe -m -e explorer.exe > %COMPUTERNAME%\proc4.txt
REM ipconfig to see config of NIC and gateway etc
ipconfig /all > %COMPUTERNAME%\ipconfig.txt
REM -rse switch to show tables and packet data
netstat -rse > %COMPUTERNAME%\netstat1.txt
REM -a for all current ports open and why
netstat -a > %COMPUTERNAME%\netstat2.txt
REM get list of shares open (winmsd will tell about drives mapped)
net use > %COMPUTERNAME%\netuse.txt
REM get netbios remote cache data
nbtstat -c > %COMPUTERNAME%\nbtstat.txt
nbtstat -n > %COMPUTERNAME%\nbtstat2.txt
REM programs listed in add/remove
regedit /e %COMPUTERNAME%\appsreg.txt HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall
REM make a dir for the sms logs
mkdir %COMPUTERNAME%\smslogs
mkdir %COMPUTERNAME%\smslogs\temp
REM pslist for detailed process info
pslist.exe -x > %COMPUTERNAME%\pslist.txt
REM psservice to check NAV service is running
psservice.exe > %COMPUTERNAME%\psservice.txt
Echo Analyzing SMS
REM copy up the sms logs from both places on the HD
copy /y c:\winnt\ms\sms\logs\*.* %COMPUTERNAME%\smslogs
copy /y c:\winnt\temp\ms\sms\logs\*.* %COMPUTERNAME%\smslogs\temp
REM make a dir for the NAV logs
mkdir %COMPUTERNAME%\navlogs
Echo Analyzing NAV
REM copy up the NAV logs from the HD
copy /y "C:\Program Files\Navnt\Logs\*.*" %COMPUTERNAME%\navlogs
REM run eldump to export apps and sys event logs to txt files
eldump > %COMPUTERNAME%\applog.txt
eldump sys > %COMPUTERNAME%\syslog.txt
Echo Gathering more detailed information about your system . . .this may take a few moments
REM grab a quick system summary - hardware, OS, mapped drives, shares, etc
REM decided to use msinfo although winmsd is much faster - MSinfo gives more detail
"C:\Program Files\Common Files\Microsoft Shared\MSInfo\msinfo32.exe" /computer %COMPUTERNAME% /catagories +all /report %COMPUTERNAME%\sysinfo.txt
QuadMedic
Nov 10 2003, 01:37 PM

hey
try C:\net start or better tlist.exe..................not sure if net start works on dos PC's only.
DJVASTVASTY2K
Dec 1 2003, 03:31 AM
@ Fertile
Very Nice Bat Script File M8,
This Has Give Me Some Great Idea

Thank You
Best Regards
Adam
Vast Gsm Team
batigoooal
Dec 1 2003, 02:18 PM
This is an example of vbs script for list all application and put it in a txt on c:\. For make it working in a command line remove the msg box in the code.
You would have two list. The first by the way of wmi, the second by the registry
Enjoy,
strComputer="."
dim fs
dim fictxt
wscript.echo "Debut"
set fs=createobject("Scripting.FileSystemObject")
set fictxt=fs.opentextfile("C:\asoftware.txt",2,true)
Const BASE_KEY = "SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\"
Const HKLM = &H80000002
Dim strDisplayName
Dim strDisplayVersion
Dim strInstallLocation
Dim strDisplayVersionMajor
Dim strDisplayVersionMinor
Dim strInstallDate
Dim strInstallFrom
Dim lngRtn
Dim astrSubKeys
Dim strKey
Dim vntTmp
Dim j
Dim colsoftware
Dim objsoftware
ReDim vntTmp(5)
debTitre = indiceLg
indiceLg = indiceLg + 2
on error resume next
err.clear
Set colsoftware = GetObject("winmgmts:" & "{impersonationLevel=impersonate}!\\" & strComputer & "\root\cimv2").ExecQuery("Select * from Win32_Product")
If Err.Number <> 0 Then
fictxt.writeline "Connexion error " & strComputer
on error goto 0
Else
on error goto 0
For Each objsoftware In colsoftware
if not(isnull(objsoftware.Caption)) then strCaption=objsoftware.Caption else strCaption=""
if not(isnull(objsoftware.Description)) then strDesc=objsoftware.Description else strDesc=""
if not(isnull(objsoftware.IdentifyingNumber)) then strId=objsoftware.IdentifyingNumber else strId=""
if not(isnull(objsoftware.InstallDate)) then strInstallDate=objsoftware.InstallDate else strInstallDate=""
if not(isnull(objsoftware.InstallLocation)) then strInstLoc=objsoftware.InstallLocation else strInstLoc=""
if not(isnull(objsoftware.Name)) then strName=objsoftware.Name else strName=""
if not(isnull(objsoftware.PackageCache)) then strPC=objsoftware.PackageCache else strPC=""
if not(isnull(objsoftware.Vendor)) then strVendor=objsoftware.Vendor else strVendor=""
if not(isnull(objsoftware.Version)) then strVersion=objsoftware.Version else strVersion=""
fictxt.writeline strCaption & space(60-len(strCaption)) & _
strDesc & space(60-len(strDesc)) & _
strId & space(50-len(strId)) & _
strInstallDate & space(25-len(strInstallDate)) & _
strInstLoc & space(70-len(strInstLoc)) & _
strName & space(70-len(strName)) & _
strPC & space(40-len(strPC)) & _
strVendor & space(35-len(strVendor)) & _
strVersion & space(25-len(strVersion))
Next
End If
'**************** Registry ***********************
fictxt.writeline vbcrlf & "--------------" & vbcrlf
on error resume next
err.clear
Set colsoftware = GetObject("winmgmts:{impersonationLevel=impersonate}!\\" & strComputer & "/root/default:StdRegProv")
lngRtn = colsoftware.EnumKey(HKLM, BASE_KEY, astrSubKeys)
If Err.Number <> 0 Then
fictxt.writeline "Connexion error " & strComputer
on error goto 0
Else
on error goto 0
For Each strKey In astrSubKeys
strDisplayName = vbNullString
strDisplayVersion = vbNullString
strInstallLocation = vbNullString
strDisplayVersionMajor = vbNullString
strDisplayVersionMinor = vbNullString
strInstallDate = vbNullString
strInstallFrom = vbNullString
' ---------------------------------------
' Get the display name
' ---------------------------------------
lngRtn = colsoftware.GetStringValue(HKLM, BASE_KEY & strKey, "DisplayName", strDisplayName)
' If blank, try "Quiet Name
If Trim(strDisplayName) = vbNullString Then
lngRtn = colsoftware.GetStringValue(HKLM, BASE_KEY & strKey, "QuietDisplayName", strDisplayName)
End If
' If other 2 fail, use the key name
If Trim(strDisplayName) = vbNullString Then
strDisplayName = strKey
End If
if isnull(strDisplayName) then vntTmp(1)="" else vntTmp(1) = strDisplayName
' ---------------------------------------
' Get the Display version or alternate
' ---------------------------------------
lngRtn = colsoftware.GetStringValue(HKLM, BASE_KEY & strKey, "DisplayVersion", strDisplayVersion)
' Else, concatenate the version info
If Trim(strDisplayVersion) = vbNullString Then
lngRtn = colsoftware.GetStringValue(HKLM, BASE_KEY & strKey, "VersionMajor", strDisplayVersionMajor)
lngRtn = colsoftware.GetStringValue(HKLM, BASE_KEY & strKey, "VersionMinor", strDisplayVersionMinor)
strDisplayVersion = strDisplayVersionMajor & "." & strDisplayVersionMinor
End If
' If all else fails, try just the "Version" string
If Trim(strDisplayVersionMajor) = vbNullString Then
lngRtn = colsoftware.GetStringValue(HKLM, BASE_KEY & strKey, "Version", strDisplayVersion)
End If
if isnull(strDisplayVersion) then vntTmp(2)="" else vntTmp(2) = strDisplayVersion
' ---------------------------------------
' Get the installatin location
' ---------------------------------------
lngRtn = colsoftware.GetStringValue(HKLM, BASE_KEY & strKey, "InstallLocation", strInstallLocation)
If Trim(strInstallLocation) = vbNullString Then
lngRtn = colsoftware.GetStringValue(HKLM, BASE_KEY & strKey, "UninstallString", strInstallLocation)
End If
if isnull(strInstallLocation) then vntTmp(3)="" else vntTmp(3) = strInstallLocation
' ---------------------------------------
' Get the installation Date
' ---------------------------------------
lngRtn = colsoftware.GetStringValue(HKLM, BASE_KEY & strKey, "InstallDate", strInstallDate)
If Len(Trim(strInstallDate)) > 0 Then
if isnull(strInstallDate) then vntTmp(4)="" else vntTmp(4)=strInstallDate
End If
' ---------------------------------------
' Get the install-from location
' ---------------------------------------
lngRtn = colsoftware.GetStringValue(HKLM, BASE_KEY & strKey, "InstallSource", strInstallFrom)
if isnull(strInstallFrom) then vntTmp(5) ="" else vntTmp(5)=strInstallFrom
' ---------------------------------------
' Export Excel
' ---------------------------------------
If Trim(vntTmp(1)) <> vbNullString And InStr(vntTmp(1), "{") = 0 Then
fictxt.writeline vntTmp(1) & space(100-len(vntTmp(1))) & _
vntTmp(4) & space(80-len(vntTmp(4))) & _
vntTmp(3) & space(110-len(vntTmp(3))) & _
vntTmp(5) & space(80-len(vntTmp(5))) & _
vntTmp(2) & space(80-len(vntTmp(2)))
End If
Next
End If
Set colsoftware = Nothing
Set objWMIService = Nothing
fictxt.close
set fictxt=nothing
set fs=nothing
wscript.echo "fin"