cryptui: Skip the format page of the export wizard if the format is implied.
This commit is contained in:
parent
0cac6977e6
commit
c417c9b9c2
|
@ -5443,6 +5443,7 @@ struct ExportWizData
|
||||||
LPCWSTR pwszWizardTitle;
|
LPCWSTR pwszWizardTitle;
|
||||||
PCCRYPTUI_WIZ_EXPORT_INFO pExportInfo;
|
PCCRYPTUI_WIZ_EXPORT_INFO pExportInfo;
|
||||||
void *pvoid;
|
void *pvoid;
|
||||||
|
DWORD exportFormat;
|
||||||
};
|
};
|
||||||
|
|
||||||
static LRESULT CALLBACK export_welcome_dlg_proc(HWND hwnd, UINT msg, WPARAM wp,
|
static LRESULT CALLBACK export_welcome_dlg_proc(HWND hwnd, UINT msg, WPARAM wp,
|
||||||
|
@ -5615,11 +5616,13 @@ static BOOL show_export_ui(DWORD dwFlags, HWND hwndParent,
|
||||||
PROPSHEETPAGEW pages[4];
|
PROPSHEETPAGEW pages[4];
|
||||||
struct ExportWizData data;
|
struct ExportWizData data;
|
||||||
int nPages = 0;
|
int nPages = 0;
|
||||||
|
BOOL showFormatPage = TRUE;
|
||||||
|
|
||||||
data.dwFlags = dwFlags;
|
data.dwFlags = dwFlags;
|
||||||
data.pwszWizardTitle = pwszWizardTitle;
|
data.pwszWizardTitle = pwszWizardTitle;
|
||||||
data.pExportInfo = pExportInfo;
|
data.pExportInfo = pExportInfo;
|
||||||
data.pvoid = pvoid;
|
data.pvoid = pvoid;
|
||||||
|
data.exportFormat = 0;
|
||||||
|
|
||||||
memset(&pages, 0, sizeof(pages));
|
memset(&pages, 0, sizeof(pages));
|
||||||
|
|
||||||
|
@ -5631,6 +5634,24 @@ static BOOL show_export_ui(DWORD dwFlags, HWND hwndParent,
|
||||||
pages[nPages].lParam = (LPARAM)&data;
|
pages[nPages].lParam = (LPARAM)&data;
|
||||||
nPages++;
|
nPages++;
|
||||||
|
|
||||||
|
switch (pExportInfo->dwSubjectChoice)
|
||||||
|
{
|
||||||
|
case CRYPTUI_WIZ_EXPORT_CRL_CONTEXT:
|
||||||
|
case CRYPTUI_WIZ_EXPORT_CTL_CONTEXT:
|
||||||
|
showFormatPage = FALSE;
|
||||||
|
data.exportFormat = CRYPTUI_WIZ_EXPORT_FORMAT_DER;
|
||||||
|
break;
|
||||||
|
case CRYPTUI_WIZ_EXPORT_CERT_STORE:
|
||||||
|
showFormatPage = FALSE;
|
||||||
|
data.exportFormat = CRYPTUI_WIZ_EXPORT_FORMAT_SERIALIZED_CERT_STORE;
|
||||||
|
break;
|
||||||
|
case CRYPTUI_WIZ_EXPORT_CERT_STORE_CERTIFICATES_ONLY:
|
||||||
|
showFormatPage = FALSE;
|
||||||
|
data.exportFormat = CRYPTUI_WIZ_EXPORT_FORMAT_PKCS7;
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
if (showFormatPage)
|
||||||
|
{
|
||||||
pages[nPages].dwSize = sizeof(pages[0]);
|
pages[nPages].dwSize = sizeof(pages[0]);
|
||||||
pages[nPages].hInstance = hInstance;
|
pages[nPages].hInstance = hInstance;
|
||||||
pages[nPages].u.pszTemplate = MAKEINTRESOURCEW(IDD_EXPORT_FORMAT);
|
pages[nPages].u.pszTemplate = MAKEINTRESOURCEW(IDD_EXPORT_FORMAT);
|
||||||
|
@ -5642,6 +5663,7 @@ static BOOL show_export_ui(DWORD dwFlags, HWND hwndParent,
|
||||||
MAKEINTRESOURCEW(IDS_EXPORT_FORMAT_SUBTITLE);
|
MAKEINTRESOURCEW(IDS_EXPORT_FORMAT_SUBTITLE);
|
||||||
pages[nPages].lParam = (LPARAM)&data;
|
pages[nPages].lParam = (LPARAM)&data;
|
||||||
nPages++;
|
nPages++;
|
||||||
|
}
|
||||||
|
|
||||||
pages[nPages].dwSize = sizeof(pages[0]);
|
pages[nPages].dwSize = sizeof(pages[0]);
|
||||||
pages[nPages].hInstance = hInstance;
|
pages[nPages].hInstance = hInstance;
|
||||||
|
|
Loading…
Reference in New Issue