Как отловить msg 'нет доступа к съемному диску' и отреагировать своим msgbox ? - VB

  1. Как отловить msg 'нет доступа к съемному диску' и отреагировать своим msgbox ?


textual

Код к задаче: «Как отловить msg 'нет доступа к съемному диску' и отреагировать своим msgbox ? - VB»

      Declare Function GetLastError Lib 'KERNEL32' () As Long
      Declare Function SHFileOperation Lib 'Shell32.dll' _
         Alias 'SHFileOperationA' (lpFileOp As SHFILEOPSTRUCT) As Long
                Dim result As Long
                Dim fileop As SHFILEOPSTRUCT
                Dim Сбой As Boolean
                Dim ErrorCode As Long
Sub Копирование()
            Const Путь As String = 'D:АВТО3 '
            Const Папка As String = 'Ар'
            Const ПутьСемный As String = 'G: '
            Dim Ширина As Integer
With fileop
   .wFunc = FO_COPY
   .pFrom = Путь & Папка & '6*.*' & vbNullChar & vbNullChar
   .pTo = Путь & Папка & '7 ' & vbNullChar & vbNullChar
   .fFlags = FOF_FILESONLY + FOF_NOCONFIRMATION
   .lpszProgressTitle = 'Резервное копирование' & vbNullChar & vbNullChar
End With
             result = SHFileOperation(fileop)
Результат
     If Сбой = True Then
       Exit Sub
     End If
 
            With fileop
               .wFunc = FO_COPY
               .pFrom = Путь & '*.*' & vbNullChar & vbNullChar
               .pTo = ПутьСемный & vbNullChar & vbNullChar
               .fFlags = FOF_FILESONLY + FOF_NOCONFIRMATION
               .lpszProgressTitle = 'Резервное копирование на съемный диск' & vbNullChar & vbNullChar
            End With
                          result = SHFileOperation(fileop)
Результат
     If Сбой = True Then
       Exit Sub
     End If
  MsgBox '  Резервное копирование прошло успешно !', , 'Отчет о резервном копировании.'
End Sub
 
Sub Результат()
                           ErrorCode = GetLastError
                                   If ErrorCode <> 0 Then
                                       MsgBox 'GetCurrentProcess error==' & GetLastError
                                   End If
         If result <> 0 Then        'Operation failed
            If result = 117 Then
              MsgBox ' Копирование прервано пользователем.', , 'Копирование прервано.'
             Сбой = True
            Else
              MsgBox '          ' & result, , 'Ошибка !'
             Сбой = True
            End If
         Else
            If fileop.fAnyOperationsAborted <> 0 Then
               MsgBox fileop.fAnyOperationsAborted, , 'Операция Прерывалась'
              Сбой = True
            End If
         End If
End Sub

СДЕЛАЙТЕ РЕПОСТ

6   голосов, оценка 4.167 из 5



Похожие ответы
  1. у меня есть код:

  1. что написать в проге, чтоб при нажатии на кнопку(command button) выскакивал MsgBox с просьбой ввода символов, а после этого введенные символы становились названием рамки (frame)?

  1. Вот код, показывающий код нажатой клавиши:

  1. дело в том, что в шапке msgbox пишется Project1, возможно ли сменить например на Error ?

  1. Как сделать, чтоб MsgBox, выдав сообщение, сам исчезал через заданное время?

  1. Кто знает: как можно изменить шрифт (сам шрифт, размер, начертание) для MsgBox? a) единым разом для всех Msgbox данного проекта (во всех модулях) b) внутри отдельного MsgBox (различное написание отдельных частей сообщения).

  1. Необходимо выражение разбить на отдельные строки. В VBA v.6 ввожу MsgBox "Необходимое количество испытаний Npop " & Npop& Chr(10) &" Npop>500 Переполнение памяти." & Chr(10) & "Расчет ведется только до 500."& Chr(10) & "Для продолжения нажмит OK." Выдается ошибкаCompile error! Expected: end of statement Курсор указывает на Chr(10) Пробовал менять на Chr(13), на Chr(13)+Chr(10), на vbCrLf результат тот же, а запуск через Блокнот файла с этой командой при расширении .vbs проходит без ошибок. Как разбить выражение без ошибок? Спасибо.

  1. Здравствуйте. Я в своей программе хочу сделать поиск среди textbox. И у меня есть некоторые недопонимания: 1) Как отловить в своей программе нажатие CTRL + F ???

  1. День добрый, у меня при следующем коде появляется "пустая" иконка в сообщении msgbox