HDD disk checking failed

Hello everyone
I have a HP MINI 110105TU ,today while booting up it suddenly showed disk error and further process was terminated just after the HP logon screen so tired with CTRL+ALT+DEL and restarted but still the same so while I tried to format my HDD it won't showed up while selecting the drive to install the OS and after a self diagnostic check at BIOS it failed with a number 7 written before failed.Even sometimes AMI screen pops up and check the HDD and say " capable status bad backup and replace"
My warranty has expired is there anyway I can restore or reset my HDD with any OS windows 7/xp ? Any how I can manage to fix this up ?
Thanks in advance.

I haven't seen a warning or error message with that exact wording on an HP system.  Did you get that message before booting into Windows or after booting into Windows?  It sounds like the imminent failure warning.  If you are getting the imminent failure warning, it doesn't necessarily mean it is going to fail right away or is currently failed but it does mean that keeping a regular backup should be considered.  I have a notebook that received the imminent failure warning error message about four years ago and it is still working today.
In any case, I am glad it is currently working for you.  Thanks for updating the community.  
↙-----------How do I give Kudos?| How do I mark a post as Solved? ----------------↓

Similar Messages

  • [SOLVED] Disk check failed at boot.

    Hello,
    I've got a problem with arch booting. It looks like my cpu doesn't like being left alone fat night. I powered it on today and what I get iss disk check failed error and reboot message. I've tried fsck-ing all partitions and everything seems to be allright. What's more I can mount everything when press ctrl+z when arch tries to reboot and system loading goes on. Any tips? What should I post?
    Last edited by muchzill4 (2010-02-05 10:02:48)

    You have some messed up file systems. As if you didn't know.=O)
    Have you changed fstab? Switched disks around? Try using uuid in fstab instead of '/dev/sdxx'.
    Check this thread http://bbs.archlinux.org/viewtopic.php?id=89857
    and use
    ls -l /dev/disk/by-uuid

  • Disk repair failed after using osx with hibernated windows/bootcamp with macdrive

    hi,
    i just realized i did something really,really stupid.
    I forgot I just closed the lid of my MBP the last time I used windows/bootcamp (instead of shutting it down) and that triggered hibernation.
    The next time I powered my MBP on, OSX startet automatically and I opened some of the same files that "were already open" in the hibernated windows (on osx main/boot partition, using macdrive in windows).
    That (or resuming the hibernated windows later) probably led to some data corruption that prevents the osx volume from booting and neither the automatical repairing during booting nor disk utility (external hdd or recovery partition) is able to repair it. (not sure if there is any difference).
    Booting in verbose mode shows the file names that were double-opened during repair attempts.
    After booting osx from an external HDD, Disk utility fails mounting the main osx volume straight away, but succeeds with mounting it after a failed repair attempt.
    I only have read acces then, though.
    bootcamp partition is still working fine, btw
    1. I wonder if it is possible to gain write access somehow and if deleting just those "double-opened" files/the containing folder (which is saved on dropbox btw, so I really wouldnt mind deleting them/it) would solve the whole problem or if i really have to reformat everything and spend 10+ hours to revert everything to the state before the data corruption. ?
    2. if I have to reformat + reinstall, using migration assistant and the corrupted volume as source isn't a great idea, i guess? are there any options to exclude some specific folders of the user folders?
    3. will the bootcamp partition work after reinstalling osx or do i have to winclone-it somewhere? checkdisk says the volume is OK btw.
    many thanks!

    Hi 3tc, thnx for a tip.
    One more question - did procedure solve also "file already in use" problem on win bootcamp?
    thnx

  • Disk order changes, grub problem, filesystem check failed

    I'm having some problems installing Archlinux onto a machine with a lot of SATA drives, some connected by SATA cards. I have tried the 2009-08 netinstaller burned to CD, both -x86_64.iso and -x86_64-isolinux.iso, and I have the same problem with both.
    I am installing from a USB-connect optical drive to an Intel X25-M 80GB SSD connected to a motherboard SATA port. I also have 2 HDDs connected to motherboard SATA ports, and 4 more HDDs connected to 4 SIL-based PCIe SATA cards. Additionally, I have a 4GB Patriot USB flash drive connected to a motherboard USB port. None of the HDDs have a bootable MBR, I am planning to create an mdadm RAID with the HDDs, but the USB flash drive is bootable. The motherboard is an Asus Z8PE-D18 with the latest BIOS, in AHCI mode.
    First thing to note is that I was able to successfully install Fedora 12 linux to this machine in the exact configuration that I am trying to install Archlinux. I just installed Fedora 12 again last night, and it installed and loaded fine when I rebooted from the SSD.
    So, the problems I am having with Archlinux. During install, I found that the SSD is showing up as either /dev/sde or /dev/sdf. This is odd since it was /dev/sda with Fedora. It makes sense for it to be /dev/sda, since it is on the first motherboard SATA port. But I proceeded with the Archlinux install, and grub seemed to detect the stage1 location properly -- root was set to (hda4,0) or (hda5,0) depending on whether the SSD was at sde or sdf. The kernel root was configured by UUID, so that does not depend on the drive order. Okay so far.
    The problem shows up on reboot. The bootloader immediately complains that there is no such partition sde1 or sdf1. I drop into a grub command line and do
    find /boot/grub/stage1
    and it replies with (hd0,0), so I modify the boot line to root (hd0,0) and boot. Now it gets pretty far. Lots of boot messages scroll by. Here are some of the last few before the problem:
    Waiting 10 seconds for device /dev/disk/by-uuid/22a35aa2-9799-4575-b1eb-456e819a1a26 ...
    kjournald starting.  Commit interval 5 seconds
    EXT3-fs (sde1): mounted filesystem with writeback data mode
    INIT: version 2.86 booting
    ::Starting UDev DAemon
    ::Triggering UDev uevents
    ::Loading Modules
    ::Waiting for UDev uevents to be processed
    ::Bringing up loopback interface
    ::Mounting Root Read-only
    ::Checking Filesystems
    /dev/sdf1:
    The superblock could not be read or does not describe a correct ext2
    filesystem. If the device is valid and it really contains an ext2
    filesystem (and not swap or ufs or something else), then the superblock
    is corrupt, and you might try running e2fsck with an alternate superblock
    **** FILESYSTEM CHECK FAILED
    * Please repair manually and reboot. Note that the root file system
    * is currently mounted read-only....
    Give root password for maintenance
    So I logged in as root and did an fdisk -l. The boot SSD was at /dev/sde. The menu.lst has root as (hd5,0), which would be sdf (which was correct during installation, but the disk order apparently changed). The kernel root= in menu.lst used by-uuid, and it at least points to the correct drive, which I suppose is why I was able to boot as far as I did, but when it tries to mount the root filesystem, it fails as shown above.
    So, at initial grub boot, the grub stage1 is found at (hd0,0). During installation, the SSD was sdf, but after booting the kernel, the SSD is sde. What is going on?
    One other experiment  is that I pulled all the drives (including USB flash drive) except the SSD. The HDDs are in hot-swap slots, so that was easy. The PCIe SATA cards are still plugged into the PCIe slots. Then I was able to successfully install and boot Archlinux. But when I plugged the drives back in and rebooted, I had the same problem as detailed above.
    Any suggestions on how to fix this?

    I had the same problem.
    Last week I installed Arch onto a new SATA HD. I wanted to make sure the installation worked before I attached the other drives. On booting with the other drives attached, similar messages.
    My solution:
    Login as root.
    Follow the instruction to mount / as read-write so you can make changes to the filesystem.
    edit /etc/fstab and eliminate the references to /dev/sdxx and replace them with UUIDs or labels (as suggested above) as these won't change.
    in /etc/fstab ...
    # external data sources
    #data /dev/sdb6
    UUID=931d7107-1241-4d82-ad28-fcbe7af8ba69 /data ext3 defaults 0 0
    #Documents /dev/sda9
    /dev/disk/by-label/Documents /data/Documents ext3 defaults 0 0
    Reboot and you should be good.
    You can find the UUID of the drives by using
    $ blkid
    or you can set a drive label with e2label, assuming you are using ext2,3 or 4
    Good luck.

  • My HP Pavilion dv7 posted the following message:smart check failed - hard disk 1

    php pavilion dv7
    windows 7
    hard disk 1 failed smart check

    SMART is a feature in the hard drive, read by the BIOS of the computer, that is constantly measuring the drive's performance against a number of normal parameters, like the time it takes to move data from one place on the drive to another, and how many times data has to be moved around because there are bad places on the drive that will not hold data. If the drive's measurements go outside the normal range it is a sign the drive is failing and that gets reported to you, the end user, in a SMART error message. Kind of like a "check engine" light. It is a nice way of saying it is time to back up the data and buy a new hard drive.

  • 'volume check failed', and disk utility can't fix it

    I was planning to create a new bootable backup today and ran 'repair disk' from an install disk before cloning.
    Unfortunately I grabbed a Panther disk by mistake, and only discovered it was the wrong disk as I took it out. By then, DU had run through the 'repair' - changing quite a few things - until it showed 'volume cannot be repaired'.
    I've tried to correct them using DU from the Tiger install disk, but without any luck. DU shows:
    +Invalid catalogue record type+
    +Volume check failed+
    +Error: the underlying task reported failure on exit+
    +1 Volume could not be repaired because of an error+
    My iBook still appears to be running perfectly, but obviously I need to repair the disk before I can clone it. Disk Utility can't do it - could DiskWarrior?
    I'd really appreciate some advice on the options open to me, and the best way to do it.

    Success!
    I powered down and ran DiskWarrior a 2nd time to rebuild the directory. This time I skipped the recommended Preview stage and went straight to confirming Rebuild. Everything now seems to be fine again. DU finds no faults with the disk, and the iBook feels significantly quicker and snappier.
    Two things I learnt that might be helpful - the first is, it's easy to be careless for just a moment and end up in a time-consuming mess. It's the first time I've done it, and I won't be doing it again.
    Second thing is, when people say DiskWarrior is slow to boot, they mean it - it took at least 10 minutes to show up on screen, which is unsettling. And the Preview stage, for me, was equally unnerving.
    Still, it worked - superbly - all my data is intact, the iBook is overhauled and working faster than ever.

  • Disk Utility Reports Volume Check Failed

    I've been having some trouble with one of my two internal hard drives, so by mistake I ran Disk Utility from the Panther install disk on my PowerPC G5 running 10.4.10...I didn't realize until after I'd run Disk Repair that it wasn't the Tiger install disk I was using.
    The Disk Repair Utility from the 10.3 install disk reported an "Invalid Leaf Record Count(it should be 41 instead of 210)". It also said that "2 HFS Volumes Repaired, 1 Volume Could Not Be Repaired". This was particularly puzzling since there were only two partitions on that internal hard drive. What was this other Volume it referred to?
    Upon realizing that I was using an old CD, I ran Disk Utility from the Tiger install disk, and got a report "Invalid Catalog Record Type. Volume Check Failed."
    Can anyone shed any light on what this all means, and how I can fix it?
    Many thanks in advance!
    -Zina

    Thanks, abrody, for your reply. First, I ws lucky in that there was no indication other than Retrospect reporting a problem with this, the client machine, so all data was available and the system seemed to be working fine (other than the error report).
    Here's what worked for me: I ran Disk Repair (from the Tiger install disk)on all 4 partitions on my second internal HD, and came up with a clean report. I erased one of the partitions and, using SuperDuper, I cloned the system partition from the troublesome partition on the other internal HD. Then I ran Disk Repair from the install disk again, on the cloned partition, to be sure I didn't carry over the problem with the clone. It came up clean.
    Then I erased the troublesome system partition and cloned the system back over from the trouble-free partition clone.
    I ram Disk Repair again from the install disk, just to make sure everything came up with a clean bill of health, which it did.
    But I'm going to keep a close eye on this internal HD, since I think it's possible it's failing. I always back up all my data every night, so at least I'm covered there.
    Again, thanks so much for your reply and help.
    Message was edited by: Zina
    Message was edited by: Zina

  • Mac OS X Boot failure... I cant Repair HDD with OS Disk,Shows Repair Failed. I cant backup my files from HDD. Backup failed. But I need my all datas from HDD. I dont want to format. Cant enter safemode also. anything else..

    Mac OS X Boot failure... I cant Repair HDD with OS Disk,Shows Repair Failed. I cant backup my files from HDD. Backup failed. But I need my all datas from HDD. I dont want to format. Cant enter safemode also. anything else..
    I installed XP @Bootcamp, I cant access my Mac HDD via XP..
    What I do??? Please help me.. please...

    You can try DiskWarrior (about $100).
    If that doesn't work, and if you have no backups at all, you might need to send your hard drive to Drive Savers or a similar service. It will cost a lot of money to get the data back, I'm sorry to say.

  • Pavilion G6-1203ey: Hard Disk Test FAILED, but can still boot into Windows

    Hello
    I have HP Pavilion G6-1203ey laptop. After installing Windows (7 ultimate, 64 bit) and some drivers on it and after several restarts, it hanged at Windows logo and I had to turn it off with power button. Then after turning it on, it gave me the option to repair problems which are preventing it from starting up, from there I let it to restore the computer to an earlier restore point and after a restart the Windows was working again. After that I decided to do a hard disk check just in case.
    The Hard Disk Self Test ended up with a message: Hard Disk 1 Full (305). Then I installed HP Unified Extensible Firmware Interface (UEFI) Support Environment and did hard disk from there. I chose the comprehensive test from the options, but it finished fairly quickly (in ~1 minute) with the following output:
    Testing Drive: 1
    Hard Disk SMART Check : PASSED
    Hard Disk Short DST : FAILED
    FAILURE ID : PTTU22-5T774L-MFPV4K-60S003
    PRODUCT ID : A5Q15EA#B1R
    Hard Disk 1
    Hard Disk Test : FAILED
    A bit more background:
    The previous owner told me that the original HDD was faulty which is why he replaced it with this one last year. He said that other than that there has been no problems with the laptop. The Windows is working right now and this HDD is quite new so I would not have expected any problems with it, but the results from the previously mentioned tests seem troubling. Is there a reason to worry?
    Thanks
    This question was solved.
    View Solution.

    Hi Alnuir,
    Welcome to the HP Support Forums, I hope you enjoy your experience! To help you get the most out of the HP Forums I would like to direct your attention to the HP Forums Guide First Time Here? Learn How to Post and More.
    I read your post and looked into the failure ID that you posted regarding the failed Short DST test. That error is indicating a hard disk failure meaning that if it hasn't failed it might soon. If everything is working I would considering backing up your data on a regular basis just to be safe. You could have a local technician take a look at the hard drive to see how close it is to full failure.
    Thank you,
    Please click “Accept as Solution ” if you feel my post solved your issue.
    Click the “Kudos Thumbs Up" on the right to say “Thanks” for helping!
    Thank you,
    BHK6
    I work on behalf of HP

  • How can I stop a task sequence if a custom HTA preflight check fails?

    In our currently deployment method, we launch an HTA program before initiating the OSD process. This is only when run from the RAP menu, not via PXE.  When a user initiates OSD through that menu, they get a message prompting them to close Outlook, and
    a countdown of 5 mins, then OSD starts.  They also have the ability to click on an 'OK' button to proceed on their own.
    I've created a new script which checks WMI if Outlook and/or OCS are open, and if the machine is running on battery, spit out a "Failed" response and stop the HTA.  I've also added a "recheck" button to re-do the check, and an 'OK
    button if people jsut want to continue.  
    I'm curious if there is a way to prevent the task sequence from continuing if any of those conditions arent met.  Currently it just pops up and says "Failed, Cannot conitue", but if they close the window, the task sequence thinks the program
    has run, and the OSD migration starts.  I'd like to be able and get the script to cancel the OSD process if a check fails.
    Has anyone had success with this, using WINXP? I'd use the MS pre-flight check but it's only for WIN7.

    Interesting. Thanks for the response.  Is there anybody out there that can assist with VBS part of the solution?
    Here's the code I'm working with.  Currently the battery piece isnt working as it should but I can figure that our, eventually.  I'd like to get Jason's proposed solution in the code.  If this isn't the right place, I'll take this somewhere
    else.
    <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
    <head>
    <title>OSD Preflight checks</title>
    <HTA:APPLICATION
    APPLICATIONNAME="OSD Preflight checks"
    ID="objOSDPreReqChecks"
    SCROLL="no"
    CONTEXTMENU="no"
    SINGLEINSTANCE="no"
    MAXIMIZEBUTTON="no"
    MINIMIZEBUTTON="no"
    WINDOWSTATE="normal"/>
    <!-- #region STYLEs-->
    <style type="text/css">
    H1{color:Black;text-align:center;font-family: Arial, Helvetica, sans-serif;font-size: 26px;}
    p{font-family:"Arial";font-size:10px;}
    fail{color:Red;text-align:center;}
    .Version {float:left; font-size:1.0em;font-style:italic;color:#888888;font-weight:bold;}
    .Header1 {width: 180px; text-align: right;font-weight:bold;}<!-- '1st column heading -->
    H2 {font-family: Arial, Helvetica, sans-serif; text-align: center;}
    H3 {font-style: italic;}
    .style2 {width: 180px; text-align: left;}
    .Header2 {width: 150px; text-align: right;font-weight:bold;}<!-- '2nd column heading -->
    .style4 {width: 410px; text-align: left;}
    .StatusBar
    font-family: Arial, Helvetica, sans-serif;
    text-align: center;
    .hidden {display: none; visibility: hidden;}
    </style><!-- #endregion -->
    </head>
    <script language="VBScript" type="text/vbscript">
    '======================================================================================
    ' Script
    ' Version
    ' Purpose To check a machine is suitable for taking an OS deployment
    '======================================================================================
    'Features
    ' Modular design
    ' Verbose "Debug Mode"
    ' In-built data validation
    ' Custom error handling
    ' Custom error codes - 90x0
    ' Generic WMI handler
    'BUGfix: Change CLng to CDbl to avoid overflow (in GetRAM)
    'fixed - moved head section to top to become head > script > body
    'fixed - fCheckModel display with leading ,
    'fixed - fgetmodels dictionary list
    Option Explicit
    ' #region GLOBAL DECLARATIONS: Persistent fold region
    '======================================================================================
    'GLOBAL Vars
    'Things to just display (in GUI)
    Dim strRAM
    Dim strCPUInfo
    Dim strCPUName
    Dim strCPUDesc
    Dim iCPUCount
    Dim iCPUCoreCount
    Dim iRAM
    Dim strBIOSver, strBIOSDate, strBIOSInfo
    'Time related
    Dim TimerInterval 'timer to refresh HTA at start
    Dim iTimer 'abort timer
    Const iAbortTimeout=300000 'delay before window closes (in milliseconds)
    Dim pbTimerID
    Dim pbHTML
    Dim pbWaitTime
    Dim pbHeight
    Dim pbWidth
    Dim pbBorder
    Dim pbUnloadedColor
    Dim pbLoadedColor
    Dim pbStartTime
    'Dictionary
    Dim objModelsDict,colKeys,strKey 'models
    Dim objApprovedMakesDict
    'Misc GLOBAL vars
    Dim blnDebug 'set TRUE to trigger debug mode
    Dim bAbortBuild 'Boolean flag to abort or not abort
    Dim strTemp 'throwaway/scratch
    Dim strNamespace 'wmi default namespace for ANY machine
    Dim strComputer 'wmi reference to current machine, just .
    Dim strService 'WMI service
    Dim strQuery 'custom WQL
    Dim ErrMsg 'custom error messages
    Dim iErrMode 'State machine for error mode
    Dim lFlags 'WMI flag
    Dim strDisks
    'Pre-requisites - things that will cause build to abort if values do not meet spec
    Dim strHTAVendor 'Make of hardware
    Dim strHTAVendorState
    Dim strHTAModel 'Model of hardware
    Dim strHTAModelState 'Model state
    Dim strHTARAM 'RAM
    Dim strHTARAMState 'RAM state
    Dim strHTACPUSpeed 'Processor speed
    Dim strHTACPUCores 'Number of cores
    Dim strHTACPUFullInfo 'CPU + cores
    Dim strHTAHDD 'Disk info
    Dim strHTAHDDState 'Disk state
    Dim strHTACheckRAW 'NTFS check
    Dim strHTAArchitecture 'Processor support
    Dim strHTAProduct 'Product ID
    Dim strHTAOutlook 'Outlook running
    Dim strHTAOutlookState 'Outlook state
    Dim strHTABattery 'Battery check
    Dim strHTABatteryState 'Battery state
    'for WQL filters
    Dim strWQLPCInfo 'Pre-req - (1) for various inc. domain role (servers)
    Dim strWQLRAM 'Pre-req - (2) RAM
    Dim strWQLCPU 'Pre-req - CPU speed string (not int)
    Dim strWQLBootOrder 'Pre-req - Boot order string
    Dim strWQLSATAMode 'Pre-req - HDD mode
    Dim strWQLGenericBIOS
    Dim strWQLCPUCount 'Pre-req - how many CPUs
    Dim strWQLCPUInfo
    Dim strWQLFSType 'Pre-req - Check HDD not RAW (i.e. is NTFS)
    Dim strWQLDisks 'Disks
    Dim strWQLChassis 'Machine type
    Dim strWQLID 'Unique code from OEM
    Dim strWQLProc 'is Outlook running = False
    Dim strWQLBattery 'is on Battery = False
    'State
    Const cProblem = " Problem!"
    Const cRunAgain =" RunCheck: Run System Check Again"
    Const cSuccess = " Success!"
    Const cPassed=" Pass"
    Const cFail=" Fail"
    'Pre-requisite to check: SET VALUES HERE vvvvvvvvvvvvvvvv
    Const cApprovedOEM="Hewlett-Packard"
    Const LegacyOEM1="Dell Inc."
    Const LegacyOEM2="IBM"
    Const cMinimumMemoryMB = 1000 'RAM in MB
    'Const cMinimumMemoryMB = 1000000 'force fail test data RAM in MB
    Const cMinFS="NTFS"
    ' Const cMinFS="HPFS" 'force fail test data
    Const iMinCores=1
    'Const iMinCores=10099 'force fail cores test data
    Const iMinCPUSpeed=2 '20 'in GHz
    'Const iMinCPUSpeed=90000 'in GHz
    Const iMinCPUArch=32
    'Const iMinCPUArch=64
    ' #endregion
    ' To hide anything use ID.className = "hidden", to show set to "", e.g. NotFoundArea.className = "hidden"
    Sub Window_Onload
    Err.Clear
    VersionSpan.InnerText = objOSDPreReqChecks.Version 'Get version
    self.focus
    self.moveTo 100,100 'Move window top left
    StatusBar.InnerText="Validating machine..."
    document.body.style.cursor = "wait" 'hourglass cursor
    'Call PreflightChecks 'use for testing as a VBS only, otherwise HTA timer will call below
    TimerInterval = window.setInterval("PreflightChecks",10)
    End Sub
    Function PreflightChecks
    ' #region HEADER NOTES: Persistent fold region
    'Version history
    'ver 5 OCTOBER 2011 - added error handler
    'ver 3rd Nov - removed HPonly queries
    '// Solution: Custom Script for use with MDT - Adapted from hardwareinfo.vbs Mikael Nystrom – http://deploymentbunny.com
    'Typical BIOS content
    'Processor Speed = 2133/1066 MHz
    'Boot Order = Network Controller,ATAPI CD-ROM Drive,USB device,Hard Drive,Diskette Drive,PnP Device #2,PnP Device #3,PnP Device #4,PnP Device #5,PnP Device #6,PnP Device #7,PnPe #8,PnP Device #9,PnP Device #10,PnP Device #11
    'SATA (disk) mode: *IDE,--,RAID,-- or IDE,*AHCI,RAID
    'On Error Resume Next
    ' #endregion
    ' #region CONSTANTS: Persistent fold region
    '======================================================================================
    'Fields available in HP BIOS
    Const sAsset = "Notebook Asset Tag"
    Const sOwner = "Notebook Ownership Tag"
    Const sMan = "Manufacturer"
    Const sNoteModel = "Notebook Model"
    Const sCPU = "Processor Type"
    Const sCPUSpeed = "Processor Speed"
    Const sRAM = "Memory Size"
    Const sModel = "Product Name"
    Const sBIOSName ="System BIOS"
    Const sBIOSVer = "BIOS Version"
    Const sBIOSDate = "BIOS Date"
    'Other BIOS stuff you could use too
    'Const sOwnerTag = "Enter Ownership Tag"
    'Const sBIOS = "PCID"
    'Const sBIOS = "Define Custom URL"
    'Const sBIOS = "Set Alarm Time"
    'Const sBIOS = "PCID Version"
    Const TextMode="1" 'text case sensitive for dict obj
    'WMI core constants
    Const wbemFlagReturnImmediately = 16 'wmi - Causes the call to return immediately.
    Const wbemFlagForwardOnly = 32 'wmi - Causes a forward-only enumerator to be returned.
    'Forward-only enumerators are generally much faster and
    'use less memory than conventional enumerators, but don't allow calls to SWbemObject.Clone_
    'Advisory config values - as in "you want to the change these"
    Dim strHTABootOrder
    Dim strHTASATAMode
    'Dim strHTACPU
    ' #endregion
    '======================================================================================
    ' #region WQL: Persistent fold region
    lFlags = wbemFlagReturnImmediately + wbemFlagForwardOnly
    'Queries of things to check (HP)
    strWQLBootOrder = "select Name, value from HP_BIOSSetting where Name='Boot order'"
    strWQLSATAMode = "select Name, value from HP_BIOSSetting where (Name='SATA emulation' or name='SATA device mode')"
    strWQLDisks ="SELECT * FROM Win32_DiskDrive where mediatype like 'Fixed%hard disk%'" 'win32_disk only avail after W7
    strWQLFSType ="SELECT * from Win32_LogicalDisk where DriveType='3'" 'only bother with HDDs
    'Generic WMI query strings
    strWQLGenericBIOS="SELECT Manufacturer,SMBIOSBIOSVersion,ReleaseDate FROM Win32_BIOS WHERE PrimaryBIOS = True"
    strWQLCPUCount= "SELECT NumberOfProcessors,NumberOfLogicalProcessors from Win32_ComputerSystem"
    strWQLCPUInfo="SELECT Name,DataWidth,description,MaxClockSpeed,NumberofCores,NumberOfLogicalProcessors from Win32_Processor"
    strWQLPCInfo="SELECT Domain,DomainRole,SystemType,Manufacturer,Model,TotalPhysicalMemory FROM Win32_ComputerSystem"
    ' strWQLPCInfo="SELECT Domain,DomainRole,SystemType,Manufacturer FROM Win32_ComputerSystem"
    strWQLChassis="SELECT ChassisTypes from Win32_SystemEnclosure"
    strWQLID="SELECT IdentifyingNumber,UUID from Win32_ComputerSystemProduct"
    strWQLRAM="SELECT * FROM Win32_PhysicalMemory"
    strWQLProc="SELECT * FROM Win32_Process"
    strWQLBattery="SELECT * FROM BatteryStatus Where Voltage > 0"
    ' #endregion
    ' #region MAIN algorithm
    '=====================================================================================================
    ' MAIN
    'Algorithm
    '1) Check make (vendor)
    '2) Check model (in list)
    '3) Check RAM >x
    '4) Check HDD TYPE (HDD is not RAW)
    '5) Check CPU architecture
    '6) Check outlook
    '7) Check battery
    '=====================================================================================================
    'Initialise
    window.clearInterval(TimerInterval) 'Reset timer to 0
    ' blnDebug=True
    blnDebug=False
    bAbortBuild=False 'default to DON'T abort
    ' bAbortBuild=True
    'Build list of approved vendors
    Set objApprovedMakesDict = CreateObject("Scripting.Dictionary")
    objApprovedMakesDict.comparemode=VBTextCompare
    objApprovedMakesDict.add cApprovedOEM,"OK"
    objApprovedMakesDict.add LegacyOEM1,"OK"
    objApprovedMakesDict.add LegacyOEM2,"OK"
    objApprovedMakesDict.add "Lenovo","Testdata"
    If blnDebug Then Stop
    '1) all machines check make
    strHTAVendor=fCheckVendor(strWQLGenericBIOS) 'check vendor in BIOS - if vendor not approved ABORT without proceeding
    If bAbortBuild=True Then
    StatusBar.InnerText=StatusBar.InnerText & VbCrLf & "FATAL ERROR - goodbye cruel world"
    iTimer = window.setTimeout("Abort", iAbortTimeout, "VBScript")
    Else
    StatusBar.InnerText="Vendor: " & strHTAVendor & vbTab & " " & strHTAVendorState
    '2) Discover current Model
    strHTAModel=fGetModelName(strWQLPCInfo) 'get model name from WMI
    strHTAModel=fUniversalCheckData(strHTAModel,"'Discover Model - fGetModelName'") 'validate
    Call fGetModels 'get list of all valid models (from text file)
    strHTAModel=fCheckModel(strHTAModel)
    '2a) Model number (optional)
    strHTAProduct=fGetComputerSystemProdIDNumber(strWQLID) 'manufacturer's product ID
    strHTAProduct=fUniversalCheckData(strHTAProduct,"'Discover ID - fGetComputerSystemProdIDNumber'")
    ' StatusBar.InnerText=StatusBar.InnerText & VbCrLf & vbTab & "Product Code: " & vbTab & strHTAProduct
    '3) Check installed Memory
    strHTARAM=fGetRAM(strWQLRAM) 'find RAM size
    strHTARAM=fUniversalCheckData(strHTARAM,"'Detect RAM - fCheckRAM'")
    strHTARAM=fCheckRAM(strHTARAM) 'check RAM meets req
    If strHTARAMState=cFail Then Exit Function
    '4) Disk format IS NTFS
    strDisks=fGetDrives(strWQLFSType) 'Get formatting info for all drives
    strHTACheckRAW=fUniversalCheckData(strDisks,"'Detect filesystem - fCheckNTFS'") 'Validate data
    strHTACheckRAW=fCheckNTFS(strDisks) 'Check FS format is acceptable (not RAW)
    If strHTACheckRAW=cFail Then Exit Function
    'Generic CPU calls
    strHTACPUFullInfo="CPUs:" & fGetCPUInfo(strWQLCPUInfo) & " with CPU cores:" & iCPUCoreCount
    strBIOSInfo="BIOS version: " & strBIOSver & ", dated " & strBIOSDate
    '5a) CPU Speed check (info from http://www.robvanderwoude.com/wmiexamples.php)
    strCPUInfo=WMI(strWQLCPUInfo,strNamespace) 'Get CPU details
    strTemp=split(strCPUInfo,"@"): strHTACPUSpeed=strTemp(1)
    strHTACPUSpeed=fUniversalCheckData(strHTACPUSpeed,"'Check processor - fCheckCPUSpeed'") 'Validate data
    strHTACPUSpeed=fCheckCPUSpeed(strHTACPUSpeed) 'Check CPU clock speed
    '5b) cores check
    strHTACPUCores=fUniversalCheckData(iCPUCoreCount,"Check core count - fCheckCores") 'Validate data
    iCPUCoreCount=fCheckCores(iCPUCoreCount) 'pass or fail?
    '5c) CPU address width
    strHTAArchitecture=fUniversalCheckData(strHTAArchitecture,"Check core count - fCheckCores") 'Validate data
    strHTAArchitecture=fCheckCPUArch(strHTAArchitecture)
    '6) Check outlook
    strHTAOutlook=fCheckProcess(strWQLProc)
    '7) Check Battery
    strHTABattery=fCheckBattery(strWQLBattery)
    'end checkss
    document.body.style.cursor = "default"
    'Display hardware values in GUI (in table)
    Vendor.innerhtml = strHTAVendor 'Use str...var..STATE if you want Pass/fail text instead
    Model.innerhtml = strHTAModel
    Product.innerhtml = strHTAProduct
    RAM.innerhtml = strHTARAM
    CPUspeed.innerhtml = strHTACPUSpeed
    CPUInfo.innerhtml = strHTACPUFullInfo
    HDDFS.innerhtml = strHTACheckRAW
    CapableArchitecture.innerhtml=strHTAArchitecture
    BIOSversion.innerhtml = strBIOSver
    BIOSDate.innerhtml = strBIOSDate' CPUName.innerhtml = strCPUDesc 'GetCPUName
    End If
    '======================================================================================
    ' #endregion
    End Function
    'generic WMI queries, by field and namespace
    Function WMI(strQuery,strNameSpace)
    'Aim: generic WMI calls
    'return value of BIOS
    On Error Resume Next
    Dim colItems,objItem
    Dim objWMI
    Const strService = "winmgmts:{impersonationlevel=impersonate}//" 'binding to WMI
    Const strComputer = "." 'this machine
    Set objWMI = GetObject(strService & strComputer & strNamespace) 'GLOBAL wmi
    Set colItems = objWMI.ExecQuery(strQuery,,lFlags)
    For Each objItem In colItems
    If Err Then
    StatusBar.InnerText=StatusBar.InnerText & VbCrLf & "WMI query: " & strQuery & " in " & strNamespace & objItem.Name
    Call ErrHandler("WMI error " & strQuery,1)
    Else
    WMI=objItem.Name 'Return value
    End If
    Next
    End Function
    Function fGetModelName(strWQLPCInfo)
    'Aim: Get model name from BIOS - WMI field sometimes varies if laptop, so try two
    'Return STRING: Model string from BIOS or "UNKNOWN" if null
    On Error Resume Next
    Dim colPCInfo,objPCItem
    Dim strModel
    Set colPCInfo = GetObject("winmgmts:").ExecQuery(strWQLPCInfo,"WQL",lFlags)
    If Err Then
    Call ErrHandler("fGetModelName: Error querying WMI " & strWQLPCInfo,2)
    Else
    For Each objPCItem In colPCInfo
    If Not IsNull(objPCItem.Model) Then
    strModel=objPCItem.Model
    ' iRAM=objPCItem.TotalPhysicalMemory
    Else
    If (strHTAVendor=cApprovedOEM And IsLaptop = True) Then ' resort to HP specific query for older laptops
    'Notebook
    strModel=QueryHPBIOS(sNoteModel)
    if strModel="" then strModel=QueryHPBIOS(sModel) 'try alt value
    Else
    strModel=QueryHPBIOS(sModel)
    End If
    End If
    Next
    End If
    If strModel = "" Then
    fGetModelName = "UNKNOWN"
    Model.style.visibility="hidden"
    Else
    fGetModelName=strModel
    End If
    End Function
    '====================================================
    '====================================================
    Function fGetRAM(strQuery)
    'Aim: get RAM installed. NB Win32_ComputerSystem::TotalPhysicalMemory may not be accurate
    'Return integer
    On Error Resume Next 'equiv to Err.Clear
    Dim colItems, item
    Dim iTotalMemory
    Set colItems = GetObject("winmgmts:").ExecQuery(strQuery,"WQL",lFlags)
    If Err Then
    Call ErrHandler("fGetRAM: Error querying " & strQuery,2)
    Else
    iTotalMemory = 0
    For Each item In colItems
    iTotalMemory = iTotalMemory + CDBL(item.Capacity)/(1024^2)
    Next
    End If
    If iTotalMemory = "" Then
    fGetRAM = "RAM UNKNOWN"
    RAM.style.visibility="hidden"
    Else
    fGetRAM=iTotalMemory
    End If
    End Function
    '====================================================
    '====================================================
    Function fGetCPUInfo(strQuery)
    'Aim: query WMI for CPU info - number and number of cores
    'Return: function=CPU count, var for the cores: iCPUCoreCount, strHTAArchitecture, strCPUDesc
    On Error Resume Next
    Dim colItems, objItem
    Dim NumberOfProcessors
    Set colItems = GetObject("winmgmts:").ExecQuery(strQuery,"WQL",lFlags)
    If Err Then
    Call ErrHandler("GetCPUInfo: Error querying " & strQuery,2)
    Else
    For Each objItem In colItems
    If Err Then
    Else
    If Not IsNull(objItem.NumberOfCores) Then
    NumberOfProcessors = Trim(objItem.NumberOfCores) 'NumberOfProcessors
    End If
    If Not IsNull(objItem.NumberOfLogicalProcessors) Then
    iCPUCoreCount = Int(Trim(objItem.NumberOfLogicalProcessors))
    End If
    If Not IsNull(objItem.DataWidth) Then
    strHTAArchitecture=Trim(objItem.DataWidth) & "-bit"
    End If
    If Not IsNull(objItem.description) Then
    strCPUDesc = Trim(objItem.description) 'cpu name
    End If
    End If
    Next
    If NumberOfProcessors = "" Then
    NumberOfProcessors = "UNKNOWN"
    End If
    fGetCPUInfo = Int(NumberOfProcessors)
    ' iCPUCoreCount = Int(NumberOfLogicalProcessors)
    End If
    End Function
    '====================================================
    '====================================================
    Function fGetComputerSystemProdIDNumber(strWQLID)
    'Aim: Get UUID from Win32_ComputerSystemProduct
    'Return: great big integer
    Dim colSys,objSys
    Dim strUUID
    On Error resume next
    Set colSys = GetObject("winmgmts:").ExecQuery(strWQLID,"WQL",lFlags)
    If Err then
    Call ErrHandler("fGetComputerSystemProdIDNumber: Error querying " & strWQLID,2)
    Else
    For Each objSys In colSys
    If Not IsNull(objSys.IdentifyingNumber) Then
    strUUID = Trim(objSys.IdentifyingNumber)
    End If
    Next
    If strUUID = "" Then
    fGetComputerSystemProdIDNumber = "UNKNOWN"
    Else
    fGetComputerSystemProdIDNumber = strUUID
    End If
    End If
    End Function
    '=================================================================================
    '=================================================================================
    Function fGetDrives(strQuery)
    Dim colDisks,objHDD
    Dim strDriveType, strDiskSize, strDisk
    Dim strDiskFSType
    Dim iGBUnits
    On Error Resume Next
    iGBUnits=1073741824
    Dim iRAW
    iRAW=0
    Set colDisks = GetObject("winmgmts:").ExecQuery(strQuery)
    For Each objHDD In colDisks
    Select Case objHDD.DriveType
    Case 1 strDriveType = "Drive could not be determined."
    Case 2 strDriveType = "Removable Drive"
    Case 3 strDriveType = "Local hard disk."
    Case 4 strDriveType = "Network disk."
    Case 5 strDriveType = "Compact disk (CD)"
    Case 6 strDriveType = "RAM disk."
    Case Else strDriveType = "Drive type Problem."
    End Select
    strDiskFSType = objHDD.FileSystem
    'Find C
    If objHDD.Name="C:" Then
    If isNull(objHDD.FreeSpace) Then
    If blnDebug=True then Call ErrHandler("ALERT!! Volume " & objHDD.Name & "is RAW",1) 'Abort/clean
    fCheckDrives="ALERT!! Volume " & objHDD.Name & "is RAW"
    End If
    End If
    strDiskSize = Int(objHDD.Size /iGBUnits) & "GB" 'calc size of disk
    strDisk = strDisk & VbCrLf & "Vol " & objHDD.Name & " (" & strDriveType & ") size: " & strDiskSize & " (free: " & Int(objHDD.FreeSpace /iGBUnits) & "GB), " & strDiskFSType
    fGetDrives=strDisk
    Next
    If (Err.Number <>0) Then
    Call ErrHandler("WMI Property Query Error: [" & Err.Number & "]",2)
    fGetDrives = -1
    Exit Function
    End If
    End Function
    '=================================================================================
    '=================================================================================
    Function fUniversalCheckData(varData,strStage) 'template
    'Aim: Check value passed...
    'is not blank
    'is in range x..y
    'spelt OK
    'is in a list
    'format is text, numeric
    'return: string: the original value
    On Error Resume Next
    Dim Err
    if blnDebug Then StatusBar.InnerText = StatusBar.InnerText & VbCrLf & "Validating " & strStage & " data..."
    If Err Then
    Call ErrHandler("WARNING: Error discovering value in " & strStage,2) '1=Quit,2=Warn
    strHTAModel="Unknown"
    Else
    Select Case varData
    Case IsEmpty(varData) Or IsNull(varData)
    Call ErrHandler("WARNING: Error in "& strStage,2) '1=Quit,2=Warn
    fUniversalCheckData="Unknown"
    Case IsNumeric(varData)
    If varData<0 Then
    Call ErrHandler("WARNING: Value negative"& strStage,2) '1=Quit,2=Warn
    fUniversalCheckData="Unknown"
    End if
    ' & varData &
    Case IsDate(varData)
    Case Else
    fUniversalCheckData=varData 'Data OK - return value unchanged
    End Select
    End If
    End Function
    '=================================================================================
    'Checks - follow if true DO, if false warn/abort
    '=================================================================================
    Function fCheckBattery(strQuery)
    'Aim: Find if battery is running
    'Return pass/fail
    On Error Resume Next 'equiv to Err.Clear
    Const wbemFlagReturnImmediately = &h10
    Const wbemFlagForwardOnly = &h20
    Dim colItems, item
    Set objWMIService = GetObject("winmgmts:\\" & strComputer & "\root\WMI")
    Set colItems = objWMIService.ExecQuery("SELECT * FROM BatteryStatus Where Voltage > 0", "WQL", _
    wbemFlagReturnImmediately + wbemFlagForwardOnly)
    For Each item In colItems
    if objItem.PowerOnline = True Then
    strHTABattery=objItem.PowerOnline
    strHTABatteryState = cFail
    Err.Raise 9010,"fCheckBattery",strHTABattery & " Laptop running on battery. OSD Cannot continue."
    Call ErrHandler(ucase(strHTABatteryState) & ": " & Err.Description & " (Code: " & Err.Number & " - " & Err.Source & ")",1)
    StatusBar.InnerText=StatusBar.InnerText & VbCrLf & "FATAL ERROR - Laptop on Battery. Please plug into an outlet before proceeding."
    iTimer = window.setTimeout("Abort", iAbortTimeout, "VBScript")
    Else
    strHTABatteryState = cPassed
    End if
    Next
    fCheckBattery=strHTABattery
    End Function
    '====================================================
    Function fCheckProcess(strQuery)
    'Aim: Find if outlook is running
    'Return pass/fail
    On Error Resume Next 'equiv to Err.Clear
    Dim colItems, item
    Set colItems = GetObject("winmgmts:").ExecQuery(strQuery,"WQL",lFlags)
    For Each item In colItems
    if item.Name = "OUTLOOK.EXE" Then
    strHTAOutlook=item.Name
    strHTAOutlookState = cFail
    Err.Raise 9010,"fCheckOutlook",strHTAOutlook & " running. OSD Cannot continue."
    Call ErrHandler(ucase(strHTAOutlookState) & ": " & Err.Description & " (Code: " & Err.Number & " - " & Err.Source & ")",1)
    StatusBar.InnerText=StatusBar.InnerText & VbCrLf & "FATAL ERROR - Outlook Running, please close outlook before proceeding."
    iTimer = window.setTimeout("Abort", iAbortTimeout, "VBScript")
    Elseif item.Name = "communicator.exe" Then
    strHTAOutlook=item.Name
    strHTAOutlookState = cFail
    Err.Raise 9010,"fCheckOutlook",strHTAOutlook & " running. OSD Cannot continue."
    Call ErrHandler(ucase(strHTAOutlookState) & ": " & Err.Description & " (Code: " & Err.Number & " - " & Err.Source & ")",1)
    StatusBar.InnerText=StatusBar.InnerText & VbCrLf & "FATAL ERROR - Communicator Running, please close OCS before proceeding."
    iTimer = window.setTimeout("Abort", iAbortTimeout, "VBScript")
    Else
    strHTAOutlookState = cPassed
    End if
    Next
    fCheckProcess=strHTAOutlook
    End Function
    '====================================================
    '1 - Make
    Function fCheckVendor(strVendor)
    'Aim: Check make is one the OS/build is designed For
    'Return: STRINGS for "Make", BIOS version and BIOS date (generic): strHTAVendorState pass or fail
    On Error Resume Next
    Dim colItems,objItem
    Set colItems = GetObject("winmgmts:").ExecQuery(strVendor, "WQL", lFlags)
    For Each objItem In colItems
    strHTAVendor=objItem.Manufacturer
    if objApprovedMakesDict.exists(strHTAVendor) then
    strBIOSver=objItem.SMBIOSBIOSVersion
    strBIOSDate=Mid( objItem.ReleaseDate, 5, 2 ) & "/" & Mid( objItem.ReleaseDate, 7, 2 ) & "/" & Left( objItem.ReleaseDate, 4 )
    strHTAVendorState=cPassed
    Else
    strHTAVendorState=cFail
    Err.Raise 9010,"fCheckVendor",strHTAVendor & " found. The build will not work on this make of hardware"
    Call ErrHandler(ucase(strHTAVendorState) & ": " & Err.Description & " (Code: " & Err.Number & " - " & Err.Source & ")",1)
    bAbortBuild=True
    end if
    Next
    fCheckVendor=strHTAVendor
    End Function
    '=================================================================================
    '=================================================================================
    '2 - Models check
    Function fCheckModel(strThisModel)
    'Aim Check target machine is in list of models
    'Return string
    On Error Resume Next
    StatusBar.InnerText=StatusBar.InnerText & VbCrLf & "Checking model..." & VbCrLf
    If objModelsDict.exists(trim(strThisModel)) then ' if current model in objDict then huzzah
    strHTAModelState=cPassed
    StatusBar.InnerText=StatusBar.InnerText & vbTab & "Model detected: " & vbTab & strHTAModelState
    Else
    strHTAModelState=cFail
    Err.Raise 9010,"fCheckModel",strThisModel & " found. The build will not work on this model of hardware"
    Call ErrHandler(ucase(strHTAModelState) & ": " & Err.Description & " (Code: " & Err.Number & " - " & Err.Source & ")",1)
    end if
    fCheckModel=strHTAModel
    End Function
    '=================================================================================
    '=================================================================================
    '3 - RAM
    Function fCheckRAM(strRAM)
    'Aim: Check installed RAM > x
    'Return string digits with units, e.g. 4GB
    'use strHTARAM for value
    '==================================================================
    ' Memory Preflight Check (from MDT2012)
    '==================================================================
    On Error Resume Next
    StatusBar.InnerText=StatusBar.InnerText & VbCrLf & "Checking RAM..."
    If Err.Number <> 0 Then
    Call ErrHandler("Error occurred while calculating computer's memory.",2)
    End If
    fCheckRAM = Int(strRAM/1024) & "GB" 'format in GB
    If Int(strRAM) > cMinimumMemoryMB Then
    strHTARAMState=cPassed 'Sufficient memory - show whole number in GB"
    StatusBar.InnerText=StatusBar.InnerText & vbTab & "RAM installed: " & vbTab & strHTARAMState
    Else
    strHTARAMState=cFail
    Err.Raise 9030 ,"fCheckRAM","Not enough memory in this machine!" & " Required physical memory is: " & cMinimumMemoryMB & " MB."
    Call ErrHandler(ucase(strHTARAMState) & ": " & Err.Description & " (Code: " & Err.Number & " - " & Err.Source & ")",1) 'abort build
    End If
    End Function
    '=================================================================================
    '=================================================================================
    '4 - NTFS disk
    Function fCheckNTFS(strDiskFS)
    'Aim: Check HDD is NTFS
    'Return string
    On Error Resume Next
    StatusBar.InnerText=StatusBar.InnerText & VbCrLf & "Checking file system is not RAW..."
    If Instr(1,strDiskFS,cMinFS,VBTextCompare)<>0 Then
    fCheckNTFS=cMinFS 'disk format is OK (NTFS)
    StatusBar.InnerText=StatusBar.InnerText & vbTab & " File system: " & cPassed
    Else
    fCheckNTFS=cFail
    Err.Raise 9040 ,"fCheckNTFS","WARNING: Disk not correct file-system. Type required is: " & cMinFS & "." & VbCrLf & _
    "The deployment will fail unless you reformat the target disk immediately."
    Call ErrHandler(Err.Description & " (Code: " & Err.Number & " - " & Err.Source & ")",2) 'halt build
    End If
    End Function
    '====================================================
    '=================================================================================
    '5 - CPU checks
    '=================================================================================
    Function fCheckCPUSpeed(strCPU) 'any HW
    'Aim: Check CPU speed
    'Return string = number + appropriate units, e.g. 5HGz (strCPU)
    On Error Resume Next
    StatusBar.InnerText=StatusBar.InnerText & VbCrLf & "Checking CPU spec..."
    Select Case Right(strCPU,3) 'check units
    Case "MHz"
    strCPU=Left(strCPU,4)/1000 'reformat to GHz
    Case "GHz"
    strCPU=strCPU 'unit already OK
    Case Else
    Call ErrHandler("CPU units are unknown",2)
    End Select
    'Check clock speed
    If Int(Left(trim(strCPU),1))>=iMinCPUSpeed Then
    fCheckCPUSpeed=strHTACPUSpeed 'CPU is fine i.e don't change value
    StatusBar.InnerText=StatusBar.InnerText & vbTab & "CPU Speed: " & cPassed
    Else
    fCheckCPUSpeed=cFail 'already in GHz
    Err.Raise 9050,"fCheckCPUSpeed","CPU speed pre-requisite failed. Minimum processor clock speed is: " & iMinCPUSpeed
    Call ErrHandler(Err.Description & " (Code: " & Err.Number & " - " & Err.Source & ")",1) 'halt build
    End If
    End Function
    '=================================================================================
    '=================================================================================
    Function fCheckCPUArch(strCPUArch) 'any HW
    'Aim: Check CPU width
    'Return string
    On Error Resume Next
    StatusBar.InnerText=StatusBar.InnerText & VbCrLf & "Checking CPU bus width..."
    'Check clock speed
    If Int(Left(trim(strCPUArch),2))>=iMinCPUArch Then
    fCheckCPUArch=strHTAArchitecture 'CPU is fine i.e don't change value
    StatusBar.InnerText=StatusBar.InnerText & vbTab & "CPU width: " & cPassed
    Else
    fCheckCPUArch=cFail 'already in GHz
    Err.Raise 9052,"fCheckCPUArch","CPU width pre-requisite failed. Minimum processor width required is: " & iMinCPUArch
    Call ErrHandler(Err.Description & " (Code: " & Err.Number & " - " & Err.Source & ")",1) 'abort build
    End If
    End Function
    '=================================================================================
    Function fCheckCores(iCores)
    'Aim: Check hardware (CPU) has a minimum number of cores
    'Return Integer
    On Error Resume Next
    StatusBar.InnerText=StatusBar.InnerText & VbCrLf & "Checking CPU cores..."
    If iCores>=iMinCores Then
    fCheckCores=iCores
    StatusBar.InnerText=StatusBar.InnerText & vbTab & "Core count: " & vbTab & cPassed
    'StatusBar.InnerText=StatusBar.InnerText & vbTab & "CPU cores: " & cPassed
    Else
    fCheckCores=cFail
    Err.Raise 9051,"fCheckCores","WARNING: Not enough cores on the CPU to support the build. Minimum CPU cores is: " & iMinCores
    Call ErrHandler(Err.Description & " (Code: " & Err.Number & " - " & Err.Source & ")",2) 'halt build
    End If
    End Function
    '=================================================================================
    '=================================================================================
    Function fCheckHPCPUSpeed 'HP ONLY
    'Aim: Check CPU speed
    'return: string
    'Check CPU speed
    On Error Resume Next
    strWQLCPU = "processor speed"
    strTemp=QueryHPBIOS(strWQLCPU,"")
    Select Case Right(strTemp,3)
    Case "MHz"
    strTemp=Left(strTemp,4)/1000 'reformat to GHz
    Case "GHz"
    strTemp 'is OK
    Case Else
    Call ErrHandler("CPU is unknown",2)
    End Select
    'Check clock speed
    If strTemp>=iMinCPUSpeed Then
    fCheckCPUSpeed= strTemp & "GHz"
    Else
    Err.Raise 9050,,"CPU speed pre-requisite failed"
    Call ErrHandler("CPU is too slow",1)
    fCheckCPUSpeed=cFail 'already in GHz
    End If
    End Function
    '=================================================================================
    '=================================================================================
    Function fGetModels
    'Aim: Read external text file
    'return: dictionary object - models as key, integer as value e.g. Dell Optiplex,12
    'On Error Resume Next
    Dim objFSO
    Dim objFile
    Dim strFile
    Dim strEntry
    Dim n
    Dim strfilepath
    Dim iLineCount 'count lines to avoid listing first item with ,.
    Set objModelsDict = CreateObject("Scripting.Dictionary")
    set objFSO=CreateObject("Scripting.FileSystemObject")
    Const ForReading=1
    strfilepath = Left(window.location.pathname,InStrRev(window.location.pathname,"\"))
    strFile=strfilepath & "Models.txt"
    set objFile=objFSO.OpenTextFile(strFile,ForReading)
    iLineCount=0
    'read in each line of data until you reach the end of the file
    do While objFile.AtEndOfStream<>True
    strEntry=objFile.ReadLine
    'you can now do what ever you want with the line as referenced with the strEntry variable such as
    'echoing it back (e.g. wscript.Echo strEntry) or passing it as a variable to a function of subroutine (e.g. MyFunction strEntry)
    objModelsDict.comparemode=VBTextCompare
    objModelsDict.Add strEntry,iLineCount
    iLineCount=iLineCount+1
    If blnDebug then
    If iLineCount=1 Then
    StatusBar.InnerText=trim(strEntry)
    Else
    StatusBar.InnerText=StatusBar.InnerText & ", " & trim(strEntry) 'list models
    End If
    End If
    Loop
    objFile.Close
    End Function
    '=================================================================================
    '=================================================================================
    '====================================================
    Function ErrHandler(strErrorMsg,iErrMode)
    'Aim: to handle error states
    ' 1 = Abort
    ' 2 = Warn
    'Return 'Appropriate text message explaining the error
    '====================================================
    Const msgTitle="SCCM Deployment Preflight Checklist"
    'On Error Resume Next '< don't use that as we want to KEEP the error properties
    'Abort=1
    If iErrMode=1 Then
    StatusBar.InnerText=strErrorMsg 'overwrite status with Error message
    ' StatusBar.InnerText=StatusBar.InnerText & VbCrLf & " " & strHTAOutlook & " " & strHTAVendor & " " & strHTAVendorState & _
    ' VbCrLf & " " & strHTAModel & strHTAModelState & _
    ' VbCrLf & " " & strHTARAM & strHTARAMState & _
    ' VbCrLf & " " & strHTAHDD & strHTAHDDState
    iTimer = window.setTimeout("Abort", iAbortTimeout, "VBScript") 'Abort (close) after n seconds
    'MsgBox strErrorMsg,vbExclamation,msgTitle
    'ErrBar.class=""
    ElseIf iErrMode=2 Then
    'Warning
    StatusBar.InnerText=StatusBar.InnerText & VbCrLf & strErrorMsg & " " '& "(" & Err.Description & " :" & Err.Number & ")"',vbExclamation,msgTitle
    Err.Clear
    End If
    End Function
    '====================================================
    Sub Abort
    'Aim: Quit gracefully
    window.close()
    End Sub
    </script>
    <!-- #region BODY -->
    <body>
    <br />
    <div>
    <span style="version"> <span id="VersionSpan"></span></div>
    <div style="text-align: center;">
    <H1 style="font-family: Arial, Helvetica, sans-serif; font-size: large; text-align: center; color: #000000; text-transform: capitalize">System information</H1>
    <span>
    <table border="1" cellspacing="0" cellpadding="0" style="width: 912px"
    id="SysInfoTable">
    <tr class="h1">
    <td align="right" class="Header1" style="width: 76px; height: 18px">
    </td>
    <td align="right" class="Header1" style="height: 18px"><em id="VendorCaption">Vendor</em></td>
    <td align="left" class="style2" style="height: 18px"><span id="Vendor"></span></td>
    <td align="right" class="Header2" style="height: 18px"><em id="ModelCaption">Model</em></td>
    <td align="center" class="style4" style="width: 400px; height: 18px"><span id="Model"></span></td>
    </tr>
    <tr>
    <td align="right" class="Header1" style="width: 76px">
    </td>
    <td align="right" class="Header1"><em id="ProductCaption">Product ID</em></td>
    <td align="left" class="style2"><span id="Product"></span></td>
    <td align="right" class="Header2"><em id="RAMCaption">Memory(in MB)</em></td>
    <td align="left" class="style4" style="width: 400px"><span id="RAM"></span></td>
    </tr>`
    <tr>
    <td align="right" class="Header1" style="width: 76px">
    </td>
    <td align="right" class="Header1"><em id="CPUCaption">CPU speed (in GHz)</em></td>
    <td align="left" class="style2"><span id="CPUspeed"></span></td>
    <td align="right" class="Header2"><em id="CPUInfoCaption">No: CPU\Cores</em></td>
    <td align="left" class="style4" style="width: 400px"><span id="CPUInfo"></span></td>
    </tr>
    <tr>
    <td align="right" class="Header1" style="width: 76px">
    </td>
    <td align="right" class="Header1"><em id="DiskFSCaption">Filesystem info</em></td>
    <td align="left" class="style2"><span id="HDDFS"></span></td>
    <td align="right" class="Header2"><em id="CapableArchCaption">Architecture</em></td>
    <td align="left" class="style4" style="width: 400px"><span id="CapableArchitecture"></span></td>
    </tr>
    <tr>
    <td align="right" class="Header1" style="width: 76px">
    </td>
    <td align="right" class="Header1"><em id="BIOSVerCaption">BIOS version</em></td>
    <td align="left" class="style2" ><span id="BIOSVERSION"></span></td>
    <td align="right" class="Header2"><em id="BIOSDateCaption">BIOS Date</em></td>
    <td align="left" class="style4" style="width: 400px"><span id="BIOSDate"></span></td>
    </tr>
    </table>
    </span>
    </div>
    <div class="StatusBar">
    <br />
    <Span id="StatusBar">Loading...please wait.</Span>
    </div> <br><br>
    <div align="center">
    <input type="button" name="btnStop" id="btnStop" value="Continue" onclick="Abort">
    <input type="Button" value="Re-Scan Machine" name="button1" onClick="Window_Onload" class="button">
    </div>
    </body><!-- #endregion -->
    </html>

  • Hard Disk Test Failed

    I have a laptop G42 (Product # XB056UA#ABA) with Windows 7 64-bit. When I ran the start up test and hard drive test I received an error (Failure ID 9XVL02-55965Q-XD003G-60WS03). It says that the SMART Check passed but the Short DST failed. When I try to load windows I get past the starting windows screen but then it stops after that at the blue screen with the cursor showing but nothing else. I noticed on other forums that say to purchase the system recovery discs which I just received, however when I try them I get the same screen. I'm pretty sure the hard drive is dead, but my laptop is out of warranty. Is there something else I need to try to make the system recovery discs work? I changed the boot order so that the cd-rom is first but that didn't seem to help. If I do need to replace the hard drive is there any advice or information you can give me?  Thank you!

    Hi,
    Failing the short Disk Self Test would indicate that the HDD has indeed failed and will need to be replaced.
    The drive on the link below is an example of one that would be fine for your notebook.
    500Gb Hard Drive
    The procedure to replace the Hard Drive starts on Page 53 of your Maintenance & Service Guide.
    Once done, simply use your Recovery DVDs to reinstall the Operating System on the new drive - see Here for details.
    Regards,
    DP-K
    ****Click the White thumb to say thanks****
    ****Please mark Accept As Solution if it solves your problem****
    ****I don't work for HP****
    Microsoft MVP - Windows Experience

  • Filesystem check failed, but filesystems are clean

    Im running custom kernel and this might be related to it, but Im on my wits' end here and looking for pointers.
    The problem is, Im getting filesystem check failed every time I boot my system. And it gives no apparent reason
    for it to happen. I have fsck'd my partitions many times and they are clean. My hwclock is in time and rc.conf is set
    to 'localtime'. The problem didn't occurs on the previous kernel (2.6.18) I had, so I've been using its running config to
    compile the new one (2.6.23). The thing is, the previous kernel works fine, no filesystem check failed in boot. Only
    difference between those two is I had to enable HOTPLUG in the newer kernel to get udev working, otherwise it would
    complain about failing netlink socket in initscript.
    As a temporary solution, I commented out the filesystem check from the rc.sysinit and it boots further. This time
    it fails to mount my /boot/ and /home/ directory and fails to activate my swap. Effectively only root is mounted, but
    after logging in, "mount -a" works without any problems and I can use my system normally.
    I have compiled all(?) the needed modules to the kernel, so initramfs shouldn't be needed, but I've tried it anyway, no
    luck there. The system is build with 2009.08 core install disc, no packages updated as far as I recall.
    fstab:
    #none /dev/pts devpts defaults 0 0
    #none /dev/shm tmpfs defaults 0 0
    /dev/hdb /media/cdrom auto ro,user,noauto,unhide 0 0
    #/dev/dvd /media/dvd auto ro,user,noauto,unhide 0 0
    #/dev/fd0 /media/fl auto user,noauto 0 0
    /dev/disk/by-uuid/728c65f2-a84f-401f-9899-17020758b829 /boot ext3 defaults 0 1
    /dev/disk/by-uuid/2767f772-203a-4fe9-ac4d-7c8754abc4c8 swap swap defaults 0 0
    /dev/disk/by-uuid/b0b958c4-5f24-414a-8826-6df956f0815b / reiserfs defaults 0 1
    /dev/disk/by-uuid/e83b7114-86fe-4e8f-9e95-0d92b8e50d1a /home reiserfs defaults 0 1
    dmesg:
    Linux version 2.6.23-xbox (root@xbox) (gcc version 4.1.2) #3 Sat Oct 2 14:20:54 EEST 2010
    BIOS-provided physical RAM map:
    BIOS-e820: 0000000000000000 - 000000000009f000 (usable)
    BIOS-e820: 000000000009f000 - 0000000000100000 (reserved)
    BIOS-e820: 0000000000100000 - 0000000003c00000 (usable)
    BIOS-e820: 0000000003c00000 - 0000000004000000 (reserved)
    60MB LOWMEM available.
    Entering add_active_range(0, 0, 15360) 0 entries of 256 used
    Zone PFN ranges:
    DMA 0 -> 4096
    Normal 4096 -> 15360
    Movable zone start PFN for each node
    early_node_map[1] active PFN ranges
    0: 0 -> 15360
    On node 0 totalpages: 15360
    DMA zone: 32 pages used for memmap
    DMA zone: 0 pages reserved
    DMA zone: 4064 pages, LIFO batch:0
    Normal zone: 88 pages used for memmap
    Normal zone: 11176 pages, LIFO batch:1
    Movable zone: 0 pages used for memmap
    DMI not present or invalid.
    Allocating PCI resources starting at 10000000 (gap: 04000000:fc000000)
    Built 1 zonelists in Zone order. Total pages: 15240
    Kernel command line: root=/dev/hda3 devfs=mount kbd-reset xbox=hdd
    Enabling fast FPU save and restore... done.
    Enabling unmasked SIMD FPU exception support... done.
    Initializing CPU#0
    PID hash table entries: 256 (order: 8, 1024 bytes)
    Detected 733.370 MHz processor.
    Console: colour dummy device 80x25
    console [tty0] enabled
    Dentry cache hash table entries: 8192 (order: 3, 32768 bytes)
    Inode-cache hash table entries: 4096 (order: 2, 16384 bytes)
    Memory: 57652k/61440k available (1764k kernel code, 3380k reserved, 470k data, 136k init, 0k highmem)
    virtual kernel memory layout:
    fixmap : 0xffffb000 - 0xfffff000 ( 16 kB)
    vmalloc : 0xc4800000 - 0xffff9000 ( 951 MB)
    lowmem : 0xc0000000 - 0xc3c00000 ( 60 MB)
    .init : 0xc0332000 - 0xc0354000 ( 136 kB)
    .data : 0xc02b90ae - 0xc032ea60 ( 470 kB)
    .text : 0xc0100000 - 0xc02b90ae (1764 kB)
    Checking if this processor honours the WP bit even in supervisor mode... Ok.
    Calibrating delay using timer specific routine.. 1467.98 BogoMIPS (lpj=2935965)
    Mount-cache hash table entries: 512
    CPU: After generic identify, caps: 0383f9ff 00000000 00000000 00000000 00000000 00000000 00000000 00000000
    CPU: L1 I cache: 16K, L1 D cache: 16K
    CPU: L2 cache: 128K
    CPU: After all inits, caps: 0383f9ff 00000000 00000000 00000040 00000000 00000000 00000000 00000000
    Compat vDSO mapped to ffffe000.
    CPU: Intel Celeron (Coppermine) stepping 0a
    Checking 'hlt' instruction... OK.
    NET: Registered protocol family 16
    PCI: Using configuration type 1
    Setting up standard PCI resources
    SCSI subsystem initialized
    libata version 2.21 loaded.
    usbcore: registered new interface driver usbfs
    usbcore: registered new interface driver hub
    usbcore: registered new device driver usb
    PCI: Probing PCI hardware
    PCI: Probing PCI hardware (bus 00)
    PCI: Cannot allocate resource region 7 of bridge 0000:00:08.0
    PCI: Cannot allocate resource region 8 of bridge 0000:00:08.0
    PCI: Cannot allocate resource region 9 of bridge 0000:00:08.0
    PCI: Bridge: 0000:00:08.0
    IO window: disabled.
    MEM window: disabled.
    PREFETCH window: disabled.
    PCI: Failed to allocate mem resource #2:80000@f8000000 for 0000:01:00.0
    PCI: Failed to allocate mem resource #6:10000@f8000000 for 0000:01:00.0
    PCI: Bridge: 0000:00:1e.0
    IO window: disabled.
    MEM window: fd000000-fdffffff
    PREFETCH window: f0000000-f7ffffff
    PCI: Setting latency timer of device 0000:00:08.0 to 64
    NET: Registered protocol family 2
    Time: tsc clocksource has been installed.
    IP route cache hash table entries: 1024 (order: 0, 4096 bytes)
    TCP established hash table entries: 2048 (order: 2, 16384 bytes)
    TCP bind hash table entries: 2048 (order: 1, 8192 bytes)
    TCP: Hash tables configured (established 2048 bind 2048)
    TCP reno registered
    checking if image is initramfs... it is
    Freeing initrd memory: 325k freed
    Enabling Xbox eject problem workaround.
    fuse init (API version 7.8)
    io scheduler noop registered
    io scheduler deadline registered (default)
    io scheduler cfq registered
    xboxfb: nVidia device/chipset 10DE02A0
    xboxfb: Detected 64MB of system RAM
    xboxfb: Using 4M framebuffer memory
    i2c-xbox.o version 0.0.1
    i2c-xbox.o: Found nVidia XBOX nForce SMBus controller.
    i2c-xbox.o: SMBus bus detected and initialized
    xbox-tv-i2c: Using 'SMBus adapter at c000'!
    xboxfb: Setting TV mode from EEPROM (NTSC)
    xboxfb: detected conexant encoder
    xboxfb: Setting cable type from AVIP ID: HDTV (Component video)
    xboxfb: RIVA MTRR set to ON
    Console: switching to colour frame buffer device 80x30
    xboxfb: PCI nVidia NV20 framebuffer ver 0.9.5b-xbox (XboxGeForce3, 4MB @ 0xF3C00000)
    Real Time Clock Driver v1.12ac
    Linux agpgart interface v0.102
    [drm] Initialized drm 1.1.0 20060810
    RAMDISK driver initialized: 16 RAM disks of 4096K size 1024 blocksize
    loop: module loaded
    forcedeth.c: Reverse Engineered nForce ethernet driver. Version 0.60.
    PCI: Setting latency timer of device 0000:00:04.0 to 64
    eth0: forcedeth.c: subsystem: 00000:0000 bound to 0000:00:04.0
    Uniform Multi-Platform E-IDE driver Revision: 7.00alpha2
    ide: Assuming 33MHz system bus speed for PIO modes; override with idebus=xx
    NFORCE: IDE controller at PCI slot 0000:00:09.0
    NFORCE: chipset revision 212
    NFORCE: not 100% native mode: will probe irqs later
    NFORCE: 0000:00:09.0 (rev d4) UDMA100 controller
    ide0: BM-DMA at 0xff60-0xff67, BIOS settings: hda:DMA, hdb:DMA
    Probing IDE interface ide0...
    hda: WDC WD2500JB-00FUA0, ATA DISK drive
    hdb: PHILIPS XBOX DVD DRIVE, ATAPI CD/DVD-ROM drive
    hda: host side 80-wire cable detection failed, limiting max speed to UDMA33
    hda: selected mode 0x42
    hdb: selected mode 0x42
    ide0 at 0x1f0-0x1f7,0x3f6 on irq 14
    Probing IDE interface ide1...
    hda: max request size: 512KiB
    hda: 488397168 sectors (250059 MB) w/8192KiB Cache, CHS=30401/255/63, UDMA(33)
    hda: cache flushes supported
    hda: hda1 hda2 hda3 hda4
    hdb: ATAPI DVD-ROM drive, 128kB Cache, UDMA(33)
    Uniform CD-ROM driver Revision: 3.20
    ohci_hcd: 2006 August 04 USB 1.1 'Open' Host Controller (OHCI) Driver
    PCI: Setting latency timer of device 0000:00:02.0 to 64
    ohci_hcd 0000:00:02.0: OHCI Host Controller
    ohci_hcd 0000:00:02.0: new USB bus registered, assigned bus number 1
    ohci_hcd 0000:00:02.0: irq 1, io mem 0xfed00000
    usb usb1: configuration #1 chosen from 1 choice
    hub 1-0:1.0: USB hub found
    hub 1-0:1.0: 4 ports detected
    PCI: Setting latency timer of device 0000:00:03.0 to 64
    ohci_hcd 0000:00:03.0: OHCI Host Controller
    ohci_hcd 0000:00:03.0: new USB bus registered, assigned bus number 2
    ohci_hcd 0000:00:03.0: irq 9, io mem 0xfed08000
    usb usb2: configuration #1 chosen from 1 choice
    hub 2-0:1.0: USB hub found
    hub 2-0:1.0: 2 ports detected
    USB Universal Host Controller Interface driver v3.0
    mice: PS/2 mouse device common for all mice
    i2c /dev entries driver
    usb 1-3: new low speed USB device using ohci_hcd and address 2
    usb 1-3: configuration #1 chosen from 1 choice
    input: DELL DELL USB Keyboard as /devices/pci0000:00/0000:00:02.0/usb1/1-3/1-3:1.0/input/input0
    usbcore: registered new interface driver usbkbd
    drivers/hid/usbhid/usbkbd.c: :USB HID Boot Protocol keyboard driver
    usbcore: registered new interface driver usbmouse
    drivers/hid/usbhid/usbmouse.c: v1.6:USB HID Boot Protocol mouse driver
    TCP cubic registered
    drivers/rtc/hctosys.c: unable to open rtc device (rtc0)
    Freeing unused kernel memory: 136k freed
    ReiserFS: hda3: found reiserfs format "3.6" with standard journal
    ReiserFS: hda3: using ordered data mode
    ReiserFS: hda3: journal params: device hda3, size 8192, journal first block 18, max trans len 1024, max batch 900, max commit age 30, max trans age 30
    ReiserFS: hda3: checking transaction log (hda3)
    ReiserFS: hda3: Using r5 hash to sort names
    NET: Registered protocol family 1
    spurious 8259A interrupt: IRQ7.
    udev: starting version 141
    df -h after "mount -a":
    Filesystem Size Used Avail Use% Mounted on
    /dev/disk/by-uuid/b0b958c4-5f24-414a-8826-6df956f0815b
    7.4G 2.1G 5.3G 29% /
    /dev/hda1 99M 11M 83M 12% /boot
    /dev/hda4 226G 39M 226G 1% /home
    Ok, something is definately wrong there, only root is by-uuid
    blkid:
    /dev/hda3: UUID="b0b958c4-5f24-414a-8826-6df956f0815b" TYPE="reiserfs"
    /dev/hda2: TYPE="swap" UUID="2767f772-203a-4fe9-ac4d-7c8754abc4c8"
    /dev/hda4: UUID="e83b7114-86fe-4e8f-9e95-0d92b8e50d1a" TYPE="reiserfs"
    /dev/hda1: UUID="728c65f2-a84f-401f-9899-17020758b829" SEC_TYPE="ext2" TYPE="ext3"
    Should I try newer udev? Can I even use the latest with 2.6.23?

    Mounting Local Filesystems fails
    Mount: Special device /dev/disk/by-uuid/728c65f2-a84f-401f-9899-17020758b829 does not exist
    Mount: Special device /dev/disk/by-uuid/e83b7114-86fe-4e8f-9e95-0d92b8e50d1a does not exist
    so does Activating swap.
    still, ls -la /dev/disk/by-uuid/ gives me:
    lrwxrwxrwx 1 root root 10 2010-10-02 22:45 2767f772-203a-4fe9-ac4d-7c8754abc4c8 -> ../../hda2
    lrwxrwxrwx 1 root root 10 2010-10-02 22:45 728c65f2-a84f-401f-9899-17020758b829 -> ../../hda1
    lrwxrwxrwx 1 root root 10 2010-10-02 22:45 b0b958c4-5f24-414a-8826-6df956f0815b -> ../../hda3
    lrwxrwxrwx 1 root root 10 2010-10-02 22:45 e83b7114-86fe-4e8f-9e95-0d92b8e50d1a -> ../../hda4
    should I have /boot and /home in /dev?
    Full system upgrade gave me the same issue. Even after udev downgrade (udev-142 is the latest I can use with 2.6.23).
    Edit:
    Changed my fstab back from by-uuid to hdaX, didn't help. Strangely all hdaX are in /dev/ after boot, but the symlinks are missing.
    Last edited by TelaKeppi (2010-10-02 21:22:53)

  • Smart Check : FAILED

    An auto-installing Windows Update caused my HP Pavilion Sleekbook 14 to no longer be able to log into Windows 8 successfully without saying that a disc could not be found.  I tried using the system recovery tools on my own to restore the laptop, then contacted HP support. 
    The HP support personnel walked me through the same steps I had already taken, then suggested I take it in to a store that provided support for HP products.  I've taken it to Office Max and Best Buy, where the store supporot personnel look at the following error:
    A required device isn't connected or can't be accessed.
    Error Code: 0xc0000185
    You'll need to use the recovery tools on your installation media. If you don't have any installation media (like a disc or USB device), contact your system administrator or PC Manufacturer
    And tell me that it is a software issue, not covered by my warranty and I will need to purchase recovery disks.  I borrowed a friend's Windows 8 install discs and used Rufus to create a bootable USB.  But when I try to use the USB to fix my laptop, it acts like it only recognizes the USB and not my hard drive.
    When I run HP Basic System Diagnostics I get the following error:
    SMART Check : FAILED
    Failure ID : GU2FNJ-6H56T7-MFPx0K-60ff03
    Product ID : C2K04UA#ABA
    Hard Disk 1
    I'm mostly running blind, but at this point I don't think it's a software issue.  Am I wrong?  I'm still under warranty for another few months,  but every time I take it to a store they just want me to order recovery disks then come back and pay them to use them on the laptop.  I'm really discouraged, and feel like I've tried everything to get HP to help me fix my laptop from an update that installed itself.  What am I missing? Do I have any options?

    Phone HP Support again and report the hard drive failed testing. They "should" at this point send you a replacement. Tell them you also need Recovery Media to boot from and install Windows on the new hdd-since the hdd failed before you got a set burned.
    Be sure to write down the error code and give it to them. In the event it may be the hdd controller on the motherboard you may have to send it in.HP will usually send a box to ship it to them.
    With any luck at all-even the support people at Best Buy or Office Max should realize the problem after hearing the test results and request a hdd or repair from HP. But_you may be better off contacting HP on your own again.
    Good luck!
    ******Clicking the Thumbs-Up button is a way to say -Thanks!.******
    **Click Accept as Solution on a Reply that solves your issue to help others**

  • Start up check failed in my hp 540

    Hello,
    My hp 540 laptop starting failed.. It seems blank screen and curson blinking.. And there s no option... After checking startup check it shows following error message..
    Startup check failed
    status=failed=replace hard disk 1
    warranty id=32LJP-00000-22262-CNU83-10008-01
    this is the error message...
    My system details:
    os- windows 7 32 bit
    so pls suggest me how can i resolve this prb.. And how can i take backup....
    Thanks for advance..

    Status - Failed - Replace Hard Disc 1.
    Warranty ID [Personal Information Removed]
    Warranty ID -> [Personal Information Removed]
    Www.hp.com/go/techcenter/startup
    SKU Number/product number WB279PA#ACJ
    Intel core (TM) 2 Duo CPU T5870@
    2 ghz
    64/2048 kb
    3072 mb 3 gb
    27/10/2009
    Purchase -> 24th Nov 2009; Warranty End date -> 22nd Jan 2011
    250 gb hdd SATA
    Compaq 610 Notebook PC SATA 160/250 GB 5400 rpm (with DriveGuard)
    F.)A
    Notepad serial number./asset tracking number - >[Personal Information Removed]
    Compaq 610 Notebook PC

  • Shared storage check failed on nodes

    hi friends,
    I am installing rac 10g on vmware and os is OEL4.i completed all the prerequisites but when i run the below command
    ./runclufy stage -post hwos -n rac1,rac2, i am facing below error.
    node connectivity check failed.
    Checking shared storage accessibility...
    WARNING:
    Unable to determine the sharedness of /dev/sde on nodes:
    rac2,rac2,rac2,rac2,rac2,rac1,rac1,rac1,rac1,rac1
    Shared storage check failed on nodes "rac2,rac1"
    please help me anyone ,it's urgent
    Thanks,
    poorna.
    Edited by: 958010 on 3 Oct, 2012 9:47 PM

    Hello,
    It seems that your storage is not accessible from both the nodes. If you want you can follow these steps to configure 10g RAC on VMware.
    Steps to configure Two Node 10 RAC on RHEL-4
    Remark-1: H/W requirement for RAC
    a) 4 Machines
    1. Node1
    2. Node2
    3. storage
    4. Grid Control
    b) 2 switchs
    c) 6 straight cables
    Remark-2: S/W requirement for RAC
    a) 10g cluserware
    b) 10g database
    Both must have the same version like (10.2.0.1.0)
    Remark-3: RPMs requirement for RAC
    a) all 10g rpms (Better to use RHEL-4 and choose everything option to install all the rpms)
    b) 4 new rpms are required for installations
    1. compat-gcc-7.3-2.96.128.i386.rpm
    2. compat-gcc-c++-7.3-2.96.128.i386.rpm
    3. compat-libstdc++-7.3-2.96.128.i386.rpm
    4. compat-libstdc++-devel-7.3-2.96.128.i386.rpm
    ------------ Start Machine Preparation --------------------
    1. Prepare 3 machines
    i. node1.oracle.com
    etho (192.9.201.183) - for public network
    eht1 (10.0.0.1) - for private n/w
    gateway (192.9.201.1)
    subnet (255.255.255.0)
    ii. node2.oracle.com
    etho (192.9.201.187) - for public network
    eht1 (10.0.0.2) - for private n/w
    gateway (192.9.201.1)
    subnet (255.255.255.0)
    iii. openfiler.oracle.com
    etho (192.9.201.182) - for public network
    gateway (192.9.201.1)
    subnet (255.255.255.0)
    NOTE:-
    -- Here eth0 of all the nodes should be connected by Public N/W using SWITCH-1
    -- eth1 of all the nodes should be connected by Private N/W using SWITCH-2
    2. network Configuration
    #vim /etc/host
    192.9.201.183 node1.oracle.com node1
    192.9.201.187 node2.oracle.com node2
    192.9.201.182 openfiler.oracle.com openfiler
    10.0.0.1 node1-priv.oracle.com node1
    10.0.0.2 node2-priv.oracle.com node2-priv
    192.9.201.184 node1-vip.oracle.com node1-vip
    192.9.201.188 node2-vip.oracle.com node2-vip
    2. Prepare Both the nodes for installation
    a. Set Kernel Parameters (/etc/sysctl.conf)
    kernel.shmall = 2097152
    kernel.shmmax = 2147483648
    kernel.shmmni = 4096
    kernel.sem = 250 32000 100 128
    fs.file-max = 65536
    net.ipv4.ip_local_port_range = 1024 65000
    net.core.rmem_default = 262144
    net.core.rmem_max = 262144
    net.core.wmem_default = 262144
    net.core.wmem_max = 262144
    b. Configure /etc/security/limits.conf file
    oracle soft nproc 2047
    oracle hard nproc 16384
    oracle soft nofile 1024
    oracle hard nofile 65536
    c. Configure /etc/pam.d/login file
    session required /lib/security/pam_limits.so
    d. Create user and groups on both nodes
    # groupadd oinstall
    # groupadd dba
    # groupadd oper
    # useradd -g oinstall -G dba oracle
    # passwd oracle
    e. Create required directories and set the ownership and permission.
    # mkdir –p /u01/crs1020
    # mkdir –p /u01/app/oracle/product/10.2.0/asm
    # mkdir –p /u01/app/oracle/product/10.2.0/db_1
    # chown –R oracle:oinstall /u01/
    # chmod –R 755 /u01/
    f. Set the environment variables
    $ vi .bash_profile
    ORACLE_BASE=/u01/app/oracle/; export ORACLE_BASE
    ORA_CRS_HOME=/u01/crs1020; export ORA_CRS_HOME
    #LD_ASSUME_KERNEL=2.4.19; export LD_ASSUME_KERNEL
    #LANG=”en_US”; export LANG
    3. storage configuration
    PART-A Open-filer Set-up
    Install openfiler on a machine (Leave 60GB free space on the hdd)
    a) Login to root user
    b) Start iSCSI target service
    # service iscsi-target start
    # chkconfig –level 345 iscsi-target on
    PART –B Configuring Storage on openfiler
    a) From any client machine open the browser and access openfiler console (446 ports).
    https://192.9.201.182:446/
    b) Open system tab and update the local N/W configuration for both nodes with netmask (255.255.255.255).
    c) From the Volume tab click "create a new physical volume group".
    d) From "block Device managemrnt" click on "(/dev/sda)" option under 'edit disk' option.
    e) Under "Create a partition in /dev/sda" section create physical Volume with full size and then click on 'CREATE'.
    f) Then go to the "Volume Section" on the right hand side tab and then click on "Volume groups"
    g) Then under the "Create a new Volume Group" specify the name of the volume group (ex- racvgrp) and click on the check box and then click on "Add Volume Group".
    h) Then go to the "Volume Section" on the right hand side tab and then click on "Add Volumes" and then specify the Volume name (ex- racvol1) and use all space and specify the "Filesytem/Volume type" as ISCSI and then click on CREATE.
    i) Then go to the "Volume Section" on the right hand side tab and then click on "iSCSI Targets" and then click on ADD button to add your Target IQN.
    j) then goto the 'LUN Mapping" and click on "MAP".
    k) then goto the "Network ACL" and allow both node from there and click on UPDATE.
    Note:- To create multiple volumes with openfiler we need to use Multipathing that is quite complex that’s why here we are going for a single volume. Edit the property of each volume and change access to allow.
    f) install iscsi-initiator rpm on both nodes to acces iscsi disk
    #rpm -ivh iscsi-initiator-utils-----------
    g) Make entry in iscsi.conf file about openfiler on both nodes.
    #vim /etc/iscsi.conf (in RHEL-4)
    and in this file you will get a line "#DiscoveryAddress=192.168.1.2" remove comment and specify your storage ip address here.
    OR
    #vim /etc/iscsi/iscsi.conf (in RHEL-5)
    and in this file you will get a line "#ins.address = 192.168.1.2" remove comment and specify your storage ip address here.
    g) #service iscsi restart (on both nodes)
    h) From both Nodes fire this command to access volume of openfiler-
    # iscsiadm -m discovery -t sendtargets -p 192.2.201.182
    i) #service iscsi restart (on both nodes)
    j) #chkconfig –level 345 iscsi on (on both nodes)
    k) make the partition 3 primary and 1 extended and within extended make 11 logical partition
    A. Prepare partitions
    1. #fdisk /dev/sdb
    :e (extended)
    Part No. 1
    First Cylinder:
    Last Cylinder:
    :p
    :n
    :l
    First Cylinder:
    Last Cylinder: +1024M
    2. Note the /dev/sdb* names.
    3. #partprobe
    4. Login as root user on node2 and run partprobe
    B. On node1 login as root user and create following raw devices
    # raw /dev/raw/raw5 /dev/sdb5
    #raw /dev/raw/taw6 /dev/sdb6
    # raw /dev/raw/raw12 /dev/sdb12
    Run ls –l /dev/sdb* and ls –l /dev/raw/raw* to confirm the above
    -Repeat the same thing on node2
    C. On node1 as root user
    # vi .etc/sysconfig/rawdevices
    /dev/raw/raw5 /dev/sdb5
    /dev/raw/raw6 /dev/sdb6
    /dev/raw/raw7 /dev/sdb7
    /dev/raw/raw8 /dev/sdb8
    /dev/raw/raw9 /dev/sdb9
    /dev/raw/raw10 /dev/sdb10
    /dev/raw/raw11 /dev/sdb11
    /dev/raw/raw12 /dev/sdb12
    /dev/raw/raw13 /dev/sdb13
    /dev/raw/raw14 /dev/sdb14
    /dev/raw/raw15 /dev/sdb15
    D. Restart the raw service (# service rawdevices restart)
    #service rawdevices restart
    Assigning devices:
    /dev/raw/raw5 --> /dev/sdb5
    /dev/raw/raw5: bound to major 8, minor 21
    /dev/raw/raw6 --> /dev/sdb6
    /dev/raw/raw6: bound to major 8, minor 22
    /dev/raw/raw7 --> /dev/sdb7
    /dev/raw/raw7: bound to major 8, minor 23
    /dev/raw/raw8 --> /dev/sdb8
    /dev/raw/raw8: bound to major 8, minor 24
    /dev/raw/raw9 --> /dev/sdb9
    /dev/raw/raw9: bound to major 8, minor 25
    /dev/raw/raw10 --> /dev/sdb10
    /dev/raw/raw10: bound to major 8, minor 26
    /dev/raw/raw11 --> /dev/sdb11
    /dev/raw/raw11: bound to major 8, minor 27
    /dev/raw/raw12 --> /dev/sdb12
    /dev/raw/raw12: bound to major 8, minor 28
    /dev/raw/raw13 --> /dev/sdb13
    /dev/raw/raw13: bound to major 8, minor 29
    /dev/raw/raw14 --> /dev/sdb14
    /dev/raw/raw14: bound to major 8, minor 30
    /dev/raw/raw15 --> /dev/sdb15
    /dev/raw/raw15: bound to major 8, minor 31
    done
    E. Repeat the same thing on node2 also
    F. To make these partitions accessible to oracle user fire these commands from both Nodes.
    # chown –R oracle:oinstall /dev/raw/raw*
    # chmod –R 755 /dev/raw/raw*
    F. To make these partitions accessible after restart make these entry on both nodes
    # vi /etc/rc.local
    Chown –R oracle:oinstall /dev/raw/raw*
    Chmod –R 755 /dev/raw/raw*
    4. SSH configuration (User quivalence)
    On node1:- $ssh-keygen –t rsa
    $ssh-keygen –t dsa
    On node2:- $ssh-keygen –t rsa
    $ssh-keygen –t dsa
    On node1:- $cd .ssh
    $cat *.pub>>node1
    On node2:- $cd .ssh
    $cat *.pub>>node2
    On node1:- $scp node1 node2:/home/oracle/.ssh
    On node2:- $scp node2 node2:/home/oracle/.ssh
    On node1:- $cat node*>>authowized_keys
    On node2:- $cat node*>>authowized_keys
    Now test the ssh configuration from both nodes
    $ vim a.sh
    ssh node1 hostname
    ssh node2 hostname
    ssh node1-priv hostname
    ssh node2-priv hostname
    $ chmod +x a.sh
    $./a.sh
    first time you'll have to give the password then it never ask for password
    5. To run cluster verifier
    On node1 :-$cd /…/stage…/cluster…/cluvfy
    $./runcluvfy stage –pre crsinst –n node1,node2
    First time it will ask for four New RPMs but remember install these rpms by double clicking because of dependancy. So better to install these rpms in this order (rpm-3, rpm-4, rpm-1, rpm-2)
    1. compat-gcc-7.3-2.96.128.i386.rpm
    2. compat-gcc-c++-7.3-2.96.128.i386.rpm
    3. compat-libstdc++-7.3-2.96.128.i386.rpm
    4. compat-libstdc++-devel-7.3-2.96.128.i386.rpm
    And again run cluvfy and check that "It should given a clean cheat" then start clusterware installation.

Maybe you are looking for

  • ICloud to Mac Address Book - Two Questions

    Okay, I have learned/accepted that iCloud is not the sync'ing deal that MobileMe was (missed that in the fine print as I have been a loyal .mac user from its inception and like the MM syncing). I understand that everything is updated in the cloud and

  • No procedure/function decomposition in packages in Rel 2

    I noticed that one of the changes since the last release was: "View Package Spec and Body - now decompose to display procedures and functions " I tried doing this in Rel 2 but there is still no decomposition of procedures/functions.Maybe I have misun

  • Set time in Reminders

    Hi, I have heard that there is a shortcut to set a alarm time in Reminders. If you use Swedish as default language you can write i.e. "Call mum kl13.00" or something like that. In English it would something be like "Call mum 13.00h". Does anybody kno

  • Picking is greyed out while i create delivery in Consignment Fill Up

    Dear SAP Gurus.. Plz, advise, Picking is greyed out while i create delivery in Consignment Fill Up. I'm able to create Consignment sales Scenario: Comp A -->  Comp B --> Customer but Material should be remain in CompA value vise Only Inventory of Com

  • ORA-01882 TIMEDATE REGION NOT FOUND (NLS-PARAMETERS)

    I´m Working in Brazil, when I run tester, have an error display , jbosqlexception ora-01882 TRZ timeregion zone not found, this problem is in the server ? or my computer configurations? Nls_parameters is BRAZILIAN PORTUGUESE , BRAZIL , or should be A