|
|
/*++
Copyright (c) 1996 Microsoft Corporation
Module Name:
dialogs.c
Abstract:
This file implements the dialog proc for server name page.
Environment:
WIN32 User Mode
Author:
Wesley Witt (wesw) 17-Feb-1996
--*/
#include "wizard.h"
#pragma hdrstop
LRESULT ServerNameDlgProc( HWND hwnd, UINT msg, WPARAM wParam, LPARAM lParam ) { switch( msg ) { case WM_INITDIALOG: { PPRINTER_INFO_4 PrinterInfo; DWORD CountPrinters;
SendDlgItemMessage( hwnd, IDC_PRINTER_NAME, EM_SETLIMITTEXT, LT_PRINTER_NAME, 0 );
PrinterInfo = MyEnumPrinters( NULL, 4, &CountPrinters, 0); if (PrinterInfo && CountPrinters == 1) { if (IsPrinterFaxPrinter( PrinterInfo[0].pPrinterName )) { SetDlgItemText( hwnd, IDC_PRINTER_NAME, PrinterInfo[0].pPrinterName ); } }
SetDlgItemText( hwnd, IDC_LABEL_PRINTERNAME, GetString(IDS_LABEL_PRINTERNAME) ); SetDlgItemText( hwnd, IDC_PRINTER_NAME, GetString(IDS_DEFAULT_PRINTER_NAME) ); } break;
case WM_NOTIFY: switch( ((LPNMHDR)lParam)->code ) { case PSN_SETACTIVE: if (Unattended) { UnAttendGetAnswer( UAA_PRINTER_NAME, (LPBYTE) WizData.PrinterName, LT_PRINTER_NAME ); SetWindowLong( hwnd, DWL_MSGRESULT, -1 ); return TRUE; } if (InstallMode != INSTALL_NEW) { SetWindowLong( hwnd, DWL_MSGRESULT, -1 ); return TRUE; } break;
case PSN_WIZNEXT: SendDlgItemMessage( hwnd, IDC_PRINTER_NAME, WM_GETTEXT, LT_PRINTER_NAME, (LPARAM) WizData.PrinterName ); if (!WizData.PrinterName[0]) { PopUpMsg( hwnd, IDS_PRINTER_NAME, TRUE, 0 ); SetWindowLong( hwnd, DWL_MSGRESULT, -1 ); return TRUE; }
if (_tcschr( WizData.PrinterName, TEXT('\\')) || _tcschr( WizData.PrinterName, TEXT('!')) || _tcschr( WizData.PrinterName, TEXT(','))){
PopUpMsg( hwnd, IDS_INVALID_LOCAL_PRINTER_NAME, TRUE, 0 );
///Don't allow moving to the next page.
SetWindowLong( hwnd, DWL_MSGRESULT, -1 ); return TRUE; } break;
} break; }
return FALSE; }
|