Структура SHFILEOPSTRUCT

Type SHFILEOPSTRUCT
 hwnd As Long
 wFunc As Long
 pFrom As String
 pTo As String
 fFlags As Integer
 fAnyOperationsAborted As Long
 hNameMappings As Long
 lpszProgressTitle As String
End Type

Структура SHFILEOPSTRUCT содержит описание файловых операций к функции SHFileOperation

Состав структуры

hwnd
Дескриптор владельца диалогового окна, которое будет использоваться для вывода информации о статусе операции
wFunc
Флаг, опеределяющий вид операции:
FO_COPY= &H2
Копирование файлов из pFrom в pTo
FO_DELETE= &H3 (VB.NET:Const FO_DELETE As Short = &H3S
Удаление файлов из pFrom (Для удаления в Корзину используйте эту операцию совместно с флагом FOF_ALLOWUNDO в fFlags)
FO_MOVE= &H1
Перемещение файлов из pFrom в pTo
FO_RENAME= &H4
Переименовывание имен файлов, определенных параметром pFrom в имена pTo
pFrom
Список исходных путей файла\файлов. Файлы должны разделяться нулевым символом и заканчиватся двумя нулевыми символами. Можно использовать символы шаблонов (* и ?) для имен файлов. Если путь не указан, то используется текущая папка
pTo
Список конечных путей файла\файлов. Файлы должны разделяться нулевым символом и заканчиватся двумя нулевыми символами. Для некоторых операций допустимо использование символов шаблонов (* и ?)
fFlags
Комбинация флагов, определяющих различные настройки
FOF_ALLOWUNDO= &H40 (VB.NET: Const FOF_ALLOWUNDO As Short = &H40S)
Разрешение пользователю отменить операцию удаления (кроме файлов с дискет). При существующей возможности. Все пути должны быть полностью определены
FOF_FILESONLY= &H80
При использовании символов шаблонов разрешается работа только с файлами, но не с папками
FOF_MULTIDESTFILES= &H1
pTo опрелеляет множественное нахождение файлов
FOF_NOCONFIRMATION= &H10 (VB.NET: Const FOF_NOCONFIRMATION As Short = &H10S)
Отвечать "Да для всех" при любом запросе пользователя, не выводя различные диалоговые окна с подверждением операции
FOF_NOCONFIRMMKDIR= &H200
Не запрашивать потверждение при создании новой папки
FOF_NO_CONNECTED_ELEMENTS= &H1000
Windows 2000: Не перемещать связанные файлы как группу; перемещать только выбранные файлы
FOF_NOCOPYSECURITYATTRIBS= &H800
Windows NT 4.71 и выше, 2000: Не копировать атрибуты безопасности
FOF_NOERRORUI= &H400
Не выводить диалоговое окно в случае ошибки
FOF_NORECURSION
Разрешение работы только с указанной папкой, но не с вложенными папками
FOF_RENAMEONCOLLISION= &H8
При совпадении имен файлов при копировании, перемещении или переименовывании создавать выходной файл с новым именем(типа "Копия <имя файла >")
FOF_SILENT= &H4
Не показывать ход выполнения медленных операций
FOF_SIMPLEPROGRESS= &H100
Выводить упрощенное окно с индикатором прогресса без отображения имен файлов
fAnyOperationsAborted
Получение ненулевого значения если операция была прервана пользователем до ее завершения. В других случаях параметр равен 0
lpszProgressTitle
Если fFlags содержит флаг FOF_SIMPLEPROGRESS, то этот текст отображается в заголовке окна с индикатором прогресса (строка должна заканчиваться нулевым символом)

Используется в

SHFileOperation