mirror of
https://github.com/reactos/reactos.git
synced 2025-08-04 09:25:44 +00:00
-don't show SystemComponents
-added a "Show updates" checkbox svn path=/trunk/; revision=21832
This commit is contained in:
parent
caea3e9648
commit
eb3ebbddf1
14 changed files with 164 additions and 103 deletions
|
@ -11,8 +11,9 @@ BEGIN
|
|||
LTEXT "", -1, PROPSHEETPADDING, 63, PROPSHEETWIDTH-12, 1, NOT WS_GROUP | SS_SUNKEN
|
||||
|
||||
ICON IDI_CPLSYSTEM,-1,PROPSHEETPADDING,76,16,16
|
||||
CONTROL "&Show updates",IDC_SHOWUPDATES,"button",BS_AUTOCHECKBOX | WS_TABSTOP,PROPSHEETPADDING, 105, 119, 18
|
||||
LTEXT "Následující aplikace mohou být automaticky odstraněny. K odstranění aplikace nebo k nastavení jejích komponent, ji vyberte ze seznamu a klepněte na tlačítko Přidat/Odebrat.",-1,36,72,PROPSHEETWIDTH-48,32
|
||||
LISTBOX IDC_SOFTWARELIST, PROPSHEETPADDING, 105, PROPSHEETWIDTH-12, 88, LBS_STANDARD | WS_TABSTOP
|
||||
LISTBOX IDC_SOFTWARELIST, PROPSHEETPADDING, 123, PROPSHEETWIDTH-12, 88, LBS_STANDARD | WS_TABSTOP
|
||||
PUSHBUTTON "Přidat/&Odebrat", IDC_ADDREMOVE, PROPSHEETWIDTH-72, 198, 60, 14
|
||||
END
|
||||
|
||||
|
|
|
@ -11,9 +11,10 @@ BEGIN
|
|||
LTEXT "", -1, PROPSHEETPADDING, 63, PROPSHEETWIDTH-12, 1, NOT WS_GROUP | SS_SUNKEN
|
||||
|
||||
ICON IDI_CPLSYSTEM,-1,PROPSHEETPADDING,76,16,16
|
||||
CONTROL "&Updates anzeigen",IDC_SHOWUPDATES,"button",BS_AUTOCHECKBOX | WS_TABSTOP,PROPSHEETPADDING, 105, 119, 18
|
||||
LTEXT "Die folgende Software kann automatisch entfernt werden. Um ein Programm zu entfernen oder die installierten Programmpakete zu ändern, wählen Sie das Programm in der Liste und klicken auf Ändern/Entfernen.",-1,36,72,PROPSHEETWIDTH-48,32
|
||||
LISTBOX IDC_SOFTWARELIST, PROPSHEETPADDING, 105, PROPSHEETWIDTH-12, 88, LBS_STANDARD | WS_TABSTOP
|
||||
PUSHBUTTON "Ändern/Entfe&rnen", IDC_ADDREMOVE, PROPSHEETWIDTH-(82), 198, 70, 14
|
||||
LISTBOX IDC_SOFTWARELIST, PROPSHEETPADDING, 123, PROPSHEETWIDTH-12, 88, LBS_STANDARD | WS_TABSTOP
|
||||
PUSHBUTTON "Ändern/Entfe&rnen", IDC_ADDREMOVE, PROPSHEETWIDTH-(82), 205, 70, 14
|
||||
END
|
||||
|
||||
IDD_PROPPAGEROSSETUP DIALOGEX 0, 0, PROPSHEETWIDTH, PROPSHEETHEIGHT
|
||||
|
|
|
@ -11,8 +11,9 @@ BEGIN
|
|||
LTEXT "", -1, PROPSHEETPADDING, 63, PROPSHEETWIDTH-12, 1, NOT WS_GROUP | SS_SUNKEN
|
||||
|
||||
ICON IDI_CPLSYSTEM,-1,PROPSHEETPADDING,76,16,16
|
||||
CONTROL "&Show updates",IDC_SHOWUPDATES,"button",BS_AUTOCHECKBOX | WS_TABSTOP,PROPSHEETPADDING, 105, 119, 18
|
||||
LTEXT "Følgende Software kan automatisk blive Fjernet. For at fjerne programmer eller ændre hvilken typer komponeter der skal være installeret, vælg fra listen og klik på Tilføj/Fjern.",-1,36,72,PROPSHEETWIDTH-48,32
|
||||
LISTBOX IDC_SOFTWARELIST, PROPSHEETPADDING, 105, PROPSHEETWIDTH-12, 88, LBS_STANDARD | WS_TABSTOP
|
||||
LISTBOX IDC_SOFTWARELIST, PROPSHEETPADDING, 123, PROPSHEETWIDTH-12, 88, LBS_STANDARD | WS_TABSTOP
|
||||
PUSHBUTTON "Tilføj/&Fjern", IDC_ADDREMOVE, PROPSHEETWIDTH-72, 198, 60, 14
|
||||
END
|
||||
|
||||
|
|
|
@ -11,8 +11,9 @@ BEGIN
|
|||
LTEXT "", -1, PROPSHEETPADDING, 63, PROPSHEETWIDTH-12, 1, NOT WS_GROUP | SS_SUNKEN
|
||||
|
||||
ICON IDI_CPLSYSTEM,-1,PROPSHEETPADDING,76,16,16
|
||||
CONTROL "&Show updates",IDC_SHOWUPDATES,"button",BS_AUTOCHECKBOX | WS_TABSTOP,PROPSHEETPADDING, 105, 119, 18
|
||||
LTEXT "The following Software can be automatically removed. To remove a program or to modify its installed components, select it from the list and click Add/Remove.",-1,36,72,PROPSHEETWIDTH-48,32
|
||||
LISTBOX IDC_SOFTWARELIST, PROPSHEETPADDING, 105, PROPSHEETWIDTH-12, 88, LBS_STANDARD | WS_TABSTOP
|
||||
LISTBOX IDC_SOFTWARELIST, PROPSHEETPADDING, 123, PROPSHEETWIDTH-12, 88, LBS_STANDARD | WS_TABSTOP
|
||||
PUSHBUTTON "Modify/&Remove", IDC_ADDREMOVE, PROPSHEETWIDTH-72, 198, 60, 14
|
||||
END
|
||||
|
||||
|
|
|
@ -17,8 +17,9 @@ BEGIN
|
|||
LTEXT "", -1, PROPSHEETPADDING, 63, PROPSHEETWIDTH-12, 1, NOT WS_GROUP | SS_SUNKEN
|
||||
|
||||
ICON IDI_CPLSYSTEM,-1,PROPSHEETPADDING,76,16,16
|
||||
CONTROL "&Show updates",IDC_SHOWUPDATES,"button",BS_AUTOCHECKBOX | WS_TABSTOP,PROPSHEETPADDING, 105, 119, 18
|
||||
LTEXT "El siguiente software puede ser removido automaticamente. Para remover un programa o modificar sus componentes instalados, seleccionalo en la lista y pulsa Añadir/Remover.",-1,36,72,PROPSHEETWIDTH-48,32
|
||||
LISTBOX IDC_SOFTWARELIST, PROPSHEETPADDING, 105, PROPSHEETWIDTH-12, 88, LBS_STANDARD | WS_TABSTOP
|
||||
LISTBOX IDC_SOFTWARELIST, PROPSHEETPADDING, 123, PROPSHEETWIDTH-12, 88, LBS_STANDARD | WS_TABSTOP
|
||||
PUSHBUTTON "Añadir/&Remover", IDC_ADDREMOVE, PROPSHEETWIDTH-72, 198, 60, 14
|
||||
END
|
||||
|
||||
|
|
|
@ -1,52 +1,53 @@
|
|||
/* French translation by Benoit Plante 2005 (cmoibenlepro AT hotmail DOT com) */
|
||||
|
||||
LANGUAGE LANG_FRENCH, SUBLANG_NEUTRAL
|
||||
|
||||
IDD_PROPPAGEINSTALL DIALOGEX 0, 0, PROPSHEETWIDTH, PROPSHEETHEIGHT
|
||||
STYLE DS_SETFONT | DS_FIXEDSYS | WS_CHILD | WS_DISABLED | WS_CAPTION
|
||||
CAPTION "Ajout/Supression de programmes"
|
||||
FONT 8, "MS Shell Dlg", 0, 0, 0x0
|
||||
BEGIN
|
||||
ICON IDI_CPLSYSTEM,-1,PROPSHEETPADDING,18,16,16
|
||||
LTEXT "Pour installer un nouveau programme, cliquez sur Installer",-1,36,18,PROPSHEETWIDTH-48,8
|
||||
PUSHBUTTON "&Installer...", IDC_INSTALL, PROPSHEETWIDTH-(72), 36, 60, 14
|
||||
LTEXT "", -1, PROPSHEETPADDING, 63, PROPSHEETWIDTH-12, 1, NOT WS_GROUP | SS_SUNKEN
|
||||
|
||||
ICON IDI_CPLSYSTEM,-1,PROPSHEETPADDING,76,16,16
|
||||
LTEXT "Les logiciels suivant peuvent être supprimés automatiquement. Pour supprimer un programme ou modifier ses composantes installées, sélectionnez-le dans la liste et cliquez sur Ajouter/Supprimer.",-1,36,72,PROPSHEETWIDTH-48,32
|
||||
LISTBOX IDC_SOFTWARELIST, PROPSHEETPADDING, 105, PROPSHEETWIDTH-12, 88, LBS_STANDARD | WS_TABSTOP
|
||||
PUSHBUTTON "Ajouter/Supp&rimer", IDC_ADDREMOVE, PROPSHEETWIDTH-72, 198, 60, 14
|
||||
END
|
||||
|
||||
IDD_PROPPAGEROSSETUP DIALOGEX 0, 0, PROPSHEETWIDTH, PROPSHEETHEIGHT
|
||||
STYLE DS_SETFONT | DS_FIXEDSYS | WS_CHILD | WS_DISABLED | WS_CAPTION
|
||||
CAPTION "Configuration de ReactOS"
|
||||
FONT 8, "MS Shell Dlg", 0, 0, 0x0
|
||||
BEGIN
|
||||
|
||||
END
|
||||
|
||||
IDD_FIRSTPAGE DIALOGEX 0, 0, PROPSHEETWIDTH, PROPSHEETHEIGHT
|
||||
STYLE DS_SETFONT | DS_FIXEDSYS | WS_CHILD | WS_DISABLED | WS_CAPTION
|
||||
CAPTION "Créer un raccourci"
|
||||
FONT 8, "MS Shell Dlg", 0, 0, 0x0
|
||||
BEGIN
|
||||
LTEXT "Texte 1", -1, 115, 15, 160, 24
|
||||
LTEXT "Texte 2", -1, 115, 35, 160, 17
|
||||
END
|
||||
|
||||
IDD_SUBMIT_REPORT DIALOGEX 0, 0, PROPSHEETWIDTH, PROPSHEETHEIGHT
|
||||
STYLE DS_SETFONT | DS_FIXEDSYS | WS_CHILD | WS_DISABLED | WS_CAPTION
|
||||
CAPTION "Créer un raccourci"
|
||||
FONT 8, "MS Shell Dlg", 0, 0, 0x0
|
||||
BEGIN
|
||||
LTEXT "Texte 1",-1,10,0,225,40
|
||||
LTEXT "Texte 2",-1,10,40,120,20
|
||||
LTEXT "Texte 3",-1,10,55,120,20
|
||||
END
|
||||
|
||||
STRINGTABLE
|
||||
BEGIN
|
||||
IDS_CPLSYSTEMNAME "Ajout/Supression de programmes"
|
||||
IDS_CPLSYSTEMDESCRIPTION "Installe et supprime les programmes et les composantes de ReactOS, ainsi que les raccourcis."
|
||||
END
|
||||
LANGUAGE LANG_FRENCH, SUBLANG_NEUTRAL
|
||||
|
||||
IDD_PROPPAGEINSTALL DIALOGEX 0, 0, PROPSHEETWIDTH, PROPSHEETHEIGHT
|
||||
STYLE DS_SETFONT | DS_FIXEDSYS | WS_CHILD | WS_DISABLED | WS_CAPTION
|
||||
CAPTION "Ajout/Supression de programmes"
|
||||
FONT 8, "MS Shell Dlg", 0, 0, 0x0
|
||||
BEGIN
|
||||
ICON IDI_CPLSYSTEM,-1,PROPSHEETPADDING,18,16,16
|
||||
LTEXT "Pour installer un nouveau programme, cliquez sur Installer",-1,36,18,PROPSHEETWIDTH-48,8
|
||||
PUSHBUTTON "&Installer...", IDC_INSTALL, PROPSHEETWIDTH-(72), 36, 60, 14
|
||||
LTEXT "", -1, PROPSHEETPADDING, 63, PROPSHEETWIDTH-12, 1, NOT WS_GROUP | SS_SUNKEN
|
||||
|
||||
ICON IDI_CPLSYSTEM,-1,PROPSHEETPADDING,76,16,16
|
||||
CONTROL "&Show updates",IDC_SHOWUPDATES,"button",BS_AUTOCHECKBOX | WS_TABSTOP,PROPSHEETPADDING, 105, 119, 18
|
||||
LTEXT "Les logiciels suivant peuvent être supprimés automatiquement. Pour supprimer un programme ou modifier ses composantes installées, sélectionnez-le dans la liste et cliquez sur Ajouter/Supprimer.",-1,36,72,PROPSHEETWIDTH-48,32
|
||||
LISTBOX IDC_SOFTWARELIST, PROPSHEETPADDING, 123, PROPSHEETWIDTH-12, 88, LBS_STANDARD | WS_TABSTOP
|
||||
PUSHBUTTON "Ajouter/Supp&rimer", IDC_ADDREMOVE, PROPSHEETWIDTH-72, 198, 60, 14
|
||||
END
|
||||
|
||||
IDD_PROPPAGEROSSETUP DIALOGEX 0, 0, PROPSHEETWIDTH, PROPSHEETHEIGHT
|
||||
STYLE DS_SETFONT | DS_FIXEDSYS | WS_CHILD | WS_DISABLED | WS_CAPTION
|
||||
CAPTION "Configuration de ReactOS"
|
||||
FONT 8, "MS Shell Dlg", 0, 0, 0x0
|
||||
BEGIN
|
||||
|
||||
END
|
||||
|
||||
IDD_FIRSTPAGE DIALOGEX 0, 0, PROPSHEETWIDTH, PROPSHEETHEIGHT
|
||||
STYLE DS_SETFONT | DS_FIXEDSYS | WS_CHILD | WS_DISABLED | WS_CAPTION
|
||||
CAPTION "Créer un raccourci"
|
||||
FONT 8, "MS Shell Dlg", 0, 0, 0x0
|
||||
BEGIN
|
||||
LTEXT "Texte 1", -1, 115, 15, 160, 24
|
||||
LTEXT "Texte 2", -1, 115, 35, 160, 17
|
||||
END
|
||||
|
||||
IDD_SUBMIT_REPORT DIALOGEX 0, 0, PROPSHEETWIDTH, PROPSHEETHEIGHT
|
||||
STYLE DS_SETFONT | DS_FIXEDSYS | WS_CHILD | WS_DISABLED | WS_CAPTION
|
||||
CAPTION "Créer un raccourci"
|
||||
FONT 8, "MS Shell Dlg", 0, 0, 0x0
|
||||
BEGIN
|
||||
LTEXT "Texte 1",-1,10,0,225,40
|
||||
LTEXT "Texte 2",-1,10,40,120,20
|
||||
LTEXT "Texte 3",-1,10,55,120,20
|
||||
END
|
||||
|
||||
STRINGTABLE
|
||||
BEGIN
|
||||
IDS_CPLSYSTEMNAME "Ajout/Supression de programmes"
|
||||
IDS_CPLSYSTEMDESCRIPTION "Installe et supprime les programmes et les composantes de ReactOS, ainsi que les raccourcis."
|
||||
END
|
||||
|
|
|
@ -11,8 +11,9 @@ BEGIN
|
|||
LTEXT "", -1, PROPSHEETPADDING, 63, PROPSHEETWIDTH-12, 1, NOT WS_GROUP | SS_SUNKEN
|
||||
|
||||
ICON IDI_CPLSYSTEM,-1,PROPSHEETPADDING,76,16,16
|
||||
CONTROL "&Show updates",IDC_SHOWUPDATES,"button",BS_AUTOCHECKBOX | WS_TABSTOP,PROPSHEETPADDING, 105, 119, 18
|
||||
LTEXT "Το ακόλουθο λογισμικό μπορεί να απεγκατασταθεί αυτομάτως. Για να απεγκαταστήσετε ένα πρόγραμμα ή να αλλάξετε τα εγκατεστημένα του αρχεία, επιλέξτε το από τη λίστα και κάντε κλικ στο Προσθήκη/Αφαίρεση.",-1,36,72,PROPSHEETWIDTH-48,32
|
||||
LISTBOX IDC_SOFTWARELIST, PROPSHEETPADDING, 105, PROPSHEETWIDTH-12, 88, LBS_STANDARD | WS_TABSTOP
|
||||
LISTBOX IDC_SOFTWARELIST, PROPSHEETPADDING, 123, PROPSHEETWIDTH-12, 88, LBS_STANDARD | WS_TABSTOP
|
||||
PUSHBUTTON "Προσθήκη/&Αφαίρεση", IDC_ADDREMOVE, PROPSHEETWIDTH-72, 198, 60, 14
|
||||
END
|
||||
|
||||
|
|
|
@ -12,8 +12,9 @@ BEGIN
|
|||
LTEXT "", -1, PROPSHEETPADDING, 63, PROPSHEETWIDTH-12, 1, NOT WS_GROUP | SS_SUNKEN
|
||||
|
||||
ICON IDI_CPLSYSTEM,-1,PROPSHEETPADDING,76,16,16
|
||||
CONTROL "&Show updates",IDC_SHOWUPDATES,"button",BS_AUTOCHECKBOX | WS_TABSTOP,PROPSHEETPADDING, 105, 119, 18
|
||||
LTEXT "A következő szoftvereket lehet eltávolítani. A szoftver törléséhez vagy összetevőinek modosításához kattints a szoftverre a listában, majd kattints a Hozzáadás/eltávolítás gombra.",-1,36,72,PROPSHEETWIDTH-48,32
|
||||
LISTBOX IDC_SOFTWARELIST, PROPSHEETPADDING, 105, PROPSHEETWIDTH-12, 88, LBS_STANDARD | WS_TABSTOP
|
||||
LISTBOX IDC_SOFTWARELIST, PROPSHEETPADDING, 123, PROPSHEETWIDTH-12, 88, LBS_STANDARD | WS_TABSTOP
|
||||
PUSHBUTTON "Hozzáadás/eltávolítás", IDC_ADDREMOVE, PROPSHEETWIDTH-72, 198, 60, 14
|
||||
END
|
||||
|
||||
|
|
|
@ -11,8 +11,9 @@ BEGIN
|
|||
LTEXT "", -1, PROPSHEETPADDING, 63, PROPSHEETWIDTH-12, 1, NOT WS_GROUP | SS_SUNKEN
|
||||
|
||||
ICON IDI_CPLSYSTEM,-1,PROPSHEETPADDING,76,16,16
|
||||
CONTROL "&Show updates",IDC_SHOWUPDATES,"button",BS_AUTOCHECKBOX | WS_TABSTOP,PROPSHEETPADDING, 105, 119, 18
|
||||
LTEXT "これらのプログラムは自動で削除することができます。プログラムを変更したり、コンピュータから削除したりするには、一覧から目的のプログラムを選択し、[変更と削除] をクリックしてください。",-1,36,72,PROPSHEETWIDTH-48,32
|
||||
LISTBOX IDC_SOFTWARELIST, PROPSHEETPADDING, 105, PROPSHEETWIDTH-12, 88, LBS_STANDARD | WS_TABSTOP
|
||||
LISTBOX IDC_SOFTWARELIST, PROPSHEETPADDING, 123, PROPSHEETWIDTH-12, 88, LBS_STANDARD | WS_TABSTOP
|
||||
PUSHBUTTON "変更と削除(&R)", IDC_ADDREMOVE, PROPSHEETWIDTH-72, 198, 60, 14
|
||||
END
|
||||
|
||||
|
|
|
@ -11,8 +11,9 @@ BEGIN
|
|||
LTEXT "", -1, PROPSHEETPADDING, 63, PROPSHEETWIDTH-12, 1, NOT WS_GROUP | SS_SUNKEN
|
||||
|
||||
ICON IDI_CPLSYSTEM,-1,PROPSHEETPADDING,76,16,16
|
||||
CONTROL "&Show updates",IDC_SHOWUPDATES,"button",BS_AUTOCHECKBOX | WS_TABSTOP,PROPSHEETPADDING, 105, 119, 18
|
||||
LTEXT "&De volgende software kan automatisch worden verwijderd. U verwijdert een programma of wijzigt de geïnstalleerde onderdelen door het programma te selecteren en op Toevoegen/verwijderen te klikken.",-1,36,72,PROPSHEETWIDTH-48,32
|
||||
LISTBOX IDC_SOFTWARELIST, PROPSHEETPADDING, 105, PROPSHEETWIDTH-12, 88, LBS_STANDARD | WS_TABSTOP
|
||||
LISTBOX IDC_SOFTWARELIST, PROPSHEETPADDING, 123, PROPSHEETWIDTH-12, 88, LBS_STANDARD | WS_TABSTOP
|
||||
PUSHBUTTON "Toe&voegen/verwijderen", IDC_ADDREMOVE, PROPSHEETWIDTH-72, 198, 60, 14
|
||||
END
|
||||
|
||||
|
|
|
@ -13,8 +13,9 @@ BEGIN
|
|||
LTEXT "", -1, PROPSHEETPADDING, 63, PROPSHEETWIDTH-12, 1, NOT WS_GROUP | SS_SUNKEN
|
||||
|
||||
ICON IDI_CPLSYSTEM,-1,PROPSHEETPADDING,76,16,16
|
||||
CONTROL "&Show updates",IDC_SHOWUPDATES,"button",BS_AUTOCHECKBOX | WS_TABSTOP,PROPSHEETPADDING, 105, 119, 18
|
||||
LTEXT "Następujšce oprogramowanie może być automatycznie usunięte. Żeby usunšc program, albo zmodyfikować zainstalowane komponenty, wybierz program z listy i kliknij Dodaj/Usuń.",-1,36,72,PROPSHEETWIDTH-48,32
|
||||
LISTBOX IDC_SOFTWARELIST, PROPSHEETPADDING, 105, PROPSHEETWIDTH-12, 88, LBS_STANDARD | WS_TABSTOP
|
||||
LISTBOX IDC_SOFTWARELIST, PROPSHEETPADDING, 123, PROPSHEETWIDTH-12, 88, LBS_STANDARD | WS_TABSTOP
|
||||
PUSHBUTTON "Dodaj/&Usuń", IDC_ADDREMOVE, PROPSHEETWIDTH-72, 198, 60, 14
|
||||
END
|
||||
|
||||
|
|
|
@ -11,8 +11,9 @@ BEGIN
|
|||
LTEXT "", -1, PROPSHEETPADDING, 63, PROPSHEETWIDTH-12, 1, NOT WS_GROUP | SS_SUNKEN
|
||||
|
||||
ICON IDI_CPLSYSTEM,-1,PROPSHEETPADDING,76,16,16
|
||||
CONTROL "&Show updates",IDC_SHOWUPDATES,"button",BS_AUTOCHECKBOX | WS_TABSTOP,PROPSHEETPADDING, 105, 119, 18
|
||||
LTEXT "Чтобы установить программу или изменить её установленные компоненты, выделите её в списке и нажмите ""Заменить/Удалить"".",-1,36,72,PROPSHEETWIDTH-48,32
|
||||
LISTBOX IDC_SOFTWARELIST, PROPSHEETPADDING, 105, PROPSHEETWIDTH-12, 88, LBS_STANDARD | WS_TABSTOP
|
||||
LISTBOX IDC_SOFTWARELIST, PROPSHEETPADDING, 123, PROPSHEETWIDTH-12, 88, LBS_STANDARD | WS_TABSTOP
|
||||
PUSHBUTTON "&Заменить/Удалить", IDC_ADDREMOVE, PROPSHEETWIDTH-98, 198, 85, 14
|
||||
END
|
||||
|
||||
|
|
|
@ -105,65 +105,113 @@ CallUninstall(HWND hwndDlg)
|
|||
}
|
||||
|
||||
|
||||
/* Property page dialog callback */
|
||||
static INT_PTR CALLBACK
|
||||
InstallPageProc(HWND hwndDlg,UINT uMsg,WPARAM wParam,LPARAM lParam)
|
||||
static void FillSoftwareList(HWND hwndDlg)
|
||||
{
|
||||
TCHAR pszName[MAX_PATH];
|
||||
TCHAR pszDisplayName[MAX_PATH];
|
||||
TCHAR pszParentKeyName[MAX_PATH];
|
||||
FILETIME FileTime;
|
||||
HKEY hKey;
|
||||
HKEY hSubKey;
|
||||
DWORD dwType;
|
||||
DWORD dwSize;
|
||||
DWORD dwValue = 0;
|
||||
BOOL bIsUpdate = FALSE;
|
||||
BOOL bIsSystemComponent = FALSE;
|
||||
BOOL bShowUpdates = FALSE;
|
||||
int i;
|
||||
ULONG index;
|
||||
|
||||
bShowUpdates = (SendMessage(GetDlgItem(hwndDlg, IDC_SHOWUPDATES), BM_GETCHECK, 0, 0) == BST_CHECKED);
|
||||
|
||||
if (RegOpenKey(HKEY_LOCAL_MACHINE,
|
||||
_TEXT("Software\\Microsoft\\Windows\\CurrentVersion\\Uninstall"),
|
||||
&hKey) != ERROR_SUCCESS)
|
||||
{
|
||||
MessageBox(hwndDlg,
|
||||
_TEXT("Unable to open Uninstall Key"),
|
||||
_TEXT("Error"),
|
||||
MB_ICONSTOP);
|
||||
return;
|
||||
}
|
||||
|
||||
i = 0;
|
||||
dwSize = MAX_PATH;
|
||||
while (RegEnumKeyEx (hKey, i, pszName, &dwSize, NULL, NULL, NULL, &FileTime) == ERROR_SUCCESS)
|
||||
{
|
||||
if (RegOpenKey(hKey,pszName,&hSubKey)==ERROR_SUCCESS)
|
||||
{
|
||||
dwType = REG_DWORD;
|
||||
dwSize = sizeof(DWORD);
|
||||
if (RegQueryValueEx(hSubKey,
|
||||
_TEXT("SystemComponent"),
|
||||
NULL,
|
||||
&dwType,
|
||||
(LPBYTE)&dwValue,
|
||||
&dwSize) == ERROR_SUCCESS)
|
||||
{
|
||||
bIsSystemComponent = (dwValue == 0x1);
|
||||
}
|
||||
else {
|
||||
bIsSystemComponent = FALSE;
|
||||
}
|
||||
dwType = REG_SZ;
|
||||
dwSize = MAX_PATH;
|
||||
bIsUpdate = (RegQueryValueEx(hSubKey,
|
||||
_TEXT("ParentKeyName"),
|
||||
NULL,
|
||||
&dwType,
|
||||
(LPBYTE)pszParentKeyName,
|
||||
&dwSize) == ERROR_SUCCESS);
|
||||
dwSize = MAX_PATH;
|
||||
if (RegQueryValueEx(hSubKey,
|
||||
_TEXT("DisplayName"),
|
||||
NULL,
|
||||
&dwType,
|
||||
(LPBYTE)pszDisplayName,
|
||||
&dwSize) == ERROR_SUCCESS)
|
||||
{
|
||||
if ((!bIsUpdate) && (!bIsSystemComponent))
|
||||
{
|
||||
index = SendDlgItemMessage(hwndDlg,IDC_SOFTWARELIST,LB_ADDSTRING,0,(LPARAM)pszDisplayName);
|
||||
SendDlgItemMessage(hwndDlg,IDC_SOFTWARELIST,LB_SETITEMDATA,index,(LPARAM)hSubKey);
|
||||
}
|
||||
else if (bIsUpdate && bShowUpdates)
|
||||
{
|
||||
index = SendDlgItemMessage(hwndDlg,IDC_SOFTWARELIST,LB_ADDSTRING,0,(LPARAM)pszDisplayName);
|
||||
SendDlgItemMessage(hwndDlg,IDC_SOFTWARELIST,LB_SETITEMDATA,index,(LPARAM)hSubKey);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
dwSize = MAX_PATH;
|
||||
i++;
|
||||
}
|
||||
|
||||
RegCloseKey(hKey);
|
||||
}
|
||||
|
||||
/* Property page dialog callback */
|
||||
static INT_PTR CALLBACK
|
||||
InstallPageProc(HWND hwndDlg,UINT uMsg,WPARAM wParam,LPARAM lParam)
|
||||
{
|
||||
switch (uMsg)
|
||||
{
|
||||
case WM_INITDIALOG:
|
||||
EnableWindow(GetDlgItem(hwndDlg,IDC_INSTALL), FALSE);
|
||||
if (RegOpenKey(HKEY_LOCAL_MACHINE,
|
||||
_TEXT("Software\\Microsoft\\Windows\\CurrentVersion\\Uninstall"),
|
||||
&hKey) != ERROR_SUCCESS)
|
||||
{
|
||||
MessageBox(hwndDlg,
|
||||
_TEXT("Unable to open Uninstall Key"),
|
||||
_TEXT("Error"),
|
||||
MB_ICONSTOP);
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
i = 0;
|
||||
dwSize = MAX_PATH;
|
||||
while (RegEnumKeyEx (hKey, i, pszName, &dwSize, NULL, NULL, NULL, &FileTime) == ERROR_SUCCESS)
|
||||
{
|
||||
if (RegOpenKey(hKey,pszName,&hSubKey)==ERROR_SUCCESS)
|
||||
{
|
||||
dwType = REG_SZ;
|
||||
dwSize = MAX_PATH;
|
||||
if (RegQueryValueEx(hSubKey,
|
||||
_TEXT("DisplayName"),
|
||||
NULL,
|
||||
&dwType,
|
||||
(LPBYTE)pszDisplayName,
|
||||
&dwSize) == ERROR_SUCCESS)
|
||||
{
|
||||
index = SendDlgItemMessage(hwndDlg,IDC_SOFTWARELIST,LB_ADDSTRING,0,(LPARAM)pszDisplayName);
|
||||
SendDlgItemMessage(hwndDlg,IDC_SOFTWARELIST,LB_SETITEMDATA,index,(LPARAM)hSubKey);
|
||||
}
|
||||
}
|
||||
|
||||
dwSize = MAX_PATH;
|
||||
i++;
|
||||
}
|
||||
|
||||
RegCloseKey(hKey);
|
||||
FillSoftwareList(hwndDlg);
|
||||
break;
|
||||
|
||||
case WM_COMMAND:
|
||||
switch (LOWORD(wParam))
|
||||
{
|
||||
case IDC_SHOWUPDATES:
|
||||
if (HIWORD(wParam) == BN_CLICKED)
|
||||
{
|
||||
SendDlgItemMessage(hwndDlg, IDC_SOFTWARELIST, LB_RESETCONTENT, 0, 0);
|
||||
FillSoftwareList(hwndDlg);
|
||||
}
|
||||
break;
|
||||
case IDC_SOFTWARELIST:
|
||||
if (HIWORD(wParam) == LBN_DBLCLK)
|
||||
{
|
||||
|
|
|
@ -23,8 +23,9 @@
|
|||
|
||||
/* controls */
|
||||
#define IDC_INSTALL 101
|
||||
#define IDC_SOFTWARELIST 102
|
||||
#define IDC_ADDREMOVE 103
|
||||
#define IDC_SOFTWARELIST 102
|
||||
#define IDC_ADDREMOVE 103
|
||||
#define IDC_SHOWUPDATES 104
|
||||
|
||||
#endif /* __CPL_RESOURCE_H */
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue