Имя пользователя:
Пароль:
 

Показать сообщение отдельно

Ветеран


Сообщения: 27449
Благодарности: 8088

Профиль | Отправить PM | Цитировать


Roman_Ko, потому и логон-скрипт, что там ничего допиливать не нужно. А в этом случае как? Нужно:
  1. разрешить отложенное исполнение переменных окружения;
  2. запросить раздел реестра HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\ProfileList и разобрать полученное в цикле;
  3. для каждого полученного пути загрузить куст и посмотреть на параметр Desktop аналога HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\User Shell Folders загруженного куста;
  4. не забыть выгрузить куст.
Плюс ко всему, не забываем, что за машиной кто-то уже сидит, и его куст уже подгружен в HKU — и это надо учесть.

И это — минимум. Теоретически это можно уместить в одну очень длинную строку, но заморитесь играться с кавычками, операторными скобками и прочей радостью пакетных файлов. И всё это вместо банального:
Код: Выделить весь код
Option Explicit

Dim strFileName
Dim strFullFileName


strFileName = "file.exe"

With WScript.CreateObject("Scripting.FileSystemObject")
	strFullFileName = .BuildPath(WScript.CreateObject("WScript.Shell").SpecialFolders("Desktop"), strFileName)
	
	If .FileExists(strFullFileName) Then
		.DeleteFile strFullFileName, True
	End If
End With

WScript.Quit 0
Цитата Roman_Ko:
Вопрос решён благодаря наводящим вопросам от Iska
Вот рабочий вариант »
Не решён. Профили могут быть расположены не в %HomeDrive%, не в Users, вообще на разных разделах, папка Рабочего стола именоваться не Desktop, может лежать вовне папки профиля пользователя.
Это сообщение посчитали полезным следующие участники:

Отправлено: 18:16, 22-03-2017 | #11