Компьютерный форум OSzone.net  

Компьютерный форум OSzone.net (http://forum.oszone.net/index.php)
-   Скриптовые языки администрирования Windows (http://forum.oszone.net/forumdisplay.php?f=102)
-   -   [решено] Удаление папки с указанием относительного пути (http://forum.oszone.net/showthread.php?t=345446)

BKPB 05-06-2020 20:45 2924114

Удаление папки с указанием относительного пути
 
Нужно удалить папку System Tools которая находится в C:\Users\Администратор ПК\AppData\Roaming\Microsoft\Windows\Start Menu\Programs.
Но с указанием относительного пути %APPDATA%\Microsoft\Windows\Start Menu\Programs\System Tools

megaloman 05-06-2020 23:44 2924134

Код:

DelFold = "Microsoft\Windows\Start Menu\Programs\System Tools"
EnvFolder = "%AppData%"

Set WSS = CreateObject("WScript.Shell")
Set FSO = CreateObject("Scripting.FileSystemObject")

DelPath = WSS.ExpandEnvironmentStrings(EnvFolder) + "\" + DelFold
If FSO.FolderExists(DelPath) Then Rez = FSO.DeleteFolder(DelPath, True)


BKPB 05-06-2020 23:49 2924135

megaloman, Огромное спасибо.

Iska 06-06-2020 05:01 2924140

Чуть глы́́бже:
Код:

Option Explicit

Dim objFolderPrograms
Dim strFolder

With WScript.CreateObject("Scripting.FileSystemObject")
        Set objFolderPrograms = WScript.CreateObject("Shell.Application").NameSpace("shell:Programs")
       
        If Not objFolderPrograms Is Nothing Then
                strFolder = .BuildPath(objFolderPrograms.self.Path, "System Tools")
               
                If .FolderExists(strFolder) Then
                        .DeleteFolder strFolder, True
                Else
                        WScript.Echo "Can't find folder [" & strFolder & "]."
                        WScript.Quit 2
                End If
        Else
                WScript.Echo "Can't determine explorer alias [shell:Programs]."
                WScript.Quit 1
        End If
       
        Set objFolderPrograms = Nothing
End With

WScript.Quit 0


Iska 06-06-2020 15:19 2924191

Цитата:

Цитата megaloman
Then Rez = FSO.DeleteFolder(DelPath, True) »

megaloman, метод .DeleteFolder() не возвращает результата своей работы (функция типа void).


Время: 21:56.

Время: 21:56.
© OSzone.net 2001-