Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  

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

Новый участник


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

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


Цитата Iska:
Stgean, Вы меня не поняли. Приложения, устанавливаемые в режиме «на пользователя», должны хранить свои постоянные и временные данные (в том числе и исполняемые файлы) не в корне %UserProfile%/AppData, а на уровень ниже. У нас есть каталог %UserProfile%\AppData, в котором находятся каталоги:
Roaming (бывший каталог Application Data из предыдущих версий ОС, нынче в профиле вместо данного каталога имеется связь (junction) Application Data, указывающая на каталог %UserProfile%\AppData\Roaming), переменная окружения, указывающая на данный каталог — %APPDATA%;
Local (бывший каталог Local Settings из предыдущих версий ОС, нынче в профиле вместо данного каталога имеется связь (junction) Local Settings, указывающая на каталог %UserProfile%\AppData\Local), переменная окружения, указывающая на данный каталог — %LOCALAPPDATA%;
LocalLow — нововведение новых версий ОС, что это такое и для чего нужно — можно почитать по ссылке ниже, нас он в данном случае не интересует.
Исполняемые файлы приложений, устанавливаемых в режиме «на пользователя», как правило, хранятся либо в каталоге %UserProfile%\AppData\Roaming (и перемещаются вместе с профилем пользователя по машинам [в случае использования перемещаемого доменного профиля]), либо в каталоге %UserProfile%\AppData\Local (и не «гуляют» вослед пользователю вместе с его профилем по машинам) в виде %UserProfile%\AppData\Roaming|Local\Название компании\Название приложения. Но никак не в корне каталога %UserProfile%\AppData. »
Видимо вы тоже меня не совсем понимаете))) На обычных компьютерах программа устанавливается в C:\1, тут проблем никаких не возникает, а вот на терминальном сервере уже немного посложнее. Хоть она и ставиться в C:\1, то запускать ее несколько пользователей с одного ярлыка не могут, программа выдает ошибку что файл lock уже якобы занят. Поэтому и пришла мысль положить каждому пользователю кто работает с этой программой в UserProfile\AppData\1. Место конечно немало занимается, но другого решения этой проблемы я не нашел.

В итоге объединил весь код с которым мне помогли и на удивление все работает.

Код: Выделить весь код
BoxIn = "\\192.168.0.21\32$\2"
BoxOut1 = "C:\1"
BoxOutTerm = CreateObject("WScript.Shell").ExpandEnvironmentStrings("%UserProfile%") + "\AppData" + "\1"
Flag1 = BoxOut1 + "\23.txt"
FlagTerm = BoxOutTerm + "\23.txt"
'*************************************************
With CreateObject("Scripting.FileSystemObject")
    If Not .FolderExists(BoxOut1) Then
    WScript.Quit 2
        End If
If Not .FolderExists(BoxOutTerm) Then
    WScript.Quit 2
        End If
    
If .FileExists(Flag1) Then
        End If
    .CopyFolder BoxIn, BoxOut1, True

If .FileExists(FlagTerm) Then
        End If
    .CopyFolder BoxIn, BoxOutTerm, True
        End With

Отправлено: 06:03, 24-04-2019 | #10