display the "Reinstall Driver" button in case the installation previously failed

svn path=/trunk/; revision=19913
This commit is contained in:
Thomas Bluemel 2005-12-05 18:43:49 +00:00
parent 5666b29c05
commit ff7cc9a72a
4 changed files with 19 additions and 3 deletions

View file

@ -19,6 +19,7 @@ BEGIN
IDS_DEVONPARENT "on %1" IDS_DEVONPARENT "on %1"
IDS_TROUBLESHOOTDEV "&Troubleshoot..." IDS_TROUBLESHOOTDEV "&Troubleshoot..."
IDS_ENABLEDEV "E&nable Device" IDS_ENABLEDEV "E&nable Device"
IDS_REINSTALLDRV "Re&install Driver"
END END
STRINGTABLE STRINGTABLE

View file

@ -470,10 +470,18 @@ GetParentNode:
DeviceInfoData->DevInst, DeviceInfoData->DevInst,
0, 0,
dap->hMachine); dap->hMachine);
if (cr == CR_SUCCESS && if (cr == CR_SUCCESS && (Status & DN_HAS_PROBLEM))
(Status & DN_HAS_PROBLEM) && ProblemNumber == CM_PROB_DISABLED)
{ {
TroubleShootStrId = IDS_ENABLEDEV; switch (ProblemNumber)
{
case CM_PROB_DISABLED:
TroubleShootStrId = IDS_ENABLEDEV;
break;
case CM_PROB_FAILED_INSTALL:
TroubleShootStrId = IDS_REINSTALLDRV;
break;
}
} }
if (LoadString(hDllInstance, if (LoadString(hDllInstance,

View file

@ -56,6 +56,12 @@ ShowDeviceProblemWizard(IN HWND hWndParent OPTIONAL,
break; break;
} }
case CM_PROB_FAILED_INSTALL:
{
/* FIXME - display the driver installation wizard */
break;
}
default: default:
{ {
/* FIXME - troubleshoot the device */ /* FIXME - troubleshoot the device */

View file

@ -24,6 +24,7 @@
#define IDC_PROPERTIES 0x58A #define IDC_PROPERTIES 0x58A
#define IDC_DEVUSAGELABEL 0x58B #define IDC_DEVUSAGELABEL 0x58B
#define IDC_DEVPROBLEM 0x58C #define IDC_DEVPROBLEM 0x58C
#define IDS_REINSTALLDRV 0x58D
#define IDS_NAME 0x100 #define IDS_NAME 0x100
#define IDS_TYPE 0x101 #define IDS_TYPE 0x101