Sign in to follow this  
Followers 0
Chimaera

Computer basic assessment / health check program?

11 posts in this topic

#1 ·  Posted (edited)

Hi all

Something that's come up at work is being able to offer a free computer health check or basic assessment to our customers as a way of generating new contacts and customers, and give them a free report.

We have been looking around at whats available and all the rubbish that is a waste of time.

Ideally we would like the program to run some basic tests memory/ hard drives/ etc and then produce a list of items and also anything with problems in a very general sense.

then we could point out areas where they could improve the pc with our help of course :)

I will only want it to take a max of about 15 mins per machine and produce a couple of pages of report ideally

They are all home user machines so detailed networking is not necessary

Question is has this been done in AutoIt?

Or can you recommend outside software that will give me the reports i would like to produce?

many thx

Edited by Chimaera

Share this post


Link to post
Share on other sites



I have seen something like that in autoit, i will check in my snippet folder when i am at home. By the way did you already know Everest?

HI!


My UDF: NetInfo UDF Play with your network, check your download/upload speed and much more! YTAPI Easy to use YouTube API, now you can easy retrive all needed info from a video. NavInfo Check if a specific browser is installed and retrive other usefull information. YWeather Easy to use Yahoo Weather API, now you can easily retrive details about the weather in a specific region. No-IP UDF Easily update your no-ip hostname(s).

My Script: Wallpaper Changer Change you wallpaper dinamically, you can also download your wallpaper from your website and share it with all!   My Snippet: _ImageSaveToBMPConvert an image to bmp format. _SciteGOTO Open a file in SciTE at specific fileline. _FileToHex Show the hex code of a specified file

Share this post


Link to post
Share on other sites

Something like Speccy?


_AdapterConnections()_AlwaysRun()_AppMon()_AppMonEx()_BinaryBin()_CheckMsgBox()_CmdLineRaw()_ContextMenu()_ConvertLHWebColor()/_ConvertSHWebColor()_DesktopDimensions()_DisplayPassword()_DotNet_Load()/_DotNet_Unload()_Fibonacci()_FileCompare()_FileCompareContents()_FileNameByHandle()_FilePrefix/SRE()_FindInFile()_GetBackgroundColor()/_SetBackgroundColor()_GetConrolID()_GetCtrlClass()_GetDirectoryFormat()_GetDriveMediaType()_GetFilename()/_GetFilenameExt()_GetHardwareID()_GetIP()_GetIP_Country()_GetOSLanguage()_GetSavedSource()_GetStringSize()_GetSystemPaths()_GetURLImage()_GIFImage()_GoogleWeather()_GUICtrlCreateGroup()_GUICtrlListBox_CreateArray()_GUICtrlListView_CreateArray()_GUICtrlListView_SaveCSV()_GUICtrlListView_SaveHTML()_GUICtrlListView_SaveTxt()_GUICtrlListView_SaveXML()_GUICtrlMenu_Recent()_GUICtrlMenu_SetItemImage()_GUICtrlTreeView_CreateArray()_GUIDisable()_GUIImageList_SetIconFromHandle()_GUIRegisterMsg()_GUISetIcon()_Icon_Clear()/_Icon_Set()_IdleTime()_InetGet()_InetGetGUI()_InetGetProgress()_IPDetails()_IsFileOlder()_IsGUID()_IsHex()_IsPalindrome()_IsRegKey()_IsStringRegExp()_IsSystemDrive()_IsUPX()_IsValidType()_IsWebColor()_Language()_Log()_MicrosoftInternetConnectivity()_MSDNDataType()_PathFull/GetRelative/Split()_PathSplitEx()_PrintFromArray()_ProgressSetMarquee()_ReDim()_RockPaperScissors()/_RockPaperScissorsLizardSpock()_ScrollingCredits_SelfDelete()_SelfRename()_SelfUpdate()_SendTo()_ShellAll()_ShellFile()_ShellFolder()_SingletonHWID()_SingletonPID()_Startup()_StringCompact()_StringIsValid()_StringRegExpMetaCharacters()_StringReplaceWholeWord()_StringStripChars()_Temperature()_TrialPeriod()_UKToUSDate()/_USToUKDate()_WinAPI_Create_CTL_CODE()_WinAPI_CreateGUID()_WMIDateStringToDate()/_DateToWMIDateString()Au3 script parsingAutoIt SearchAutoIt3 PortableAutoIt3WrapperToPragmaAutoItWinGetTitle()/AutoItWinSetTitle()CodingDirToHTML5FileInstallrFileReadLastChars()GeoIP databaseGUI - Only Close ButtonGUI ExamplesGUICtrlDeleteImage()GUICtrlGetBkColor()GUICtrlGetStyle()GUIEventsGUIGetBkColor()Int_Parse() & Int_TryParse()IsISBN()LockFile()Mapping CtrlIDsOOP in AutoItParseHeadersToSciTE()PasswordValidPasteBinPosts Per DayPreExpandProtect GlobalsQueue()Resource UpdateResourcesExSciTE JumpSettings INISHELLHOOKShunting-YardSignature CreatorStack()Stopwatch()StringAddLF()/StringStripLF()StringEOLToCRLF()VSCROLLWM_COPYDATAMore Examples...

Updated: 04/09/2015

Share this post


Link to post
Share on other sites

Looked at specy and everest already

the nearest we have found with a customisable checklist is Aida64 so far

The details stuff aida can do but the testing is another thing

Share this post


Link to post
Share on other sites

#5 ·  Posted (edited)

What specifically do you want to capture? Because I would have exported the Speccy data to a text file and parsed it for what I wanted.

Edited by guinness

_AdapterConnections()_AlwaysRun()_AppMon()_AppMonEx()_BinaryBin()_CheckMsgBox()_CmdLineRaw()_ContextMenu()_ConvertLHWebColor()/_ConvertSHWebColor()_DesktopDimensions()_DisplayPassword()_DotNet_Load()/_DotNet_Unload()_Fibonacci()_FileCompare()_FileCompareContents()_FileNameByHandle()_FilePrefix/SRE()_FindInFile()_GetBackgroundColor()/_SetBackgroundColor()_GetConrolID()_GetCtrlClass()_GetDirectoryFormat()_GetDriveMediaType()_GetFilename()/_GetFilenameExt()_GetHardwareID()_GetIP()_GetIP_Country()_GetOSLanguage()_GetSavedSource()_GetStringSize()_GetSystemPaths()_GetURLImage()_GIFImage()_GoogleWeather()_GUICtrlCreateGroup()_GUICtrlListBox_CreateArray()_GUICtrlListView_CreateArray()_GUICtrlListView_SaveCSV()_GUICtrlListView_SaveHTML()_GUICtrlListView_SaveTxt()_GUICtrlListView_SaveXML()_GUICtrlMenu_Recent()_GUICtrlMenu_SetItemImage()_GUICtrlTreeView_CreateArray()_GUIDisable()_GUIImageList_SetIconFromHandle()_GUIRegisterMsg()_GUISetIcon()_Icon_Clear()/_Icon_Set()_IdleTime()_InetGet()_InetGetGUI()_InetGetProgress()_IPDetails()_IsFileOlder()_IsGUID()_IsHex()_IsPalindrome()_IsRegKey()_IsStringRegExp()_IsSystemDrive()_IsUPX()_IsValidType()_IsWebColor()_Language()_Log()_MicrosoftInternetConnectivity()_MSDNDataType()_PathFull/GetRelative/Split()_PathSplitEx()_PrintFromArray()_ProgressSetMarquee()_ReDim()_RockPaperScissors()/_RockPaperScissorsLizardSpock()_ScrollingCredits_SelfDelete()_SelfRename()_SelfUpdate()_SendTo()_ShellAll()_ShellFile()_ShellFolder()_SingletonHWID()_SingletonPID()_Startup()_StringCompact()_StringIsValid()_StringRegExpMetaCharacters()_StringReplaceWholeWord()_StringStripChars()_Temperature()_TrialPeriod()_UKToUSDate()/_USToUKDate()_WinAPI_Create_CTL_CODE()_WinAPI_CreateGUID()_WMIDateStringToDate()/_DateToWMIDateString()Au3 script parsingAutoIt SearchAutoIt3 PortableAutoIt3WrapperToPragmaAutoItWinGetTitle()/AutoItWinSetTitle()CodingDirToHTML5FileInstallrFileReadLastChars()GeoIP databaseGUI - Only Close ButtonGUI ExamplesGUICtrlDeleteImage()GUICtrlGetBkColor()GUICtrlGetStyle()GUIEventsGUIGetBkColor()Int_Parse() & Int_TryParse()IsISBN()LockFile()Mapping CtrlIDsOOP in AutoItParseHeadersToSciTE()PasswordValidPasteBinPosts Per DayPreExpandProtect GlobalsQueue()Resource UpdateResourcesExSciTE JumpSettings INISHELLHOOKShunting-YardSignature CreatorStack()Stopwatch()StringAddLF()/StringStripLF()StringEOLToCRLF()VSCROLLWM_COPYDATAMore Examples...

Updated: 04/09/2015

Share this post


Link to post
Share on other sites

I typically just use WMI. I usually pull in something like the following, and then set my variables from there:

$PC = @ComputerName
$WMI = ObjGet("winmgmts:\\" & $PC & "\root\cimv2")

$aMoboItems = $WMI.ExecQuery("Select * from Win32_BaseBoard")
$aRamItems = $WMI.ExecQuery("Select * from Win32_PhysicalMemory",Default,48)
$aProcItems = $WMI.ExecQuery("Select * from Win32_Processor")
$aBIOSItems = $WMI.ExecQuery("Select * from Win32_BIOS")

;Mobo
 For $mobo in $aMoboItems
  $moboDepth = $mobo.Depth
  $moboDesc = $mobo.Description
  $moboHeight = $mobo.Height
  $moboHost = $mobo.HostingBoard
  $moboHotSwap = $mobo.HotSwappable
  $moboManufacturer = $mobo.Manufacturer
  $moboModel = $mobo.Model
  $moboName = $mobo.Name
  $moboOther = $mobo.OtherIdentifyingInfo
  $moboPartNum = $mobo.PartNumber
  $moboPoweredOn = $mobo.PoweredOn
  $moboProduct = $mobo.Product
  $moboRemovable = $mobo.Removable
  $moboReplacable = $mobo.Replaceable
  $moboRequirements = $mobo.RequirementsDescription
  $moboRequiresDaughter = $mobo.RequiresDaughterBoard
  $moboSerial = $mobo.SerialNumber
  $moboSKU = $mobo.SKU
  $moboSlotLayout = $mobo.SlotLayout
  $moboSpecial = $mobo.SpecialRequirements
  $moboTag = $mobo.Tag
  $moboVersion = $mobo.Version
  $moboWeight = $mobo.Weight
  $moboWidth = $mobo.Width
 Next

;RAM
 For $ram in $aRamItems
  $ramBankLabel = $ram.BankLabel
  $ramCapacity = $ram.Capacity
  $ramDataWidth = $ram.DataWidth
  $ramDesc = $ram.Description
  $ramDeviceLocator = $ram.DeviceLocator
  $ramFormFactor = $ram.FormFactor
  $ramHotSwap = $ram.HotSwappable
  $ramManufacturer = $ram.Manufacturer
  $ramType = $ram.MemoryType
  $ramName = $ram.Name
  $ramPartNumber = $ram.PartNumber
  $ramPosition = $ram.PositionInRow
  $ramSpeed = $ram.Speed
  $ramTag = $ram.Tag
  $ramTypeDetail = $ram.TypeDetail
 Next

;Processor
 For $proc In $aProcItems
  $procAddressWidth = $proc.AddressWidth
  $procArchitecture = $proc.Architecture
  $procAvailibility = $proc.Availability
  $procStatus = $proc.CpuStatus
  $procClockSpeed = $proc.CurrentClockSpeed
  $procDataWidth = $proc.DataWidth
  $procDesc = $proc.Description
  $procDeviceID = $proc.DeviceID
  $procExtClock = $proc.ExtClock
  $procFamily = $proc.Family
  $procL2CacheSize = $proc.L2CacheSize
  $procL2CacheSpeed = $proc.L2CacheSpeed
  $procLevel = $proc.Level
  $procLoadPercent = $proc.LoadPercentage
  $procManufacturer = $proc.Manufacturer
  $procMaxClockSpeed = $proc.MaxClockSpeed
  $procName = $proc.Name
  $procPNPID = $proc.PNPDeviceID
  $procProcID = $proc.ProcessorId
  $procType = $proc.ProcessorType
  $procRevision = $proc.Revision
  $procRole = $proc.Role
  $procSocket = $proc.SocketDesignation
  $procStatusInfo = $proc.StatusInfo
  $procStepping = $proc.Stepping
  $procUniqueID = $proc.UniqueId
  $procUpgradeMethod = $proc.UpgradeMethod
  $procVersion = $proc.Version
  $procVoltageCap = $proc.VoltageCaps
 Next

;BIOS
 For $bios In $aBIOSItems
  $biosBuildNum = $bios.BuildNumber
  $biosCurrentLang = $bios.CurrentLanguage
  $biosPossibleLang = $bios.InstallableLanguages
  $biosManufacturer = $bios.Manufacturer
  $biosName = $bios.Name
  $biosPrimary = $bios.PrimaryBIOS
  $biosReleaseDate = $bios.ReleaseDate
  $biosSerial = $bios.SerialNumber
  $biosSMBIOSVersion = $bios.SMBIOSBIOSVersion
  $biosVersionMajor = $bios.SMBIOSMajorVersion
  $biosVersionMinor = $bios.SMBIOSMinorVersion
  $biosSMBIOSPresent = $bios.SMBIOSPresent
  $biosStatus = $bios.Status
  $biosVersion = $bios.Version
 Next

√-1 2^3 ∑ π, and it was delicious!

Share this post


Link to post
Share on other sites

For the assessment part you could have a look at the Has a lot of functions to gather all kind of information.


My UDFs and Tutorials:

Spoiler

UDFs:
Active Directory (NEW 2017-04-18 - Version 1.4.8.0) - Download - General Help & Support - Example Scripts - Wiki
OutlookEX (NEW 2017-02-27 - Version 1.3.1.0) - Download - General Help & Support - Example Scripts - Wiki
ExcelChart (2015-04-01 - Version 0.4.0.0) - Download - General Help & Support - Example Scripts
Excel - Example Scripts - Wiki
Word - Wiki
PowerPoint (2015-06-06 - Version 0.0.5.0) - Download - General Help & Support

Tutorials:
ADO - Wiki

 

Share this post


Link to post
Share on other sites

Suffice to say you have many options. It's now down to you what you decide to choose.


_AdapterConnections()_AlwaysRun()_AppMon()_AppMonEx()_BinaryBin()_CheckMsgBox()_CmdLineRaw()_ContextMenu()_ConvertLHWebColor()/_ConvertSHWebColor()_DesktopDimensions()_DisplayPassword()_DotNet_Load()/_DotNet_Unload()_Fibonacci()_FileCompare()_FileCompareContents()_FileNameByHandle()_FilePrefix/SRE()_FindInFile()_GetBackgroundColor()/_SetBackgroundColor()_GetConrolID()_GetCtrlClass()_GetDirectoryFormat()_GetDriveMediaType()_GetFilename()/_GetFilenameExt()_GetHardwareID()_GetIP()_GetIP_Country()_GetOSLanguage()_GetSavedSource()_GetStringSize()_GetSystemPaths()_GetURLImage()_GIFImage()_GoogleWeather()_GUICtrlCreateGroup()_GUICtrlListBox_CreateArray()_GUICtrlListView_CreateArray()_GUICtrlListView_SaveCSV()_GUICtrlListView_SaveHTML()_GUICtrlListView_SaveTxt()_GUICtrlListView_SaveXML()_GUICtrlMenu_Recent()_GUICtrlMenu_SetItemImage()_GUICtrlTreeView_CreateArray()_GUIDisable()_GUIImageList_SetIconFromHandle()_GUIRegisterMsg()_GUISetIcon()_Icon_Clear()/_Icon_Set()_IdleTime()_InetGet()_InetGetGUI()_InetGetProgress()_IPDetails()_IsFileOlder()_IsGUID()_IsHex()_IsPalindrome()_IsRegKey()_IsStringRegExp()_IsSystemDrive()_IsUPX()_IsValidType()_IsWebColor()_Language()_Log()_MicrosoftInternetConnectivity()_MSDNDataType()_PathFull/GetRelative/Split()_PathSplitEx()_PrintFromArray()_ProgressSetMarquee()_ReDim()_RockPaperScissors()/_RockPaperScissorsLizardSpock()_ScrollingCredits_SelfDelete()_SelfRename()_SelfUpdate()_SendTo()_ShellAll()_ShellFile()_ShellFolder()_SingletonHWID()_SingletonPID()_Startup()_StringCompact()_StringIsValid()_StringRegExpMetaCharacters()_StringReplaceWholeWord()_StringStripChars()_Temperature()_TrialPeriod()_UKToUSDate()/_USToUKDate()_WinAPI_Create_CTL_CODE()_WinAPI_CreateGUID()_WMIDateStringToDate()/_DateToWMIDateString()Au3 script parsingAutoIt SearchAutoIt3 PortableAutoIt3WrapperToPragmaAutoItWinGetTitle()/AutoItWinSetTitle()CodingDirToHTML5FileInstallrFileReadLastChars()GeoIP databaseGUI - Only Close ButtonGUI ExamplesGUICtrlDeleteImage()GUICtrlGetBkColor()GUICtrlGetStyle()GUIEventsGUIGetBkColor()Int_Parse() & Int_TryParse()IsISBN()LockFile()Mapping CtrlIDsOOP in AutoItParseHeadersToSciTE()PasswordValidPasteBinPosts Per DayPreExpandProtect GlobalsQueue()Resource UpdateResourcesExSciTE JumpSettings INISHELLHOOKShunting-YardSignature CreatorStack()Stopwatch()StringAddLF()/StringStripLF()StringEOLToCRLF()VSCROLLWM_COPYDATAMore Examples...

Updated: 04/09/2015

Share this post


Link to post
Share on other sites

Just found this which may be more what i want for the test side, as i need to run short stress tests as well as retrieve product info.

http://www.inquisitor.ru/about/index.html , we shall see how it works out.

thx for the info guys

Share this post


Link to post
Share on other sites

Just found this which may be more what i want for the test side, as i need to run short stress tests as well as retrieve product info.

http://www.inquisitor.ru/about/index.html , we shall see how it works out.

thx for the info guys

Great find.... I think....

I've only burnt one CD ATM and the computer keeps shutting down (no reports just shut down).

have you had a chance to look at it yet?

John Morrison

Share this post


Link to post
Share on other sites

Yeah i had similar problems but i havent had chance to work on it yet

However another find i did have a look at and it looks very good so far is this.

PassMark BurnIn Test Pro

http://www.passmark.com/products/bit.htm

This one runs the sort of tests i want and then produces a kind of htm certificate at the end of it, which i can give to the customer

You can set time spent and aggressiveness of the tests (load on system etc)

From looking at it it basically copies to the machine things like Memtest and a number of other programs to test the parts of the pc

Its the front runner so far

Share this post


Link to post
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
Sign in to follow this  
Followers 0