CreateMutex AfxOleInit() AfxOleGetMessageFilter()->SetMessagePendingDelay AfxOleGetMessageFilter()->EnableNotRespondingDialog(FALSE) AfxOleGetMessageFilter()->EnableBusyDialog(FALSE) dlg.DoModal() CAtaSmart::Init WMI on - Start CoInitializeSecurity() CoCreateInstance() ConnectServer() CoSetProxyBlanket() OK:WMI Init OK:Win32_IDEController OK:Win32_SCSIController OK:Win32_USBController VID=05E3h, PID=0710h VID=0000h, PID=0000h DO:SELECT * FROM Win32_DiskDrive OK:SELECT * FROM Win32_DiskDrive DO:GetDiskInfo pd=2, sp=0, st=0, mt=fixed hard disk media DoIdentifyDevicePd(2, 0xA0) - 1 SendAtaCommandPd - IDENTIFY_DEVICE (ATA_PASS_THROUGH) AddDisk(2, 0, 0) - 6 GetSmartAttributePd(2) - 1 OK:Check Model Name - HDS722516VLSA80 DO:GetDiskInfo pd=1, sp=3, st=0, mt=fixed hard disk media DoIdentifyDevicePd(1, 0xA0) - 1 SendAtaCommandPd - IDENTIFY_DEVICE (ATA_PASS_THROUGH) AddDisk(1, 3, 0) - 6 GetSmartAttributePd(1) - 1 OK:Check Model Name - Hitachi HDP725050GLA360 DO:GetDiskInfo pd=0, sp=2, st=0, mt=fixed hard disk media DoIdentifyDevicePd(0, 0xA0) - 1 SendAtaCommandPd - IDENTIFY_DEVICE (ATA_PASS_THROUGH) AddDisk(0, 2, 0) - 6 GetSmartAttributePd(0) - 1 OK:Check Model Name - ST3320620AS DO:GetDiskInfo pd=3, sp=4, st=1, mt=fixed hard disk media DoIdentifyDevicePd(3, 0xA0) - 1 SendAtaCommandPd - IDENTIFY_DEVICE (ATA_PASS_THROUGH) IDENTIFY_DEVICE (General) AddDisk(3, 4, 1) - 6 GetSmartAttributePd(3) - 1 asi1->AttributeCount != asi2->AttributeCount