Перейти из форума на сайт.

НовостиФайловые архивы
ПоискАктивные темыТоп лист
ПравилаКто в on-line?
Вход Забыли пароль? Первый раз на этом сайте? Регистрация
Компьютерный форум Ru.Board » Компьютеры » В помощь системному администратору » Автоматизация администрирования. Часть 2

Модерирует : lynx, Crash_Master, dg, emx, ShriEkeR

ShriEkeR (23-05-2011 23:06): Автоматизация администрирования. Часть 3  Версия для печати • ПодписатьсяДобавить в закладки
Страницы: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114

   

FreemanRU



Silver Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
 

                               Коллеги-администраторы  ....  


Часть 2я

Часть 1
Думаю каждый из вас сталкивался с необходимостью выполнять некие несложные рутинные операции, на котороые уходит много драгоценного времени.
 Например, создать определенную структуру каталогов для каждого пользователя домена, изменить некие параметры в профилях всех или части пользователей, изменить полномочия/владельца однотипных файлов в разных каталогах т.д.  
Я, как сисадмин, тоже не раз был вынужден делать все это.  Руками делать это тоскливо и муторно, как вы понимаете. Должен заметить, что по неким "религиозным" убеждениям я всегда старался избегать любых отношений с бейсиком и его производными. Еще мой отец учил меня не иметь с ним никаких дел. Буквально. А теперь я учу своего сына тому же. Но, тем не менее, полностью избежать этого, по всей видимости, невозможно, тем более, что бейсик от M$ сейчас уже далеко не та "лапша", которой он был изначально, а современный структурированный язык, нашедший множество применений. Похоже, что для меня в очередной раз настала пора выучить еще что-то. Знаете, как курильщик много раз безуспешно пытается бросить курить, так и я не раз пытался подступиться к изучению VBScript, но пока никак не одолел. Лень, знаете ли. А инструмент в делах административных был бы весьма пользительный, должен заметить, для быстрого написания всякого рода скриптов.

 
    Внимание   !  !  !  

  • Поскольку данный топ весьма не мал, не забывайте  использовать "версию для печати" для более удобного поиска по теме. А также МЕГА ПОИСКОВИК от NEPa

  • Дабы не раздувать топ,  примеры своих  скриптов  заключаем в тег  "more"

Консольные команды. Командный интерпретатор

Windows Script Host (WSH) &  VBScript  &  JScript


Вышеперечисленные буки можно  взять здесь

    ТOOLS :
  1. Autoit+readme.rus
  2. Scriptologic
  3. AutoMate
  4. KIXTART
  5. nnCron-Планировщик с поддержкой скриптового языка --  РЕКОМЕНДУЮ
  6. WGET, GREP, GETMAIL, BLAT for Windows замечательные консольные утилиты
  7. 4dos/4nt -- отличная замена стандартного коммандного интерпретатора  
  8. JudoScript - java подобный скриптовый язык с исходниками
  9. VBS2EXE - утилита для компиляции vbs и js скриптов в exe выдранная из пакета PrimalScript

    Дружественные темы :
  1. Автоматическая (unattended) установка Windows
  2. Интересные команды при работе с Linux
  3. Отличный сайт по скриптингу, и не только
  4. Использование KIX
  5. Использование WMI
  6. Программирование "удобняшек" на VBScript

 
Подробнее...
Создается по материалам данного топа

 
Надеюсь данная тема будет полезна для Вас.
 Предложения по реформированию шапки принимаю в ПМ Jovanotti

 

Всего записей: 3794 | Зарегистр. 16-07-2004 | Отправлено: 17:27 11-12-2006 | Исправлено: Smitis, 12:30 20-08-2008
gap5



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
1.Надо эмулировать однократное нажатие F10 для определенного приложения.  
Т.е. комп стартует, юзер автоматом логинится, вместо explorer.exe загружается нужная софтина, грузится она около 10 секунд, далее ей надо скормить нажатие F10. Как это лучше сделать?
 
2.Как проще всего мониторить наличие в запущенных приложениях определенного ехе'шника, а при его отсутствии запускать его снова?

Всего записей: 1033 | Зарегистр. 30-05-2006 | Отправлено: 19:22 27-08-2008
DarkStar2000



Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
YNY

Цитата:
на сколько я знаю если не менять политику паролей в домене, то длинна пароля должна быть не менее 8 знаков

Ну да, так и есть
я только не совсем понял к чему это замечание относится ?

Всего записей: 239 | Зарегистр. 05-03-2003 | Отправлено: 19:37 27-08-2008
abasov



Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
gap5

Цитата:
2.Как проще всего мониторить наличие в запущенных приложениях определенного ехе'шника, а при его отсутствии запускать его снова?

 
первым делом прочесть это: http://www.script-coding.info/WMI_ProcMon.html
 
если слегка переделать, то можно использовать:

Код:
Dim objWMI, objCollection, objInstance
Dim strComputer, strTemp, intErr, intProcID
Const strProcess = "PnAgent.exe"
strComputer = "DNS-имя или IP-адрес нужной станции"
intErr = 0
If Connection(strComputer) Then
    Set objWMI = GetObject("winmgmts:{impersonationLevel=impersonate}!\\" & strComputer & "\root\cimv2")
    Set objCollection = objWMI.ExecQuery("SELECT Name FROM Win32_Process WHERE Name='" & strProcess & "'")
    If objCollection.Count = 0 Then
        Set objInstance = GetObject("winmgmts:{impersonationLevel=impersonate}!\\" & _
            strComputer & "\root\cimv2:Win32_Process")
        intErr = objInstance.Create(strProcess, Null, Null, intProcID)
        If intErr = 0 Then
            WScript.Echo "Процесс на станции " & UCase(strComputer) & " запущен. Его ID: " & intProcID
        Else
            WScript.Echo "Ошибка запуска процесса на станции " & UCase(strComputer) & ". Код ошибки: " & intErr
            WScript.Quit
        End If
    Else
        WScript.Echo "Процесс на станции " & UCase(strComputer) & " уже запущен."
    End If
    On Error Resume Next
    Set objWMI = GetObject("winmgmts:{impersonationLevel=impersonate}!\\" & strComputer & "\root\cimv2")
    Set objCollection = objWMI.ExecNotificationQuery("SELECT * FROM __InstanceDeletionEvent " & _
        "WITHIN 1 WHERE TargetInstance ISA 'Win32_Process'")
    If Err.Number = 0 Then
        Do
            Set objItem = objCollection.NextEvent
            If Err.Number = 0 Then
                strTemp = objItem.TargetInstance.Name
                If StrComp(strTemp, strProcess, vbTextCompare) = 0 Then
                    Set objInstance = GetObject("winmgmts:{impersonationLevel=impersonate}!\\" & _
                        strComputer & "\root\cimv2:Win32_Process")
                    intErr = objInstance.Create(strProcess, Null, Null, intProcID)
                    'If intErr = 0 Then
                    '    WScript.Echo "Процесс на станции " & UCase(strComputer) & " перезапущен. Его ID: " & _
                    '        intProcID
                    'Else
                    '    WScript.Echo "Ошибка запуска процесса на станции " & UCase(strComputer) & _
                    '        ". Код ошибки: " & intErr
                    'End If
                End If
            Else
                WScript.Echo "Ошибка работы сценария для станциии " & UCase(strComputer) & vbNewLine & _
                    "Код ошибки: " & Err.Number & vbNewLine & Err.Description
                WScript.Quit
            End If
        Loop
    Else
        WScript.Echo "Ошибка работы сценария для станциии " & UCase(strComputer) & vbNewLine & _
            "Код ошибки: " & Err.Number & vbNewLine & Err.Description
        WScript.Quit
    End If
Else
    WScript.Echo "Станциия " & UCase(strComputer) & " не отвечает."
End If
 
Function Connection(strWS)
Dim objCollection, objItem
On Error Resume Next
Set objCollection = GetObject("winmgmts:{impersonationLevel=impersonate}"). _
    ExecQuery("SELECT * FROM Win32_PingStatus WHERE Address='" & strWS & "'")
For Each objItem In objCollection
    If IsNull(objItem.StatusCode) Or objItem.StatusCode <> 0 Then
        Connection = False
    Else
        Connection = True
    End If
Next
End Function

Всего записей: 345 | Зарегистр. 12-11-2002 | Отправлено: 14:08 28-08-2008 | Исправлено: abasov, 17:48 28-08-2008
yazzi

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Подскажите пожалуйста существует ли возможность удаленно получить список программного обеспечения, а так же удаленного удаления его же. только не через Win32_Product так как он видит не все установленное обеспечение. Список впринципе можно через реестр получить но как потом удалить удаленно вот вопрос .

Всего записей: 98 | Зарегистр. 14-08-2007 | Отправлено: 08:30 29-08-2008 | Исправлено: yazzi, 08:32 29-08-2008
Garik_Lugansk



Full Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
Подскажите пожалуйста, есть компьютерный клуб, 22 компьютера, и нужно разбрасывать новые игры. Через тотал командер нет докачки при обрыве, да и несовсем удобно, может есть уже давно специальная программа для разбрасывания файлов по сети?

Всего записей: 429 | Зарегистр. 18-05-2004 | Отправлено: 17:02 31-08-2008
YNY

Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

Цитата:
есть компьютерный клуб,  


Цитата:
 Через тотал командер нет докачки при обрыве,

Цитата:
есть компьютерный клуб,  

КАЧАЙ НА СЕРВАК а затем разливай по сети

Всего записей: 476 | Зарегистр. 18-05-2006 | Отправлено: 10:06 01-09-2008
booro

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Подскажите пожалуйста, как можно организовать удаление файлов определенного расширения (.avi) из папки каждые 4 дня (или при недостатке свободного места на диске). Стоит сервер видеонаблюдения, его софт не имеет такой возможности. Доступ к нему имею не постоянно, руками удалять конечно можно, но это как-то не эстетично)) Или киньте ссылку с подобными примерами. Заранее спасибо.

Всего записей: 17 | Зарегистр. 22-05-2008 | Отправлено: 14:20 01-09-2008
abasov



Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору

Цитата:
Подскажите пожалуйста, как можно организовать удаление файлов определенного расширения (.avi)

booro
 

Код:
Option Explicit
'err.raise 1, "Achtung!", "для запуска закоментировать строку генерации ошибки"
'1) Задать папки для поиска в массив aFolders, например "C:\","E:\"
'2) задать расширения файлов в массив aExtensions, например  "mp3","avi","wma"
'3) задать путь и файл для логирования LogFileName1 , например "d:\temp\i.txt"
'см. дальше по тексту...
 
 
'Сценарий сканирует указанные каталоги и удаляет в нем файлы с указанными расширениями
 
 
 Dim LogFileName1
 'dim NameFileOfMessage    
 dim TextOfMessage
 
Dim aFolders    'массив каталогов
Dim aExtensions    'массив расширений файлов
 
dim file1
dim FileOfMessage
 
'1) Задать папки для поиска в массив aFolders, например aFolders = Array("C:\","E:\")
aFolders = Array("D:\")
 
'2) задать расширения файлов в массив aExtensions, например  aExtensions = Array( "mp3","avi","wma")
aExtensions = Array(  "id","nsf")
 
Dim fso
 
 
'3) задать путь и файл для логирования LogFileName1 , например LogFileName1 = CStr("d:\temp\i.txt")
LogFileName1 = CStr("c:\Log_Delete_Incoming.txt")
 
'
'4) пункт убран
'
 
'5)текст сообщения, которое будет в файле в папке где был удалён файл
TextOfMessage = CStr("Администрация предупреждает: ")
 
 
Set fso = CreateObject("Scripting.FileSystemObject")
Set file1 = fso.OpenTextFile(LogFileName1,8,true)
 
Dim i
file1.WriteLine "----------- начало поиска --------------" & cstr(Date()) & "|" & cstr(Time())  
For i = 0 To UBound(aFolders)  
   If fso.FolderExists(aFolders(i)) Then
 on error resume next
 Err.Clear
 
     Dim folder
     Set folder = fso.GetFolder(aFolders(i))
     Dim file
     For Each file In folder.Files
   if Err then  
     file1.WriteLine "---> " & cstr(Date()) & "|" & cstr(Time()) &"!!! ->!Ошибка при доступе к папке!<- " &folder  
  exit for  
 End If
       If IsKnowExtensions(file) Then  
 
        Set FileOfMessage = fso.OpenTextFile(folder+"\"+file.name+".txt",8,true)
        FileOfMessage.WriteLine (TextOfMessage)
        FileOfMessage.WriteLine ("файл '"& file.name & "' изъят до выяснения обстоятельств...")
        FileOfMessage.close
        file.Delete True
       end if
   
 
     Next
     dim subFolder
     For Each subFolder In folder.SubFolders
  if Err then  
  exit for  
end if
       ScanSubFolder subFolder
     Next
 
 
   end if
Next
file1.WriteLine "----------- конец поиска --------------" & cstr(Date()) & "|" & cstr(Time())  
file1.close
 
 
Function IsKnowExtensions(file)
    Dim strExtensions
    strExtensions = fso.GetExtensionName(file.Path)
    Dim i
    For i = 0 To UBound(aExtensions) '- 1
        If ucase(strExtensions) = ucase(aExtensions(i)) Then
            'msgbox "!"
            file1.WriteLine (cstr(Date()) & "|" & cstr(Time()) &" был Удалён : " & file.Path  )  
 
            IsKnowExtensions = True
            Exit Function
        End If
    Next
    IsKnowExtensions = False
End Function
 
 
Sub ScanSubFolder(folder)
 
 Dim file
 on error resume next
 Err.Clear
 For Each file In folder.Files
    if Err then  
      file1.WriteLine "---> " & cstr(Date()) & "|" & cstr(Time()) &"!!! ->!Ошибка при доступе к папке!<- " &folder
 Err.Clear  
      exit sub
    end if    
    If IsKnowExtensions(file) Then  
 
      Set FileOfMessage = fso.OpenTextFile(folder+"\"+file.name+".txt",8,true)
      FileOfMessage.WriteLine (TextOfMessage)
      FileOfMessage.WriteLine ("файл '"& file.name & "' изъят до выяснения обстоятельств...")
      FileOfMessage.close
      file.Delete true
    end if
 Next
 Dim subFolder
 For Each subFolder In folder.SubFolders
   ScanSubFolder subFolder
 Next
End Sub

Всего записей: 345 | Зарегистр. 12-11-2002 | Отправлено: 14:42 01-09-2008
booro

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
abasov
Спасибо большое, но может это можно сделать как-то попроще? Например, через планировщик заданий?

Всего записей: 17 | Зарегистр. 22-05-2008 | Отправлено: 17:45 01-09-2008
RMR

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
booro
Создай батник  

Код:
@echo off
del "путь к папке\*.avi"

И запихни в планировшик.

Всего записей: 32 | Зарегистр. 23-11-2006 | Отправлено: 19:22 01-09-2008
booro

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
RMR
В той папке еще несколько папок, по номерам камер. Чего-то мне не догадаться, что надо еще добавить =)

Всего записей: 17 | Зарегистр. 22-05-2008 | Отправлено: 23:04 01-09-2008
NIKZZZZ



Gold Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Есть такая задача - нужно выполнять некую программу (например, bat файл) до запуска оболочки (Explorer), при этом дождаться ее окончания. Запуск ее в виде сервиса с помощью srvany.exe не позволяет дождаться окончания ее работы, RunOnceEx запускается после загрузки оболочки.

Всего записей: 5365 | Зарегистр. 08-02-2006 | Отправлено: 00:41 02-09-2008
abasov



Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
booro
через планировщик как раз и работает
 
Добавлено:
NIKZZZZ
http://www.microsoft.com/technet/scriptcenter/guide/sas_ser_unza.mspx

Код:
Const OWN_PROCESS = 16
Const NOT_INTERACTIVE = False
Const NORMAL_ERROR_CONTROL = 2
 
strComputer = "."
Set objWMIService = GetObject("winmgmts:" _
    & "{impersonationLevel=impersonate}!\\" & strComputer & "\root\cimv2")
Set objService = objWMIService.Get("Win32_BaseService")
 
errReturn = objService.Create("DbService" ,"Personnel Database" , _
    "c:\windows\system32\db.exe", OWN_PROCESS, NORMAL_ERROR_CONTROL,_
        "Manual", NOT_INTERACTIVE, "NT AUTHORITY\LocalService", ""  )

 
Еще стоит посмотреть:
FireDaemon
AppToService

Всего записей: 345 | Зарегистр. 12-11-2002 | Отправлено: 07:38 02-09-2008 | Исправлено: abasov, 08:50 02-09-2008
yazzi

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Подскажите что неправильно. Стоит задача удалить у всех пользователей ясю в невидимом режиме. Ася в удаляется с помощью следующей команды C:\WINDOWS\UNWISE.EXE /s  C:\PROGRA~1\ICQ\ICQ99B.LOG "ICQ Uninstall". Написал следущий код  

Код:
 
On Error Resume Next
Dim objSWbemLocator
Dim CompName
Dim UserName
Dim Pass
Dim objServices
Dim objClass
Dim Res
Set objSWbemLocator = CreateObject("WbemScripting.SWbemLocator")
CompName = "test-02" 'имя компьютера
UserName = "user01" 'имя пользователя
Pass = "" 'пароль пользователя
 
'Set objServices = objSWbemLocator.ConnectServer(".", "Root\CIMV2")
 
Set objServices = objSWbemLocator.ConnectServer(CompName, "root\CIMV2", UserName, Pass, Null, Null, 0)
If Err.Number <> 0 Then
    WScript.Echo Err.Number & ": " & Err.Description
    WScript.Quit
End If
Set objClass = objServices.Get("Win32_Process")
Res = objClass.Create("C:\WINDOWS\UNWISE.EXE /s  C:\PROGRA~1\ICQ\ICQ99B.LOG 'ICQ Uninstall' ", Null, Null, PID)
If Res <> 0 Then
    WScript.Echo "Код ошибки: " & Res
End If
 

Но он почему то не работает . Если вместо C:\WINDOWS\UNWISE.EXE /s  C:\PROGRA~1\ICQ\ICQ99B.LOG 'ICQ Uninstall' написать например с:\progra~1\winamp\winamp.exe то все нормально запускается винамп. Уже все мозги себе сломал может кто что подскажет?

Всего записей: 98 | Зарегистр. 14-08-2007 | Отправлено: 16:50 02-09-2008
YNY

Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

Цитата:
yazzi

а права то какие у юзверей?
 
Добавлено:

Цитата:
objClass.Create
на скоко помню: Подробнее..., попробуйслед-е варианты:
1)  
Set WshExec = WshShell.Exec()
или  
object.Run(strCommand, [intWindowStyle], [bWaitOnReturn])  
2)
Вместо "... 'ICQ Uninstall' ... "
попробуй  
"C:\WINDOWS\UNWISE.EXE /s  C:\PROGRA~1\ICQ\ICQ99B.LOG" & " ICQ Uninstall" & """"
 
Добавлено:
добавлено:

Цитата:
Set objServices = objSWbemLocator.ConnectServer(CompName, "root\CIMV2", UserName, Pass, Null, Null, 0)

нигде не нашел чтоб Win32_ProcessStartup принимал бы NULL
 
...run an application in a hidden window? Call the application from a script that uses the Win32_Process and Win32_ProcessStartup classes.Const HIDDEN_WINDOW = 12
 
strComputer = "."
Set objWMIService = GetObject("winmgmts:" & "{impersonationLevel=impersonate}!\\" _
    & strComputer & "\root\cimv2")
Set objStartup = objWMIService.Get("Win32_ProcessStartup")
Set objConfig = objStartup.SpawnInstance_
objConfig.ShowWindow = HIDDEN_WINDOW
Set objProcess = GetObject("winmgmts:root\cimv2:Win32_Process")
 
errReturn = objProcess.Create("Notepad.exe", null, objConfig, intProcessID)
 
 

Всего записей: 476 | Зарегистр. 18-05-2006 | Отправлено: 05:49 04-09-2008
ShafMAN

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Архиватором 7z разархивируются файлы.

Код:
wsh.Exec("C:\\1\\7z.exe e C:\\1\\*.7z");

Но почему то файлы разархивируются не в папку указанную в скрипте, а в папку откуда скрипт запускается. Почему?
Если запускать строку "C:\1\7z.exe e C:\1\*.7z" через выполнить, то файлы разархивируются куда надо.
 
Добавлено:
С ключём -o заработал

Код:
wsh.Exec("C:\\1\\7z.exe e C:\\1\\*.7z -oC:\\1\\");

Всего записей: 125 | Зарегистр. 09-01-2005 | Отправлено: 10:01 04-09-2008
yazzi

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
YNY Спасибо
Cделал следующим образом сначала сформировал строку ну а потом уже создал процесс

Код:
 
str="C:\WINDOWS\UNWISE.EXE /s  C:\PROGRA~1\ICQ\ICQ99B.LOG "&chr(34)&"ICQ Uninstall"&chr(34)
Res = objClass.Create(str, Null, Null, PID)
 

Теперь такой вопрос, если в имени существует пробел или русская раскладка то не работает. Никто не знает как это обойти или какую функцию нужно использовать чтобы сформировать короткое имя (Пример из "Program Files" должно получаться "Progra~1")

Всего записей: 98 | Зарегистр. 14-08-2007 | Отправлено: 15:50 04-09-2008 | Исправлено: yazzi, 15:54 04-09-2008
YNY

Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

Цитата:
yazzi

Ввообще-то если есть пробел, то либо весь путь, либо только эта часть берется в кавычки, если, по твоим словам, не работает с русским языком, то как тада оно по твоему устанавливалась в эту папку?
короткие имена мона в cmd dir посмотреть либо в Far
 
Добавлено:
если берешь часть в кавычки, то при тесте msgbox должен выдавать типа:
задаем
msgbox """я тут был установлен"""
получаем
 "я тут был установлен"
 
Добавлено:
а вообще, то короткие имена мона получить (dir /x):
startTocopyFrom ' -- откуда в phatName хотим получить копию для формирования 'котроткого пути
phatName="..."
length=6
SPN=mid(phatName, startTocopyFrom,length) & "~1"
 
Добавлено:
Очень не плохим помошником в написании скриптов, если ничего больше нет, является обычный Word, т.к., там есть и справка по VB и среда MSVisual Studio со справкой по JS и VB !
 
Добавлено:
и VBA редактор )

Всего записей: 476 | Зарегистр. 18-05-2006 | Отправлено: 07:16 05-09-2008
yazzi

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
YNY
Цитата:
а вообще, то короткие имена мона получить (dir /x)

Dir нормально получает но надо что бы в сценарии так получал
 

Цитата:
startTocopyFrom ' -- откуда в phatName хотим получить копию для формирования 'котроткого пути
phatName="..."
length=6
SPN=mid(phatName, startTocopyFrom,length) & "~1"
 
Это только для английских имен подойдет, а мне надо что бы функция все имена переделывала в короткие Например Русское имя "Программа" будет выглядеть следующим образом "4AB4~1"

Всего записей: 98 | Зарегистр. 14-08-2007 | Отправлено: 14:55 05-09-2008 | Исправлено: yazzi, 08:12 08-09-2008
Anton_Y



Full Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
уважаемые, подскажите можно ли с помощью WSH или както иначе открыть доступ к папке с опр. правами опр. пользователям?
 
Поясню, папка FOLDER, открыть доступ пользователям из DOMAIN\Users на модификацию, а DOMAIN\Admin полный доступ
 
p.s. net share открывает лишь полный доступ всем, cacls меняет лишь настройки безопасности файлов, но не настройки сетевого доступа.

Всего записей: 581 | Зарегистр. 04-09-2002 | Отправлено: 08:21 08-09-2008 | Исправлено: Anton_Y, 08:34 08-09-2008
   

Страницы: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114

Компьютерный форум Ru.Board » Компьютеры » В помощь системному администратору » Автоматизация администрирования. Часть 2
ShriEkeR (23-05-2011 23:06): Автоматизация администрирования. Часть 3


Реклама на форуме Ru.Board.

Powered by Ikonboard "v2.1.7b" © 2000 Ikonboard.com
Modified by Ru.B0ard
© Ru.B0ard 2000-2024

BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

Рейтинг.ru