Передо мной стоит задача — переместить папку на новое место. Список полных путей формируется с помощью FilenamesCollection, перемещение — через FileCopy и Kill. Проблема в том, что некоторые файлы могут при этом оказаться открытыми и естественно, "переезжать" откажутся, их нужно закрыть и повторить процедуру (ну или перед её началом попытаться закрыть всё подряд). Открыты могут быть Экселевские, Вордовые и pdf-файлы. Закрытие первых двух понятное дело, проблемы не составляет, проблема в открытых "ручками" pdf. Как бы их позакрывать?
Передо мной стоит задача — переместить папку на новое место. Список полных путей формируется с помощью FilenamesCollection, перемещение — через FileCopy и Kill. Проблема в том, что некоторые файлы могут при этом оказаться открытыми и естественно, "переезжать" откажутся, их нужно закрыть и повторить процедуру (ну или перед её началом попытаться закрыть всё подряд). Открыты могут быть Экселевские, Вордовые и pdf-файлы. Закрытие первых двух понятное дело, проблемы не составляет, проблема в открытых "ручками" pdf. Как бы их позакрывать?StoTisteg
Интуитивно понятный код - это когда интуитивно понятно, что это код.
Sub test() Dim myPrC, myProg Set myProg = GetObject("winmgmts:") Set myPrC = myProg.ExecQuery("SELECT * FROM Win32_Process") For Each X In myPrC Debug.Print X.Name If X.Name = "AcroRd32.exe" Then X.Terminate End If
Sub test() Dim myPrC, myProg Set myProg = GetObject("winmgmts:") Set myPrC = myProg.ExecQuery("SELECT * FROM Win32_Process") For Each X In myPrC Debug.Print X.Name If X.Name = "AcroRd32.exe" Then X.Terminate End If