а если офис уже установлен? Да и имена пользователей на exchange тоже ясен перец не одинаковы так что этот метод наврядли подходит
» Автоматизация администрирования
придется переставить. использовать %username%
Необходимо для всех юзеров включить выполнение logoff скрипта. Домен под 2-й Самбой (NT 4), т.е. Active Directory нет и доменное Group Policy не катит, ручками у каждого юзера прописывать через gpedit.msc тоже как-то не хочется. Где и что прописать в registry? Компы в сети - 2000 и XP.
Помогите решить элементарную проблему, на которую, я что-то не могу найти ответ...
Нужно в VBS скрипте получить путь откуда этот скрипт был запущен (желательно с возможностью получения UNC пути, если используется)
Нужно в VBS скрипте получить путь откуда этот скрипт был запущен (желательно с возможностью получения UNC пути, если используется)
SVOI_CHUVAC
есть док описывающий процесс создания и использования PRF(Outlook profile file) файла.
Деплоить у меня сначала была мысль через логон скрипт - при отсутствие профилей Outlook записывал в реестр FirstRun и ImportPRF. После чего при запуске Outlook создается профиль настроенный на Exchange Server.
Сейчас у меня есть доменный дефолтный профиль в котором прописаны эти параметры. Соответственно когда пользователи логинятся на другие компы они получают настроенный Outlook.
Добавлено:
WildCat
а параметр logon script в smb.conf?
Добавлено:
pazdak
WScript.Echo WScript.ScriptFullName
есть док описывающий процесс создания и использования PRF(Outlook profile file) файла.
Деплоить у меня сначала была мысль через логон скрипт - при отсутствие профилей Outlook записывал в реестр FirstRun и ImportPRF. После чего при запуске Outlook создается профиль настроенный на Exchange Server.
Сейчас у меня есть доменный дефолтный профиль в котором прописаны эти параметры. Соответственно когда пользователи логинятся на другие компы они получают настроенный Outlook.
Добавлено:
WildCat
а параметр logon script в smb.conf?
Добавлено:
pazdak
WScript.Echo WScript.ScriptFullName
urel
не logon, а logoff !
logon скрипты и так нормально выполняются.
не logon, а logoff !
logon скрипты и так нормально выполняются.
WildCat
сорри не внимательно прочитал
с помощью gpedit.msc добавь логофф скрипт и посмотри что станет тут:
HKCU\Software\Policies\Microsoft\Windows\System\Scripts\Logoff
попробуй ручками создать, расскажешь - если работает
сорри не внимательно прочитал
с помощью gpedit.msc добавь логофф скрипт и посмотри что станет тут:
HKCU\Software\Policies\Microsoft\Windows\System\Scripts\Logoff
попробуй ручками создать, расскажешь - если работает
pazdak
Код: WScript.Echo WScript.ScriptFullName
Код: WScript.Echo WScript.ScriptFullName
urel
Спасибо за наводку.
Мозги вскипели, что думать вообще не мог.
Код: Function GetPath
Dim path
path = WScript.ScriptFullName ' Script filename
GetPath = Left(path, InStrRev(path, "\"))
End Function
Path = GetPath ' откуда запущен скрипт
WScript.Echo Path
Спасибо за наводку.
Мозги вскипели, что думать вообще не мог.
Код: Function GetPath
Dim path
path = WScript.ScriptFullName ' Script filename
GetPath = Left(path, InStrRev(path, "\"))
End Function
Path = GetPath ' откуда запущен скрипт
WScript.Echo Path
pazdak
Мне кажеться что правильнее было бы сделать это в стартапскрипте компа, что бы он пробежался по HK_USERS и проставил пермишены. чем в скриптах употреблять имя админа =)
Мне кажеться что правильнее было бы сделать это в стартапскрипте компа, что бы он пробежался по HK_USERS и проставил пермишены. чем в скриптах употреблять имя админа =)
urel
Это то наверное верно, но только вот разрешения должны проставиться отдельным пользователям на компе (не всем), а как найти нужного пользователя до его логона мне не понятно?...
Цитата:
Можно расшифровать, если можно с примером, как можно пробежать по HK_Users ???
И определить для какого пользователя та или иная ветка?
Это то наверное верно, но только вот разрешения должны проставиться отдельным пользователям на компе (не всем), а как найти нужного пользователя до его логона мне не понятно?...
Цитата:
что бы он пробежался по HK_USERS и проставил пермишены. чем в скриптах употреблять имя админа
Можно расшифровать, если можно с примером, как можно пробежать по HK_Users ???
И определить для какого пользователя та или иная ветка?
Если будет ответ в виде скрипта, то буду очень благодарен. А вообще интересуют мысли и предложения какие функции и операции использовать.
Цитата:
Цитата:
Задача
У меня есть папка, в которой содержатся subfolders, в них в свою очередь еще subfolders.
Мне нужно всю эту структуру перенести с помощью скрипта в другую папку.
С помощью какого метода сделать обход по папкам? Рекурсия? Или с помощью "циклов в цикле"? Ваши предложения!
Sk1f
Как вариант:
Код: dim filesys, folder
set filesys = createobject("scripting.fileSystemObject")
set folder = filesys.GetFolder("C:\My_Folder\")
folder.Move("D:\")
Как вариант:
Код: dim filesys, folder
set filesys = createobject("scripting.fileSystemObject")
set folder = filesys.GetFolder("C:\My_Folder\")
folder.Move("D:\")
Sk1f
robocopy.exe \\srvsource\dirsource\subdirsource \\srvdest\dirdest\subdirdest /SEC /MOVE /Z /E
robocopy.exe \\srvsource\dirsource\subdirsource \\srvdest\dirdest\subdirdest /SEC /MOVE /Z /E
pazdak
не - фигню сказал, там только: all actively loaded user profiles. те при стартапе пусто...
продолжая идею хочу предложить воспользоваться утилитой regini. При стартапе пробегать по Documents and Settings выбирая нужные логины, и для них далшать следующее:
Цитата:
где reg.ini
Цитата:
Добавлено:
хттп://ens-lyon.fr/Bibli/TSE/Textes/regini.doc
Добавлено:
Sk1f
из Tech Center...
доработать напильником:
Цитата:
не - фигню сказал, там только: all actively loaded user profiles. те при стартапе пусто...
продолжая идею хочу предложить воспользоваться утилитой regini. При стартапе пробегать по Documents and Settings выбирая нужные логины, и для них далшать следующее:
Цитата:
regini -h "C:\Documents and Settings\tmp\ntuser.dat" hkey_current_user "<somewhere>\reg.ini"
где reg.ini
Цитата:
hkey_current_user\software\Microsoft\Windows\CurrentVersion
Policies [1 5 7 17]
Добавлено:
хттп://ens-lyon.fr/Bibli/TSE/Textes/regini.doc
Добавлено:
Sk1f
из Tech Center...
доработать напильником:
Цитата:
Set FSO = CreateObject("Scripting.FileSystemObject")
ShowSubfolders FSO.GetFolder("C:\Scripts")
Sub ShowSubFolders(Folder)
For Each Subfolder in Folder.SubFolders
Wscript.Echo Subfolder.Path
ShowSubFolders Subfolder
Next
End Sub
Помогите тразобраться.
Есть файлы типа mm55555_cc_55555.zip как копировать имя файла *.zip - в .Subject письма ?
причем имя *.zip может быть разное.
Set objFSO = CreateObject("Scripting.FileSystemObject")
sFileName="d:\readme.txt"
Set File1 = objFSO.OpenTextFile(sFileName, 1)
str = File1.ReadAll
File1.Close
sHema="http://schemas.microsoft.com/cdo/configuration/"
Set msg = CreateObject("CDO.Message")
with msg
.From = "master@klv.akbk.ru"
.To = "abs_upd@krd.akbk.ru"
.Subject = str2
.Textbody = str
.Configuration.Fields.Item(sHema&"sendusing") = 2
.Configuration.Fields.Item(sHema&"smtpserver") = "mail.klv.akbk.ru"
.Configuration.Fields.Item(sHema&"smtpserverport") = "25"
.Configuration.Fields.Update
end with
msg.Send
Set msg = Nothing
Есть файлы типа mm55555_cc_55555.zip как копировать имя файла *.zip - в .Subject письма ?
причем имя *.zip может быть разное.
Set objFSO = CreateObject("Scripting.FileSystemObject")
sFileName="d:\readme.txt"
Set File1 = objFSO.OpenTextFile(sFileName, 1)
str = File1.ReadAll
File1.Close
sHema="http://schemas.microsoft.com/cdo/configuration/"
Set msg = CreateObject("CDO.Message")
with msg
.From = "master@klv.akbk.ru"
.To = "abs_upd@krd.akbk.ru"
.Subject = str2
.Textbody = str
.Configuration.Fields.Item(sHema&"sendusing") = 2
.Configuration.Fields.Item(sHema&"smtpserver") = "mail.klv.akbk.ru"
.Configuration.Fields.Item(sHema&"smtpserverport") = "25"
.Configuration.Fields.Update
end with
msg.Send
Set msg = Nothing
xameleon1
Перебрать все файлы в директории?
Перебрать все файлы в директории?
Нужно узнать SID юзера, в чьем сеансе запускаю батник. Проблема в том, что батник запускается от имени SYSTEM. SID нужен, чтобы добраться до пользовательской ветки реестра. Подскажите способы решения, пожалуйста.
Или киньте ссылку на пост, если уже обсуждалось подобное.
Или киньте ссылку на пост, если уже обсуждалось подобное.
Цитата:
Перебрать все файлы в директории?
Да !
Нужен любой работающий вариант.
Помогите кто может.
Имеется скрипт по удалению пустых папок, как реализовать возможность исключать некоторые пустые папки из списка удаляемых ?
Код: set _tmp1_=_list_1.tmp
set _tmp2_=_list_2.tmp
dir "c:\1" /b/s /ad /on > %_tmp1_%
sort /r < %_tmp1_% > %_tmp2_%
for /f "delims=/" %%d in (%_tmp2_%) do rmdir "%%d" 2> nul
del /q %_tmp1_%
del /q %_tmp2_%
Имеется скрипт по удалению пустых папок, как реализовать возможность исключать некоторые пустые папки из списка удаляемых ?
Код: set _tmp1_=_list_1.tmp
set _tmp2_=_list_2.tmp
dir "c:\1" /b/s /ad /on > %_tmp1_%
sort /r < %_tmp1_% > %_tmp2_%
for /f "delims=/" %%d in (%_tmp2_%) do rmdir "%%d" 2> nul
del /q %_tmp1_%
del /q %_tmp2_%
Romero_Ekb
если он запускается в контексте пользователя а дельше выполняется с привелегиями системы, то в момент запуска и передать имя/сид
xameleon1
1й любой работающый вариант:
Цитата:
Добавлено:
inetimon
а если на VBS?
если он запускается в контексте пользователя а дельше выполняется с привелегиями системы, то в момент запуска и передать имя/сид
xameleon1
1й любой работающый вариант:
Цитата:
Set objFSO = CreateObject("Scripting.FileSystemObject")
Set objFolder = objFSO.GetFolder("C:\")
Set colFiles = objFolder.Files
For Each File in colFiles
Wscript.Echo File.Name
Next
Добавлено:
inetimon
а если на VBS?
Я в VBS как собака, когда смотрю все понимаю а сам написать нечего не могу. Сойдет любой вариант
inetimon
со списком директорий которые не стоит удалятьнужно смотреть - или тубо забить в масив в коде или отдельный список создать и читать его
Код: Set FSO = CreateObject("Scripting.FileSystemObject")
temp = RmEmptySubFolders (FSO.GetFolder("C:\1"))
WScript.Quit
Function RmEmptySubFolders(Folder)
HasSubFoldersFiles=False
For Each Subfolder in Folder.SubFolders
HasSubFolderFiles = RmEmptySubFolders(Subfolder)
If HasSubFolderFiles Then HasSubFoldersFiles=True
If Not HasSubFolderFiles Then
'WScript.Echo Subfolder.Path, " - delete - ", Subfolder.size
' Тут нужно делать проверку на то нужна ли эта пака
' также если она необходима нужно устанавливать HasSubFoldersFiles
' в true, иначе папка может быть удалена если для папки на уровень
' выше не окажеться файлов в подпапках
Subfolder.Delete
End If
Next
If Not HasSubFoldersFiles Then HasFolderFiles = Folder.Files.Count > 0 ' xnj,s
RmEmptySubFolders = HasSubFoldersFiles Or HasFolderFiles
End Function
со списком директорий которые не стоит удалятьнужно смотреть - или тубо забить в масив в коде или отдельный список создать и читать его
Код: Set FSO = CreateObject("Scripting.FileSystemObject")
temp = RmEmptySubFolders (FSO.GetFolder("C:\1"))
WScript.Quit
Function RmEmptySubFolders(Folder)
HasSubFoldersFiles=False
For Each Subfolder in Folder.SubFolders
HasSubFolderFiles = RmEmptySubFolders(Subfolder)
If HasSubFolderFiles Then HasSubFoldersFiles=True
If Not HasSubFolderFiles Then
'WScript.Echo Subfolder.Path, " - delete - ", Subfolder.size
' Тут нужно делать проверку на то нужна ли эта пака
' также если она необходима нужно устанавливать HasSubFoldersFiles
' в true, иначе папка может быть удалена если для папки на уровень
' выше не окажеться файлов в подпапках
Subfolder.Delete
End If
Next
If Not HasSubFoldersFiles Then HasFolderFiles = Folder.Files.Count > 0 ' xnj,s
RmEmptySubFolders = HasSubFoldersFiles Or HasFolderFiles
End Function
Вопрос:
как имя файла *.zip засунуть в тему (.Subject) письма ?
файл *.zip находится в одной директории (d:\1\) с этим скриптом.
Set objFSO = CreateObject("Scripting.FileSystemObject")
sFileName="d:\1\readme.txt"
Set File1 = objFSO.OpenTextFile(sFileName, 1)
str = File1.ReadAll
File1.Close
sHema="http://schemas.microsoft.com/cdo/configuration/"
Set msg = CreateObject("CDO.Message")
with msg
.From = "vasya@mail.klv.akbk.ru"
.To = "fedya@mail.ru"
.Subject = "Изменение"
.Textbody = str
.Configuration.Fields.Item(sHema&"sendusing") = 2
.Configuration.Fields.Item(sHema&"smtpserver") = "mail.klv.akbk.ru"
.Configuration.Fields.Item(sHema&"smtpserverport") = "25"
.Configuration.Fields.Update
end with
msg.Send
Set msg = Nothing
как имя файла *.zip засунуть в тему (.Subject) письма ?
файл *.zip находится в одной директории (d:\1\) с этим скриптом.
Set objFSO = CreateObject("Scripting.FileSystemObject")
sFileName="d:\1\readme.txt"
Set File1 = objFSO.OpenTextFile(sFileName, 1)
str = File1.ReadAll
File1.Close
sHema="http://schemas.microsoft.com/cdo/configuration/"
Set msg = CreateObject("CDO.Message")
with msg
.From = "vasya@mail.klv.akbk.ru"
.To = "fedya@mail.ru"
.Subject = "Изменение"
.Textbody = str
.Configuration.Fields.Item(sHema&"sendusing") = 2
.Configuration.Fields.Item(sHema&"smtpserver") = "mail.klv.akbk.ru"
.Configuration.Fields.Item(sHema&"smtpserverport") = "25"
.Configuration.Fields.Update
end with
msg.Send
Set msg = Nothing
xameleon1
собери в строчку
Цитата:
собери в строчку
Цитата:
File.Nameи вставляй в сабж
urel
Нет, он запускается службой, которая запущена от имени системы. Если б все было так просто, я б не спрашивал.
Нет, он запускается службой, которая запущена от имени системы. Если б все было так просто, я б не спрашивал.
Цитата:
xameleon1
собери в строчку
Цитата:File.Name
и вставляй в сабж
Напиши плиз как это сделать - для тупого.
Romero_Ekb
ну вот а говорил
Цитата:
перебор сесий, и вытягивание логина сида из интерактивных:
Код: Set objWMIService=GetObject("winmgmts:{impersonationLevel=impersonate}!\\.\root\cimv2")
Set LoggedOn =objWMIService.ExecQuery ("Select * from Win32_LoggedOnUser")
For Each Session In LoggedOn
Set LogonSession = GetObject("winmgmts:{impersonationLevel=impersonate}!"& Session.dependent)
If CDbl(LogonSession.properties_.item("LogonType")) = 2 Then
' сесия интерактивная
Set Account = GetObject("winmgmts:{impersonationLevel=impersonate}!"& Session.antecedent)
sid= Account.properties_.item("SID")
userLogin= Account.properties_.item("Caption")
WScript.Echo userLogin & " -> " & sid
End If
Next
ну вот а говорил
Цитата:
Нужно узнать SID юзера, в чьем сеансе запускаю батник
перебор сесий, и вытягивание логина сида из интерактивных:
Код: Set objWMIService=GetObject("winmgmts:{impersonationLevel=impersonate}!\\.\root\cimv2")
Set LoggedOn =objWMIService.ExecQuery ("Select * from Win32_LoggedOnUser")
For Each Session In LoggedOn
Set LogonSession = GetObject("winmgmts:{impersonationLevel=impersonate}!"& Session.dependent)
If CDbl(LogonSession.properties_.item("LogonType")) = 2 Then
' сесия интерактивная
Set Account = GetObject("winmgmts:{impersonationLevel=impersonate}!"& Session.antecedent)
sid= Account.properties_.item("SID")
userLogin= Account.properties_.item("Caption")
WScript.Echo userLogin & " -> " & sid
End If
Next
urel
Огромное спасибо!
Огромное спасибо!
Задача: Нужно написать log off скрипт который бы копировал, а еще лучше архивировал информацию из папки мои документы пользователей на сервер без лишних файлов типа фильмы фото музыка и тд и тп, есть такой простой вариант использования bat файла
rar a -r -dh -x*.mp3 -x*.fcd -x*.avi -x*.exe -x*.jpg -x*.tif -p%PASSWD% %DIRNAME%\%FILENAME%_new %SOURCEDIR%
только вот не знаю как сюда в качестве источника архивации прописать папку мои документы так что бы скрипт правильно определял ее местонахождение на каждом компьютере, %user profile% не прокатывает так как пользователи могут самостоятельно в свойствах папки Мои документы изменить ее месторасположениевне профиля, если с помощью cmd не решить эту задачу может кто-нибуть другой вариант решения этой задачи подскажет?
rar a -r -dh -x*.mp3 -x*.fcd -x*.avi -x*.exe -x*.jpg -x*.tif -p%PASSWD% %DIRNAME%\%FILENAME%_new %SOURCEDIR%
только вот не знаю как сюда в качестве источника архивации прописать папку мои документы так что бы скрипт правильно определял ее местонахождение на каждом компьютере, %user profile% не прокатывает так как пользователи могут самостоятельно в свойствах папки Мои документы изменить ее месторасположениевне профиля, если с помощью cmd не решить эту задачу может кто-нибуть другой вариант решения этой задачи подскажет?
Страницы: 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667
Предыдущая тема: Зеркалирование дисков Win2000
Форум Ru-Board.club — поднят 15-09-2016 числа. Цель - сохранить наследие старого Ru-Board, истории становления российского интернета. Сделано для людей.