started implementation of device driver installation wizard

svn path=/trunk/; revision=19070
This commit is contained in:
Christoph von Wittich 2005-11-08 22:25:29 +00:00
parent 4a0e4dc0f4
commit 775e2dbd07
6 changed files with 930 additions and 215 deletions

View file

@ -6,15 +6,15 @@ STYLE DS_MODALFRAME | DS_FIXEDSYS | WS_POPUP | WS_VISIBLE | WS_CAPTION |
CAPTION "Hardwareinstallation" CAPTION "Hardwareinstallation"
FONT 8, "MS Shell Dlg" FONT 8, "MS Shell Dlg"
BEGIN BEGIN
LTEXT "Willkommen",IDC_WELCOMETITLE,115,8,195,24 LTEXT "Willkommen",IDC_WELCOMETITLE,120,8,195,24
LTEXT "Dieser Assistent installiert einen neuen Gerätetreiber für:", LTEXT "Dieser Assistent installiert einen neuen Gerätetreiber für:",
IDC_STATIC,115,40,195,16 IDC_STATIC,120,40,195,16
LTEXT "Klicken Sie auf Weiter um fortzufahren.",IDC_STATIC,115,169,195,17 LTEXT "Klicken Sie auf Weiter um fortzufahren.",IDC_STATIC,120,169,195,17
LTEXT "UNKNOWN DEVICE",IDC_DEVICE,129,55,164,11 LTEXT "UNKNOWN DEVICE",IDC_DEVICE,134,55,164,11
CONTROL "Treiber automatisch installieren",IDC_RADIO_AUTO,"Button", CONTROL "Treiber automatisch installieren",IDC_RADIO_AUTO,"Button",
BS_AUTORADIOBUTTON,115,112,178,13 BS_AUTORADIOBUTTON,120,112,178,13
CONTROL "Treiber von einer bestimmten Position installieren",IDC_RADIO_MANUAL, CONTROL "Treiber von einer bestimmten Position installieren",IDC_RADIO_MANUAL,
"Button",BS_AUTORADIOBUTTON,115,133,164,14 "Button",BS_AUTORADIOBUTTON,120,133,164,14
END END
IDD_NODRIVER DIALOG DISCARDABLE 0, 0, 317, 193 IDD_NODRIVER DIALOG DISCARDABLE 0, 0, 317, 193
@ -23,13 +23,13 @@ STYLE DS_MODALFRAME | DS_FIXEDSYS | WS_POPUP | WS_VISIBLE | WS_CAPTION |
CAPTION "Hardwareinstallation" CAPTION "Hardwareinstallation"
FONT 8, "MS Shell Dlg" FONT 8, "MS Shell Dlg"
BEGIN BEGIN
LTEXT "Installation fehlgeschlagen",IDC_FINISHTITLE,115,8,195,24 LTEXT "Installation fehlgeschlagen",IDC_FINISHTITLE,120,8,195,24
LTEXT "Der Gerät konnte nicht installiert werden, da kein passender Treiber gefunden werden konnte.", LTEXT "Der Gerät konnte nicht installiert werden, da kein passender Treiber gefunden werden konnte.",
IDC_STATIC,115,40,195,19 IDC_STATIC,120,40,195,19
LTEXT "Klicken Sie auf Zurück, wenn Sie eine Treiber CD oder Diskette haben oder den Pfad zum Treiber kennen.", LTEXT "Klicken Sie auf Zurück, wenn Sie eine Treiber CD oder Diskette haben oder den Pfad zum Treiber kennen.",
IDC_STATIC,113,98,181,24 IDC_STATIC,120,98,181,24
CONTROL "Diesen Dialog nicht mehr anzeigen",IDC_DONOTSHOWDLG,"Button", CONTROL "Diesen Dialog nicht mehr anzeigen",IDC_DONOTSHOWDLG,"Button",
BS_AUTOCHECKBOX | WS_TABSTOP,114,170,180,11 BS_AUTOCHECKBOX | WS_TABSTOP,120,170,180,11
END END
IDD_CHSOURCE DIALOG DISCARDABLE 0, 0, 317, 143 IDD_CHSOURCE DIALOG DISCARDABLE 0, 0, 317, 143
@ -45,7 +45,7 @@ BEGIN
BS_AUTOCHECKBOX | WS_TABSTOP,47,33,163,9 BS_AUTOCHECKBOX | WS_TABSTOP,47,33,163,9
CONTROL "Diesen Pfad ebenfalls durchsuchen",IDC_CHECK_PATH,"Button",BS_AUTOCHECKBOX | CONTROL "Diesen Pfad ebenfalls durchsuchen",IDC_CHECK_PATH,"Button",BS_AUTOCHECKBOX |
WS_TABSTOP,50,54,162,10 WS_TABSTOP,50,54,162,10
PUSHBUTTON "Durchsuchen",IDC_BROWSE,248,69,45,14 PUSHBUTTON "Durchsuchen",IDC_BROWSE,248,69,50,14
COMBOBOX IDC_COMBO_PATH,64,71,176,12,CBS_DROPDOWN | CBS_SORT | COMBOBOX IDC_COMBO_PATH,64,71,176,12,CBS_DROPDOWN | CBS_SORT |
WS_VSCROLL | WS_TABSTOP WS_VSCROLL | WS_TABSTOP
END END
@ -64,10 +64,10 @@ STYLE DS_MODALFRAME | DS_FIXEDSYS | WS_POPUP | WS_VISIBLE | WS_CAPTION |
CAPTION "Hardwareinstallation" CAPTION "Hardwareinstallation"
FONT 8, "MS Shell Dlg" FONT 8, "MS Shell Dlg"
BEGIN BEGIN
LTEXT "Installation abgeschlossen",IDC_FINISHTITLE,115,8,195,11 LTEXT "Installation abgeschlossen",IDC_FINISHTITLE,120,8,195,11
LTEXT "Der Assistent hat die Installation erfolgreich abgeschlossen.", LTEXT "Der Assistent hat die Installation erfolgreich abgeschlossen.",
IDC_STATIC,115,32,195,19 IDC_STATIC,120,32,195,19
LTEXT "Klicken Sie zum Beenden der Installation auf Fertigstellen.",IDC_STATIC,115,174, LTEXT "Klicken Sie zum Beenden der Installation auf Fertigstellen.",IDC_STATIC,120,174,
190,11 190,11
LTEXT "UNKNOWN DEVICE",IDC_DEVICE,148,53,147,12 LTEXT "UNKNOWN DEVICE",IDC_DEVICE,148,53,147,12
END END

View file

@ -6,15 +6,15 @@ STYLE DS_MODALFRAME | DS_FIXEDSYS | WS_POPUP | WS_VISIBLE | WS_CAPTION |
CAPTION "Device installation" CAPTION "Device installation"
FONT 8, "MS Shell Dlg" FONT 8, "MS Shell Dlg"
BEGIN BEGIN
LTEXT "Welcome",IDC_WELCOMETITLE,115,8,195,24 LTEXT "Welcome",IDC_WELCOMETITLE,120,8,195,24
LTEXT "This wizard installs a new device driver for:", LTEXT "This wizard installs a new device driver for:",
IDC_STATIC,115,40,195,16 IDC_STATIC,120,40,195,16
LTEXT "Click Next to continue.",IDC_STATIC,115,169,195,17 LTEXT "Click Next to continue.",IDC_STATIC,120,169,195,17
LTEXT "UNKNOWN DEVICE",IDC_DEVICE,129,55,164,11 LTEXT "UNKNOWN DEVICE",IDC_DEVICE,134,55,164,11
CONTROL "Install driver automatically",IDC_RADIO_AUTO,"Button", CONTROL "Install driver automatically",IDC_RADIO_AUTO,"Button",
BS_AUTORADIOBUTTON,115,112,178,13 BS_AUTORADIOBUTTON,120,112,178,13
CONTROL "Install driver from specific location",IDC_RADIO_MANUAL, CONTROL "Install driver from specific location",IDC_RADIO_MANUAL,
"Button",BS_AUTORADIOBUTTON,115,133,164,14 "Button",BS_AUTORADIOBUTTON,120,133,164,14
END END
IDD_NODRIVER DIALOG DISCARDABLE 0, 0, 317, 193 IDD_NODRIVER DIALOG DISCARDABLE 0, 0, 317, 193
@ -23,13 +23,13 @@ STYLE DS_MODALFRAME | DS_FIXEDSYS | WS_POPUP | WS_VISIBLE | WS_CAPTION |
CAPTION "Device installation" CAPTION "Device installation"
FONT 8, "MS Shell Dlg" FONT 8, "MS Shell Dlg"
BEGIN BEGIN
LTEXT "Installation failed",IDC_FINISHTITLE,115,8,195,24 LTEXT "Installation failed",IDC_FINISHTITLE,120,8,195,24
LTEXT "The device could not be installed because the driver could not be found.", LTEXT "The device could not be installed because the driver could not be found.",
IDC_STATIC,115,40,195,19 IDC_STATIC,120,40,195,19
LTEXT "Click on Back if you have a driver disk or know the path to the driver.", LTEXT "Click on Back if you have a driver disk or know the path to the driver.",
IDC_STATIC,113,98,181,24 IDC_STATIC,120,98,181,24
CONTROL "Do not show this dialog anymore",IDC_DONOTSHOWDLG,"Button", CONTROL "Do not show this dialog anymore",IDC_DONOTSHOWDLG,"Button",
BS_AUTOCHECKBOX | WS_TABSTOP,114,170,180,11 BS_AUTOCHECKBOX | WS_TABSTOP,120,170,180,11
END END
IDD_CHSOURCE DIALOG DISCARDABLE 0, 0, 317, 143 IDD_CHSOURCE DIALOG DISCARDABLE 0, 0, 317, 143
@ -45,7 +45,7 @@ BEGIN
BS_AUTOCHECKBOX | WS_TABSTOP,47,33,163,9 BS_AUTOCHECKBOX | WS_TABSTOP,47,33,163,9
CONTROL "Include this path",IDC_CHECK_PATH,"Button",BS_AUTOCHECKBOX | CONTROL "Include this path",IDC_CHECK_PATH,"Button",BS_AUTOCHECKBOX |
WS_TABSTOP,47,54,162,10 WS_TABSTOP,47,54,162,10
PUSHBUTTON "Browse",IDC_BROWSE,248,69,45,14 PUSHBUTTON "Browse",IDC_BROWSE,248,69,50,14
COMBOBOX IDC_COMBO_PATH,61,71,176,12,CBS_DROPDOWN | CBS_SORT | COMBOBOX IDC_COMBO_PATH,61,71,176,12,CBS_DROPDOWN | CBS_SORT |
WS_VSCROLL | WS_TABSTOP WS_VSCROLL | WS_TABSTOP
END END
@ -64,10 +64,10 @@ STYLE DS_MODALFRAME | DS_FIXEDSYS | WS_POPUP | WS_VISIBLE | WS_CAPTION |
CAPTION "Device installation" CAPTION "Device installation"
FONT 8, "MS Shell Dlg" FONT 8, "MS Shell Dlg"
BEGIN BEGIN
LTEXT "Installation complete",IDC_FINISHTITLE,115,8,195,11 LTEXT "Installation complete",IDC_FINISHTITLE,120,8,195,11
LTEXT "The wizard has finished installing the driver for:", LTEXT "The wizard has finished installing the driver for:",
IDC_STATIC,115,32,195,19 IDC_STATIC,120,32,195,19
LTEXT "Click Finish to close the wizard.",IDC_STATIC,115,174, LTEXT "Click Finish to close the wizard.",IDC_STATIC,120,174,
179,11 179,11
LTEXT "UNKNOWN DEVICE",IDC_DEVICE,148,53,147,12 LTEXT "UNKNOWN DEVICE",IDC_DEVICE,148,53,147,12
END END

File diff suppressed because it is too large Load diff

View file

@ -3,3 +3,21 @@
ULONG DbgPrint(PCH Format,...); ULONG DbgPrint(PCH Format,...);
typedef struct _DEVINSTDATA
{
HFONT hTitleFont;
PBYTE buffer;
DWORD requiredSize;
DWORD regDataType;
HWND hDialog;
HDEVINFO hDevInfo;
SP_DEVINFO_DATA devInfoData;
SP_DRVINFO_DATA drvInfoData;
} DEVINSTDATA, *PDEVINSTDATA;
BOOL SearchDriver ( PDEVINSTDATA DevInstData, const TCHAR* Path );
BOOL InstallDriver ( PDEVINSTDATA DevInstData );
DWORD WINAPI FindDriverProc( LPVOID lpParam );
BOOL FindDriver ( PDEVINSTDATA DevInstData );
#define WM_SEARCH_FINISHED (WM_USER + 10)

View file

@ -1,5 +1,7 @@
<module name="newdev" type="win32dll" installbase="system32" installname="newdev.dll"> <module name="newdev" type="win32dll" installbase="system32" installname="newdev.dll">
<include base="newdev">.</include> <include base="newdev">.</include>
<define name="UNICODE" />
<define name="_UNICODE" />
<importlibrary definition="newdev.def" /> <importlibrary definition="newdev.def" />
<define name="_WIN32_IE">0x0600</define> <define name="_WIN32_IE">0x0600</define>
<define name="_WIN32_WINNT">0x0501</define> <define name="_WIN32_WINNT">0x0501</define>

View file

@ -1,10 +1,10 @@
#ifndef RESOURCE_H #ifndef RESOURCE_H
#define RESOURCE_H #define RESOURCE_H
#define IDB_WATERMARK 100 #define IDB_WATERMARK 100
#define IDB_HEADER 101 #define IDB_HEADER 101
#define IDC_STATIC -1 #define IDC_STATIC -1
#define IDC_DEVICE 2000 #define IDC_DEVICE 2000
#define IDC_RADIO_AUTO 2001 #define IDC_RADIO_AUTO 2001
@ -14,15 +14,15 @@
#define IDC_RADIO_CHOOSE 2005 #define IDC_RADIO_CHOOSE 2005
#define IDC_CHECK_MEDIA 2006 #define IDC_CHECK_MEDIA 2006
#define IDC_CHECK_PATH 2007 #define IDC_CHECK_PATH 2007
#define IDC_WELCOMETITLE 2008 #define IDC_WELCOMETITLE 2008
#define IDC_BROWSE 2009 #define IDC_BROWSE 2009
#define IDC_COMBO_PATH 2010 #define IDC_COMBO_PATH 2010
#define IDC_FINISHTITLE 2011 #define IDC_FINISHTITLE 2011
#define IDD_WELCOMEPAGE 1000 #define IDD_WELCOMEPAGE 0
#define IDD_NODRIVER 1001 #define IDD_CHSOURCE 1
#define IDD_CHSOURCE 1002 #define IDD_SEARCHDRV 2
#define IDD_SEARCHDRV 1003 #define IDD_FINISHPAGE 3
#define IDD_FINISHPAGE 1004 #define IDD_NODRIVER 4
#endif /* RESOURCE_H */ #endif /* RESOURCE_H */