static int OnBrowseTemplateClick(HWND hDlg) { OPENFILENAME ofn; InitOpenFileName(&ofn); ofn.lpstrFile = MAKEINTRESOURCE(IDC_TEMPLATE_FILE); ofn.lpstrTitle = MAKEINTRESOURCE(IDS_SELECT_FILE); ofn.lpstrFilter = MAKEINTRESOURCE(IDS_FILTER_ALL); GetOpenFileNameRc(hDlg, &ofn); return TRUE; }
static int OnBrowseFileClick(HWND hDlg) { OPENFILENAME ofn; InitOpenFileName(&ofn); ofn.lpstrFile = MAKEINTRESOURCE(IDC_FILE_NAME); ofn.lpstrTitle = MAKEINTRESOURCE(IDS_SELECT_FILE); ofn.lpstrFilter = MAKEINTRESOURCE(IDS_FILTER_ALL); if(GetOpenFileNameRc(hDlg, &ofn)) { SetDlgItemText(hDlg, IDC_DIRECTORY_NAME, _T("")); ConvertToNtName(hDlg, IDC_FILE_NAME); } return TRUE; }
static int OnCommand(HWND hDlg, UINT nNotify, UINT nIDCtrl) { OPENFILENAME ofn; if(nNotify == BN_CLICKED) { switch(nIDCtrl) { case IDC_FILE_NAME1_BROWSE: InitOpenFileName(&ofn); ofn.lpstrFile = MAKEINTRESOURCE(IDC_FILE_NAME1); ofn.lpstrTitle = MAKEINTRESOURCE(IDS_SELECT_FILE); ofn.lpstrFilter = MAKEINTRESOURCE(IDS_FILTER_ALL); GetOpenFileNameRc(hDlg, &ofn); return TRUE; case IDC_FILE_NAME2_BROWSE: InitOpenFileName(&ofn); ofn.lpstrFile = MAKEINTRESOURCE(IDC_FILE_NAME2); ofn.lpstrTitle = MAKEINTRESOURCE(IDS_SELECT_FILE); ofn.lpstrFilter = MAKEINTRESOURCE(IDS_FILTER_ALL); GetOpenFileNameRc(hDlg, &ofn); return TRUE; case IDC_COPY_FILE: return OnCopyFileClick(hDlg); case IDC_MOVE_FILE: return OnMoveFileClick(hDlg); case IDC_COPY_OPTIONS: return OnCopyOptions(hDlg); case IDC_MOVE_OPTIONS: return OnMoveOptions(hDlg); case IDC_DELETE_FILE: return OnDeleteFileClick(hDlg); case IDC_DELETE_DIRECTORY: return OnDeleteDirectoryClick(hDlg); case IDC_FILE_ID_GET: return OnFileIdGetClick(hDlg); case IDC_FILE_ID_USE: return OnFileIdUse(hDlg, IDC_FILE_ID); case IDC_OBJECT_ID_MORE: return OnObjectIdMoreClick(hDlg); case IDC_OBJECT_ID_USE: return OnFileIdUse(hDlg, IDC_OBJECT_ID); case IDC_NT_QUERY_ATTRIBUTES_FILE: return OnNtQueryAttributesFile(hDlg); case IDC_GET_FILE_ATTRIBUTES: return OnGetFileAttributes(hDlg); case IDC_FLUSH_FILE_BUFFERS: return OnFlushFile(hDlg); case IDC_SET_SPARSE: return OnSendAsynchronousFsctl(hDlg, FSCTL_SET_SPARSE); case IDC_REQUEST_OPLOCK_MENU: return ExecuteContextMenuForDlgItem(hDlg, IDC_REQUEST_OPLOCK_MENU, IDR_OPLOCK_PRE_WIN7); case IDC_REQUEST_OPLOCK_1: return OnSendAsynchronousFsctl(hDlg, FSCTL_REQUEST_OPLOCK_LEVEL_1); case IDC_REQUEST_OPLOCK_2: return OnSendAsynchronousFsctl(hDlg, FSCTL_REQUEST_OPLOCK_LEVEL_2); case IDC_REQUEST_BATCH_OPLOCK: return OnSendAsynchronousFsctl(hDlg, FSCTL_REQUEST_BATCH_OPLOCK); case IDC_REQUEST_FILTER_OPLOCK: return OnSendAsynchronousFsctl(hDlg, FSCTL_REQUEST_FILTER_OPLOCK); case IDC_BREAK_ACKNOWLEDGE_1: return OnSendAsynchronousFsctl(hDlg, FSCTL_OPLOCK_BREAK_ACKNOWLEDGE); case IDC_REQUEST_OPLOCK_WIN7: return OnSendRequestOplock(hDlg, true); case IDC_BREAK_ACKNOWLEDGE_2: return OnSendRequestOplock(hDlg, false); } } if(nNotify == EN_CHANGE) { if(nIDCtrl == IDC_FILE_ID) OnFileIDChange(hDlg, nIDCtrl, IDC_FILE_ID_USE); if(nIDCtrl == IDC_OBJECT_ID) OnFileIDChange(hDlg, nIDCtrl, IDC_OBJECT_ID_USE); } return FALSE; }