Jump to content

Computer Info UDF's


 Share

Recommended Posts

Hi!

Loving this UDF, you're doing a great job!

Is there anyway to add a function to obtain:

1.GPU clock speed (for the core bus and the memory bus)

2.RAM speed

Thanks :)

Thanks for your interest in this project. I will try to find if I can obtain that information for you and incorporate it into this UDF.

Thanks again,

Jarvis

AutoIt Links

File-String Hash Plugin Updated! 04-02-2008 Plugins have been discontinued. I just found out.

ComputerGetInfo UDF's Updated! 11-23-2006

External Links

Vortex Revolutions Engineer / Inventor (Web, Desktop, and Mobile Applications, Hardware Gizmos, Consulting, and more)

Link to comment
Share on other sites

Hi!

Loving this UDF, you're doing a great job!

Is there anyway to add a function to obtain:

1.GPU clock speed (for the core bus and the memory bus)

2.RAM speed

Thanks :)

When you speak of RAM Speed, are you talking about _ComputerGet_Memory() It's the 22nd item in the array. Below is a code sample that may show what you're looking for...
#include "..\CompInfo.au3"

Dim $Memory

_ComputerGetMemory($Memory)
If @error Then
    $error = @error
    $extended = @extended
    Switch $extended
        Case 1
            _ErrorMsg($ERR_NO_INFO)
        Case 2
            _ErrorMsg($ERR_NOT_OBJ)
    EndSwitch
EndIf

For $i = 1 To $Memory[0][0] Step 1
    MsgBox(0, "Test _ComputerGetMemory",            "Name: " & $Memory[$i][0] & @CRLF & _
            "BankLabel: " & $Memory[$i][1] & @CRLF & _
            "Capacity: " & $Memory[$i][2] & @CRLF & _
            "CreationClassName: " & $Memory[$i][3] & @CRLF & _
            "Description: " & $Memory[$i][4] & @CRLF & _
            "DataWidth: " & $Memory[$i][5] & @CRLF & _
            "DeviceLocator: " & $Memory[$i][6] & @CRLF & _
            "FormFactor: " & $Memory[$i][7] & @CRLF & _
            "HotSwappable: " & $Memory[$i][8] & @CRLF & _
            "InterleaveDataDepth: " & $Memory[$i][9] & @CRLF & _
            "InterleavePosition: " & $Memory[$i][10] & @CRLF & _
            "Manufacturer: " & $Memory[$i][11] & @CRLF & _
            "MemoryType: " & $Memory[$i][12] & @CRLF & _
            "Model: " & $Memory[$i][13] & @CRLF & _
            "OtherIdentifyingInfo: " & $Memory[$i][14] & @CRLF & _
            "PartNumber: " & $Memory[$i][15] & @CRLF & _
            "PositionInRow: " & $Memory[$i][16] & @CRLF & _
            "PoweredOn: " & $Memory[$i][17] & @CRLF & _
            "Removable: " & $Memory[$i][18] & @CRLF & _
            "Replaceable: " & $Memory[$i][19] & @CRLF & _
            "SerialNumber: " & $Memory[$i][20] & @CRLF & _
            "SKU: " & $Memory[$i][21] & @CRLF & _
            "Speed: " & $Memory[$i][22] & @CRLF & _
            "Status: " & $Memory[$i][23] & @CRLF & _
            "Tag: " & $Memory[$i][24] & @CRLF & _
            "TotalWidth: " & $Memory[$i][25] & @CRLF & _
            "TypeDetail: " & $Memory[$i][26] & @CRLF & _
            "Version: " & $Memory[$i][27])
Next

Func _ErrorMsg($message, $time = 0)
    MsgBox(48 + 262144, "Error!", $message, $time)
EndFunc

I hope this helps with that one area,

Jarvis

AutoIt Links

File-String Hash Plugin Updated! 04-02-2008 Plugins have been discontinued. I just found out.

ComputerGetInfo UDF's Updated! 11-23-2006

External Links

Vortex Revolutions Engineer / Inventor (Web, Desktop, and Mobile Applications, Hardware Gizmos, Consulting, and more)

Link to comment
Share on other sites

Hi!

Regarding that speed, is it the speed of the RAM chip in MHz? And while we're on the subject of memory, what does the type indiciate? DDR number? So type 2 means DDR2?

Thanks again!

I believe it's in MHz due to I know I have 266 in my system, and it show's that up. I don't know exactly about the DDR2, I will try and look it up on M$'s website.

@Everyone

New functions coming soon. I have went through the AutoIt Scriptomatic made by SvenP and pulled all the WMIv2 Functions. Eventually I would like to use the WMI calls to get more specific information and also be able to change the information using the methods available to each of them. I am working out the structure now. I am also working on getting the Constants in place for each of these calls so it will be more seamless.

Thanks,

Jarvis

AutoIt Links

File-String Hash Plugin Updated! 04-02-2008 Plugins have been discontinued. I just found out.

ComputerGetInfo UDF's Updated! 11-23-2006

External Links

Vortex Revolutions Engineer / Inventor (Web, Desktop, and Mobile Applications, Hardware Gizmos, Consulting, and more)

Link to comment
Share on other sites

  • 3 weeks later...

Hey Jarvis,

This looks pretty awesome at the moment, haven't tested it yet, but going to. I just finished writing a wrapper for winaudit (http://www.pxserver.com/WinAudit.htm) and Jellybean keyfinder (http://magicaljellybean.com/) to export to a MySQL DB, then found your UDF's.

One question I have is I've looked through your UDF functions and haven't noticed one for grabbing CD Keys. Any intention on implementing something like this? I'm not sure if it's possible, I'm trying to find out. If so, I'll be able to scrap my current script and implement the whole thing in Autoit instead of relying on external exe's that I have to package. It'll also mean I can reduce the size of the script from 20MB to just text... hoping <1MB.

Thanks mate,

Pinkbits

Link to comment
Share on other sites

  • 2 weeks later...
  • 1 month later...

I have had zero issues with Windows XP 32bit.

However when I include this UDF and run it on 2000, 03, 08, Vista, 7 and PDC's my entire exe bombs. It's the user/group functions I used. I just wanted to list the groups and users and remove the password never expires flag if set.

Does anyone know if there is a more updated UDF? I don't think this one has been updated in 3 years and the operating systems have been updated... Does that even matter?

I can post my code if anyone thinks it should still work.

www.abox.orgAvery HowellVisit My AutoIt Websitehttp://www.abox.org
Link to comment
Share on other sites

can someone help me out, __StringToDate is not found in the script where should i find it??

rajeshontheweb, It's in the CompInfo.au3 file. It's at the bottom.

I get some information in BIOS function.

Can we get computer model? (HP 6510 NC6310 IBM Proliand Dell.....)

Thanks for great codes...

FATIHTALI,

Unfortunately, I am just providing an interface to the COM objects that are available through WMI. If those don't acquire the proper information, I don't have any lower level control over the system.

@Everyone,

Maybe I should look into making a plugin that would allow me to return some more information more similar to CPU-Z. However, the problem with that would be not being able to use all the commands remotely. WMI allows you to remotely check other PC's which is quite handy. I will check into it and see what I can come up with.

Thanks,

Jarvis

AutoIt Links

File-String Hash Plugin Updated! 04-02-2008 Plugins have been discontinued. I just found out.

ComputerGetInfo UDF's Updated! 11-23-2006

External Links

Vortex Revolutions Engineer / Inventor (Web, Desktop, and Mobile Applications, Hardware Gizmos, Consulting, and more)

Link to comment
Share on other sites

I have had zero issues with Windows XP 32bit.

However when I include this UDF and run it on 2000, 03, 08, Vista, 7 and PDC's my entire exe bombs. It's the user/group functions I used. I just wanted to list the groups and users and remove the password never expires flag if set.

Does anyone know if there is a more updated UDF? I don't think this one has been updated in 3 years and the operating systems have been updated... Does that even matter?

I can post my code if anyone thinks it should still work.

Avery,

I haven't updated or added any functions in a while, but the post should still work. I haven't had the ability to test on any of those operating systems so I would need to see exactly where it's breaking down. Are you doing any error checking to gracefully catch the error so your exe doesn't bomb? I'm not sure that Windows 2000 has WMI enabled or if it even has it. I would check to be sure it's enabled on 03, and 08. As to Vista and Windows 7, I have yet to hear any complaints or usage of the functions on those boxes. If you could catch some errors, I would probably be of more assistance in resolving this for you.

Thanks,

Jarvis

AutoIt Links

File-String Hash Plugin Updated! 04-02-2008 Plugins have been discontinued. I just found out.

ComputerGetInfo UDF's Updated! 11-23-2006

External Links

Vortex Revolutions Engineer / Inventor (Web, Desktop, and Mobile Applications, Hardware Gizmos, Consulting, and more)

Link to comment
Share on other sites

@Jarvis,

I have no problems with this on all OSes

Another thing In February you mentioned you were working on some new things and you reffered to scriptomatic .. any progress ?

Thnx

Emiel

At my company I have been pulled to a couple of other projects, but I am working slowly on it. I know it's time for an update for sure...will try to have one out soon.

Thanks for checking in, it's always good to know there's people using something you wrote. I'm just excited by 10k downloads! :)

Thanks again,

Jarvis

AutoIt Links

File-String Hash Plugin Updated! 04-02-2008 Plugins have been discontinued. I just found out.

ComputerGetInfo UDF's Updated! 11-23-2006

External Links

Vortex Revolutions Engineer / Inventor (Web, Desktop, and Mobile Applications, Hardware Gizmos, Consulting, and more)

Link to comment
Share on other sites

I'm getting an error when using the OS part. Any idear if it's my computer or a bug?

This error is all I get in SciTe

CompInfo.au3 (584) : ==> The requested action with this object has failed.:

$aOSInfo[$i][43] = $objItem.QuantumLength

$aOSInfo[$i][43] = $objItem.QuantumLength^ ERROR

Software:Model Train Calculator (Screen)Autoit3 beginner!
Link to comment
Share on other sites

I'm getting an error when using the OS part. Any idear if it's my computer or a bug?

This error is all I get in SciTe

CompInfo.au3 (584) : ==> The requested action with this object has failed.:

$aOSInfo[$i][43] = $objItem.QuantumLength

$aOSInfo[$i][43] = $objItem.QuantumLength^ ERROR

What OS, and does it do that when using my example, or a script you have created using CompInfo.au3?

Thanks,

Jarvis

AutoIt Links

File-String Hash Plugin Updated! 04-02-2008 Plugins have been discontinued. I just found out.

ComputerGetInfo UDF's Updated! 11-23-2006

External Links

Vortex Revolutions Engineer / Inventor (Web, Desktop, and Mobile Applications, Hardware Gizmos, Consulting, and more)

Link to comment
Share on other sites

  • 2 weeks later...

I tried to create a program in vista using the udf but it fails with the error message below. The code runs beautifully on XP all versions but runs inside scite in vista. When i use compiled exe or a3x it fails

Line -1:

Error: The requested action with this object has failed.

Complete code given below

#include "CompInfo.au3"
Dim $Processes, $Services, $aOS,$Processors,$drv

msgbox(64,"Welcome","I am about to gather info about this system" & @CRLF & "All data will be saved in this folder once completed" & @CRLF & "Press OK to start",10)


$file=FileOpen ("info.html",2)
If $file = -1 Then
    MsgBox(0, "Error", "Unable to open file to save info in current folder: " & @ScriptDir)
    Exit
EndIf
;setup file
FileWriteLine($file,"<html><body><font face=Arial size=-1><table width=100% border=1>")
FileWriteLine ($file,"<tr><td colpsan=4><b>SYSTEM INFO</b></td></tr>")
FileWriteLine($file,"<tr><td colspan=2><b>Server Name:</b></td><td colpsan=2>" &  @ComputerName & "</td></tr>")

FileWriteLine($file,"<tr><td colpsan=4><b>DRIVE(s) INFORMATION</b></td></tr>")
;Drive details
_ComputerGetDrives($drv,"ALL")
If NOT @error Then
    FileWriteLine($file, "<tr><td colpsan=4>Found <b>" & $drv[0][0] & "</b> drive(s)</td></tr>")
    FileWriteLine($file, "<tr><td ><b>DriveName</b></td><td><b>Total Space</b></td><td colpsan=2><b>Free Space</b></td></tr>")
    For $i = 1 to $drv[0][0] Step 1
        FileWriteLine($file,"<tr><td > " & $drv[$i][0] & "</td><td>" & Round($drv[$i][5] / 1024, 2) & "GB</td><td colspan=2>" & Round($drv[$i][4] / 1024, 2) & "GB</td> </tr>")
    Next
Else
    FileWriteLine($file,"<tr><td colpsan=4>Failed To enumerate drives. Could not fetch info !</td></tr>" )
EndIf
FileWriteLine($file,"<tr><td colpsan=4><b>PROCESS LIST</b></td></tr>")
;process list
$Processes = _ProcessListProperties()
If NOT @error Then
    FileWriteLine($file,"<tr><td><b>Process Name</b> </td><td><b>Binary</b>  </td><td><b>Memory</b> </td><td><b>CPU Usage</b> </td></tr>")
    
    For $i = 1 To $Processes[0][0] Step 1
        FileWriteLine($file,"<tr><td>" & $Processes[$i][0] & "</td><td>" & $Processes[$i][5]  & "</td><td>" & Round($Processes[$i][7]/1024)  & "KB</td><td>" & $Processes[$i][6] & "</td></tr>")
    
    Next 
Else
    FileWriteLine($file,"<tr><td colpsan=4>Failed To enumerate processes. Could not fetch info !</td></tr>" )   
EndIf

;Page File details
FileWriteLine($file, "<tr><td colpsan=4><b>PAGEFILE</b></td></tr>")
_ComputerGetOSs($aOS)
If NOT @error Then
    FileWriteLine($file,"<tr><td colpsan=4>Page File Size: <b>" & $aOS[1][56] & "</b></td></tr>")
Else
    FileWriteLine($file,"<tr><td colpsan=4>Failed To obtain Page File Info. Could not fetch info !</td></tr>")  
EndIf
;Processor details

FileWriteLine($file,"<tr><td colpsan=4><b>CPU-PROCESSOR(S)</b></td></tr>")
_ComputerGetProcessors($Processors)
If NOT @error Then
    For $i = 1 To $Processors[0][0] Step 1
        FileWriteLine($file,"<tr><td>Processor Name:</td><td><b>" & $Processors[$i][0] &  "</b></td><td>Load Percentage:</td><td> <b>" & $Processors[$i][21]& "</b></td></tr>")
    
    Next 
Else
    FileWriteLine($file,"<tr><td colpsan=4>Failed To enumerate Processors. Could not fetch info !</td></tr>" )  
EndIf
;Service Details
FileWriteLine($file,"<tr><td colpsan=4><b>SERVICES LIST</b></td></tr>")
_ComputerGetServices($Services)
If NOT @error Then
        FileWriteLine($file,"<tr><td colspan=2><b>Service Name</b></td><td colspan=2> <b>Status</b></td></tr>")

For $i = 1 To $Services[0][0] Step 1
        FileWriteLine($file,"<tr><td colspan=2>" & $Services[$i][7] &  "</td><td colspan=2>" & $Services[$i][17] & "</td></tr>")
    
    Next 
Else
    FileWriteLine($file,"<tr><td colpsan=4>Failed To enumerate processes. Could not fetch info !</td></tr>" )   
EndIf
FileWriteLine($file,"</table></font></body></html>")
FileClose($file)
msgbox(64,"Process Complete","All the information is saved in"& @CRLF & "Info.html"& @CRLF & "in the same folder" & @CRLF & "Press OK to launch file",10)
ShellExecute("info.html", "", @ScriptDir, "open")
Edited by Vinu
Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
 Share

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...