示例#1
0
BOOL CALLBACK WizMount_DlgProc (HWND hDlg, UINT msg, WPARAM wp, LPARAM lp)
{
   if (!WizCommon_DlgProc (hDlg, msg, wp, lp))
      {
      switch (msg)
         {
         case WM_INITDIALOG:
            g.pWizard->EnableButtons (BACK_BUTTON | NEXT_BUTTON);
            g.pWizard->SetButtonText (IDNEXT, IDS_WIZ_NEXT);
            g.pWizard->SetDefaultControl (IDNEXT);
            l.idh = IDH_AFSCREDS_WIZ_MOUNT;
            EnableWindow (GetDlgItem (GetParent (hDlg), IDHELP), TRUE);

            WizMount_OnInitDialog (hDlg);
            break;

         case WM_COMMAND:
            switch (LOWORD(wp))
               {
               case IDBACK:
                  g.pWizard->SetState (STEP_CREDS);
                  break;

               case IDNEXT:
                  if (IsDlgButtonChecked (hDlg, IDC_YESMAP))
                     {
                     if (!WizMount_IsSubmountValid (hDlg))
                        {
                        Message (MB_ICONHAND, IDS_BADSUB_TITLE, IDS_BADSUB_DESC);
                        break;
                        }
                     int iItem = SendDlgItemMessage (hDlg, IDC_MAP_LETTER, CB_GETCURSEL, 0, 0);
                     int iDrive = SendDlgItemMessage (hDlg, IDC_MAP_LETTER, CB_GETITEMDATA, iItem, 0);
                     l.List.aDriveMap[ iDrive ].chDrive = chDRIVE_A + iDrive;
                     l.List.aDriveMap[ iDrive ].fActive = FALSE;
                     l.List.aDriveMap[ iDrive ].fPersistent = TRUE;
                     GetDlgItemText (hDlg, IDC_MAP_PATH, l.List.aDriveMap[ iDrive ].szMapping, MAX_PATH);
                     GetDlgItemText (hDlg, IDC_MAP_DESC, l.szSubmountReq, MAX_PATH);
                     WriteDriveMappings (&l.List);
                     }
                  g.pWizard->SetState (STEP_MOUNTING);
                  break;

               case IDC_NOMAP:
               case IDC_YESMAP:
               case IDC_MAP_PATH:
                  WizMount_OnEnable (hDlg);
                  break;
               }
            break;
         }
      }

   return FALSE;
}
示例#2
0
void QueryDriveMapList_WriteMappings (PDRIVEMAPLIST pList)
{
    WriteDriveMappings (pList);
}