mirror of https://github.com/lianthony/NT4.0
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
196 lines
5.1 KiB
196 lines
5.1 KiB
//*************************************************************
|
|
//
|
|
// Startup.c - Startup property sheet page
|
|
//
|
|
// Microsoft Confidential
|
|
// Copyright (c) Microsoft Corporation 1996
|
|
// All rights reserved
|
|
//
|
|
//*************************************************************
|
|
#include <sysdm.h>
|
|
|
|
//
|
|
// Globals for this page
|
|
//
|
|
|
|
#define CSEC_START_MAX 9999 // Maximum number of seconds allowed
|
|
|
|
//
|
|
// Help ID's
|
|
//
|
|
|
|
DWORD aStartupHelpIds[] = {
|
|
IDC_STARTUP_SYS_OS, (IDH_STARTUP + 0),
|
|
IDC_STARTUP_SYS_ENABLECOUNTDOWN, (IDH_STARTUP + 1),
|
|
IDC_STARTUP_SYS_SECONDS, (IDH_STARTUP + 2),
|
|
IDC_STARTUP_CDMP_TXT1, (IDH_STARTUP + 3),
|
|
IDC_STARTUP_CDMP_LOG, (IDH_STARTUP + 4),
|
|
IDC_STARTUP_CDMP_SEND, (IDH_STARTUP + 5),
|
|
IDC_STARTUP_CDMP_WRITE, (IDH_STARTUP + 6),
|
|
IDC_STARTUP_CDMP_FILENAME, (IDH_STARTUP + 7),
|
|
IDC_STARTUP_CDMP_OVERWRITE, (IDH_STARTUP + 8),
|
|
IDC_STARTUP_CDMP_AUTOREBOOT, (IDH_STARTUP + 9),
|
|
IDC_STARTUP_SYSTEM_GRP, (IDH_STARTUP + 10),
|
|
IDC_STARTUP_SYS_SECSCROLL, (IDH_STARTUP + 11),
|
|
IDC_STARTUP_CDMP_GRP, (IDH_STARTUP + 12),
|
|
0, 0
|
|
};
|
|
|
|
|
|
//*************************************************************
|
|
//
|
|
// CreateStartupPage()
|
|
//
|
|
// Purpose: Creates the Startup page
|
|
//
|
|
// Parameters: hInst - hInstance
|
|
//
|
|
//
|
|
// Return: hPage if successful
|
|
// NULL if an error occurs
|
|
//
|
|
// Comments:
|
|
//
|
|
// History: Date Author Comment
|
|
// 11/21/95 ericflo Created
|
|
//
|
|
//*************************************************************
|
|
|
|
HPROPSHEETPAGE CreateStartupPage (HINSTANCE hInst)
|
|
{
|
|
PROPSHEETPAGE psp;
|
|
|
|
psp.dwSize = sizeof(PROPSHEETPAGE);
|
|
psp.dwFlags = 0;
|
|
psp.hInstance = hInst;
|
|
psp.pszTemplate = MAKEINTRESOURCE(IDD_STARTUP);
|
|
psp.pfnDlgProc = StartupDlgProc;
|
|
psp.pszTitle = NULL;
|
|
psp.lParam = 0;
|
|
|
|
return CreatePropertySheetPage(&psp);
|
|
}
|
|
|
|
//*************************************************************
|
|
//
|
|
// StartupDlgProc()
|
|
//
|
|
// Purpose: Dialog box procedure for Startup tab
|
|
//
|
|
// Parameters: hDlg - handle to the dialog box
|
|
// uMsg - window message
|
|
// wParam - wParam
|
|
// lParam - lParam
|
|
//
|
|
// Return: TRUE if message was processed
|
|
// FALSE if not
|
|
//
|
|
// Comments:
|
|
//
|
|
// History: Date Author Comment
|
|
// 11/21/95 ericflo Created
|
|
//
|
|
//*************************************************************
|
|
|
|
BOOL APIENTRY StartupDlgProc (HWND hDlg, UINT uMsg, WPARAM wParam, LPARAM lParam)
|
|
{
|
|
int iRet;
|
|
|
|
//
|
|
// If someone changes the state of one of the controls on this page, then enable the APPLY button
|
|
//
|
|
if (uMsg == WM_COMMAND &&
|
|
(HIWORD(wParam) == EN_CHANGE || HIWORD(wParam) == BN_CLICKED || HIWORD(wParam) == CBN_SELCHANGE )) {
|
|
PropSheet_Changed(GetParent(hDlg), hDlg);
|
|
}
|
|
|
|
iRet = CoreDumpDlgProc(hDlg, uMsg, wParam, lParam);
|
|
|
|
switch( iRet ) {
|
|
case RET_CONTINUE: {
|
|
break;
|
|
}
|
|
|
|
case RET_BREAK: {
|
|
return TRUE;
|
|
}
|
|
|
|
case RET_ERROR: {
|
|
SetWindowLong (hDlg, DWL_MSGRESULT, PSNRET_INVALID_NOCHANGEPAGE);
|
|
return TRUE;
|
|
}
|
|
|
|
case RET_CHANGE_NO_REBOOT:
|
|
case RET_NO_CHANGE: {
|
|
break;
|
|
}
|
|
|
|
case RET_VIRTUAL_CHANGE:
|
|
case RET_RECOVER_CHANGE:
|
|
case RET_VIRT_AND_RECOVER: {
|
|
SendMessage(GetParent(hDlg), PSM_REBOOTSYSTEM, 0, 0);
|
|
break;
|
|
}
|
|
}
|
|
|
|
switch (uMsg)
|
|
{
|
|
case WM_INITDIALOG:
|
|
StartListInit(hDlg, wParam, lParam);
|
|
break;
|
|
|
|
|
|
case WM_NOTIFY:
|
|
|
|
switch (((NMHDR FAR*)lParam)->code)
|
|
{
|
|
case PSN_APPLY:
|
|
if (StartListExit(hDlg, wParam, lParam) == RET_BREAK)
|
|
break;
|
|
|
|
SetWindowLong (hDlg, DWL_MSGRESULT, PSNRET_NOERROR);
|
|
return TRUE;
|
|
|
|
default:
|
|
return FALSE;
|
|
}
|
|
break;
|
|
|
|
case WM_COMMAND:
|
|
switch (LOWORD(wParam)) {
|
|
|
|
#if defined(_MIPS_) || defined(_ALPHA_) || defined(_PPC_)
|
|
case IDC_STARTUP_SYS_ENABLECOUNTDOWN:
|
|
if (HIWORD(wParam) == BN_CLICKED) {
|
|
BOOL bChecked;
|
|
|
|
CheckDlgButton (hDlg, IDC_STARTUP_SYS_ENABLECOUNTDOWN,
|
|
bChecked = (WORD) !IsDlgButtonChecked (hDlg, IDC_STARTUP_SYS_ENABLECOUNTDOWN));
|
|
EnableWindow (GetDlgItem (hDlg, IDC_STARTUP_SYS_SECONDS), bChecked);
|
|
EnableWindow (GetDlgItem (hDlg, IDC_STARTUP_SYS_SECSCROLL), bChecked);
|
|
}
|
|
break;
|
|
#endif
|
|
}
|
|
break;
|
|
|
|
case WM_DESTROY:
|
|
StartListDestroy(hDlg, wParam, lParam);
|
|
break;
|
|
|
|
case WM_HELP: // F1
|
|
WinHelp((HWND)((LPHELPINFO) lParam)->hItemHandle, HELP_FILE, HELP_WM_HELP,
|
|
(DWORD) (LPSTR) aStartupHelpIds);
|
|
break;
|
|
|
|
case WM_CONTEXTMENU: // right mouse click
|
|
WinHelp((HWND) wParam, HELP_FILE, HELP_CONTEXTMENU,
|
|
(DWORD) (LPSTR) aStartupHelpIds);
|
|
break;
|
|
|
|
default:
|
|
return FALSE;
|
|
}
|
|
|
|
return TRUE;
|
|
}
|