1С | Ошибка при получении характеристик принтера

1) Метод основан на изменении прав сетевого принтера на сервере

Если принтер сетевой, на севере произведена его установка и он расшарен в сеть откуда Вы к нему стучитесь, то давайте права на принтер на сервере и ошибка уйдет.

2) Метод основан на изменении прав splwow64.exe.

1С недостаточно прав для работы с принтерами (часто ошибка встречается с сетевыми принтерами).

Буду излагать мысли кратко и по существу.

Суть решения: изменить владельца на Админа, группе ВСЕ ПРИЛОЖЕНИЯ добавить права на изменения, затем владельца вернуть на исходного (TrustedInstaller).

Ниже по тексту текст 2-х скриптов, которые выполняют данные задачи

1) Устанавливает нужные права | *Упаковать в .bat

@echo off :: Переключение кодировки на UTF-8 chcp 65001 >nul :: Проверка запуска от имени администратора net session >nul 2>&1 if errorlevel 1 ( echo Запустите этот скрипт от имени администратора. pause exit /b ) :: Установка пути к файлу splwow64.exe (находится в корне windows) set filepath=%SystemRoot%\splwow64.exe :: Проверка на наличие файла if not exist %filepath% ( echo Файл %filepath% не найден. pause exit /b ) :: 1. Смена владельца файла на "Администраторы" takeown /F %filepath% /A if errorlevel 1 ( echo Ошибка при смене владельца файла. pause exit /b ) echo Владелец файла %filepath% изменен на Администраторы. :: 2. Назначение прав "Изменение" для группы "ВСЕ ПАКЕТЫ ПРИЛОЖЕНИЙ" (используем SID S-1-15-2-1) icacls %filepath% /user *S-1-15-2-1:M if errorlevel 1 ( echo Ошибка при предоставлении прав для "ВСЕ ПАКЕТЫ ПРИЛОЖЕНИЙ". pause exit /b ) echo Права "Изменение" предоставлены для "ВСЕ ПАКЕТЫ ПРИЛОЖЕНИЙ". echo Операция успешно выполнена. pause

2) Возвращает исходные права splwow64.exe | *Упаковать в .bat

@echo off :: Переключение кодировки на UTF-8 chcp 65001 >nul :: Проверка запуска от имени администратора net session >nul 2>&1 if errorlevel 1 ( echo Запустите этот скрипт от имени администратора. pause exit /b ) :: Установка пути к файлу set filepath=%SystemRoot%\splwow64.exe :: Проверка на наличие файла if not exist "%filepath%" ( echo Файл %filepath% не найден. pause exit /b ) :: Смена владельца файла takeown /F "%filepath%" /A if errorlevel 1 ( echo Ошибка смены владельца. pause exit /b ) :: Назначение владельца TrustedInstaller icacls "%filepath%" /setowner "NT SERVICE\TrustedInstaller" if errorlevel 1 ( echo Ошибка при назначении владельца TrustedInstaller. pause exit /b ) echo Владелец файла %filepath% изменен на TrustedInstaller. pause
11
Начать дискуссию