Доброго времени суток, дорогие посетители! Немногим раннее была опубликована статья о том, как защитить свой программный код в 1С. А сегодня хочу поделиться с вами небольшим скриптом на VBScript, который поможет вам в автоматизации процесса установки 1С:Предприятия 8. Итак, давайте начнем!

Необходимость этого скрипта была продиктована тем, что после установки 1С:Предприятие 8.2 в серверном варианте, нужно было прописать всем пользователям Active Directory путь к базе. Список баз в 1С:Предприятие 8.2 храниться в папке %AppData%\1C\1CEStart\ в файле ibases.v8i. Поэтому, чтобы не заходить под каждым пользователем и не прописывать путь к базе было принято решение написать следующий VBScript скрипт:

On Error Resume Next

Const ADS_SCOPE_SUBTREE = 2

Set FSO = CreateObject("Scripting.FileSystemObject")

Set objConnection = CreateObject("ADODB.Connection")
Set objCommand = CreateObject("ADODB.Command")
objConnection.Provider = "ADsDSOObject"
objConnection.Open "Active Directory Provider"
Set objCommand.ActiveConnection = objConnection

objCommand.Properties("Page Size") = 1000
objCommand.Properties("Searchscope") = ADS_SCOPE_SUBTREE
objCommandProperties("Sort On") = "Name"

objCommand.CommandText = _
"SELECT Name FROM 'LDAP://dc=yourdomain,dc=com' WHERE objectCategory='user'"
Set objRecordSet = objCommand.Execute

objRecordSet.MoveFirst
Do Until objRecordSet.EOF
'Создаём в папку 1CEStart в папке пользователя %AppData%
FSO.CreateFolder "C:Users" & objRecordSet.Fields("Name").Value & "AppDataRoaming1C1CEStart"

'Копируем файл со списком баз ibases.V8i, в созданную папку 1CEStart
FSO.CopyFile "C:UsersАдминистраторDesktopibases.V8i", "C:Users" &
objRecordSet.Fields("Name").Value & "AppDataRoaming1C1CEStart", 1
objRecordSet.MoveNext
Loop

Чтобы воспользоваться скриптом в Ваших условиях скопируйте его, откройте блокнот и вставьте, измените путь к файлу ibases.V8i, укажите Ваш домен вместо «yourdomain» и его расширение, если у вас «com», то оставьте так. Сохраните файл с расширением .vbs.

P.S.

После добавления файлов со списком баз все пользователи Windows работали нормально, кроме одного. У этого пользователя после запуска 1С:Предприятие 8.2 вываливалась ошибка: Ошибка формата потока…

Решение этой проблемы не составило труда, нужно было:

  • Зайти под этим пользователем в Windows
  • Запустить 1С:Предприятие 8.2, откроется список баз
  • Удалить из списка баз путь к базе (очищаются временные файлы)
  • Добавить путь к базе в список заново


Этот блог читают уже более 3000 человек - читай и ТЫ!

2 ответы
  1. Nina говорит:

    My partner and I absolutely love your blog and find many of your post’s to be precisely what I’m looking for.

    Do you offer guest writers to write content in your
    case? I wouldn’t mind publishing a post or elaborating on a
    number of the subjects you write concerning here. Again, awesome website!

    Ответить

Ответить

Хотите присоединиться к обсуждению?
Не стесняйтесь вносить свой вклад!

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *