Как запустить 1с вместо explorer

Обновлено: 06.07.2024

Не так давно один мой хороший знакомый попросил заблокировать на своих рабочих компьютерах все программы, кроме одной и это был не эксплорер :).

Попробавал заблокировать запуск всех программ кроме нужной через политики — но explorer по горячим клавишам все равно запускался, а ведь с его помощью можно много чего натворить при желании.

Попробовал заменить windows shell — поставил запуск той нужной программы вместо explorer.exe. Но выяснилось, что во-первых нужная программа работает в графическом режиме, и direct-x, похоже, не успевал инициализироваться и программа жаловалась на его отсутствие. Также, при выходе из программы, пользовательская сессия не заканчивалась.

Я все еще надеялся решить задачу подручными средствами.

Следующим этапом был бат файл с запуском нужной программы и logoff.exe после — для того, чтобы при выходе из программы сессия закрывалась. Все вроде бы как ничего — но во-первых, программа продолжала жаловаться на отсутствие директ икса (хотя потом запускалась), во-вторых, даже запустив батник в минимизированном состоянии, его окно было видно — можно его прервать, т.е. пользователь мог при желании поучаствовать в процессе и создать проблемы, что в общем-то недопустимо.

Попробовал вижауал бейсиковый скрипт — но для его запуска нужно запускать эксплорер со всеми вытекающими обстоятельствами (возможно можно как-то без эксплорера, но я не нашел как).

Так как простого решения я не нашел, решил быстренько написать простейший shell, который будет запускать нужную программу и по ее завершении завершать сессию.

В качестве орудия написания скачал последнюю с++ экспресс вижуал студию, сваял програмку.

Выяснилось, что если сразу сходу запускать графическую программу, она также жалуется на отсутствие direct-x, а вот если запускать ее из меню — она запускалась молча и с удовольствием.

Не особо расстраиваясь я решил сделать то-же самое на win32 api с помощью старой доброй вижуал студии 6.0. Заодно решил добавить немного удобств для себя, любимого — например, конфигурирование списка разрешенных программ через реестр (файл защитить от изменений сложнее), т.е. все настройки этого шелла хранятся в глобальном разделе реестра, недоступном для изменения для простых смертных. Также думаю повесить хук на запуск программ (если какой продвинутый пользователь запустит игру в карты через окно диалога открытия или сохранения файла) и либо прерывать неразрешенные процессы либо не давать им запускаться вовсе — еще не разбирался, как правильней/проще сделать). Еще думаю разобраться с копированием файлов через диалог открытия или сохранения файла — блокировать их тоже, в общем. Также нужно по идее запретить монтировать устройства простому пользователю.

В общем закат солнца вручную :)

Может кто уже решал подобные задачи? вот чувтвую, что решается в три пинка, а я тут развел бог весть что уже.

- ЗОТЕР состоит из HTA(HTML),BAT,VBS,REG и используется в терминальной сессии Microsoft Windows Terminal(98,2000,XP,Vista,7,8 и т.д. - 32x-64x) или без оного, т.е. минимальные знания программирования, разберется и ребенок, все это редактируется в обчыном блокноте.
- с использованием ЗОТЕР, пользователи при входе в терминальную сессию увидят вместо рабочего стола удаленного компьютера только список приложений в стиле МЕТРО, на доступ к которым они имеют права, и кнопку завершения терминальной сессии. И ничего лишнего, что повышает безопасность работы вашей организации, компании, завода и позволяет эффективно разграничивать права доступа различных пользователей.
- Минимальные системные требования и они очень скромные. Для ее использования потребуется MS Windows любой версии с установленным MS Terminal service, а также возможно использование программы под альтернативными терминальными системами, наличие Active Directory не обязательно.

- на сегодняшний день очень многие фирмы используют терминальный доступ к серверу и работают с корпоративным программным обеспечением за удаленным рабочим столом в среде Microsoft Terminal Server. Как правило, пользователи, заходя в терминальную сессию, видят “целиком” рабочий стол удаленного компьютера, кнопку “Пуск” и прочие, зачастую небезопасные элементы.
- ЗОТЕР позволяет за считанные минуты создать необходимый список приложений, с которыми будут работать определенные пользователи и разграничить права доступа.

Настройка:

Предполагается, что вы уже установили терминал, не обязательно серверный, у Меня установлено на XP

Добавили пользователей windows, 1С, желательно одинаковые и на английском.

Установили 1С платформу на диск, например D:\1Cbase\1cv82\

Установили 1С базу, например D:\1Cbase\buh\

Почему D: - если сдохнет винда форматнул С диск и новую поставил, так что у Меня будет диск D - у вас любой какой захотите

- Создадим папку на диске, к примеру D:\UserTerminal , скопируем в нее все мои файлы:

-- start.bat (удалите его и все терминалы будут загружаться как обычно)

-- start.reg

-- UserX.hta (UserХ - имя терминального пользователя виндовс и 1с - Я взял buh1.hta)

--images (папка с картинками и иконками кнопок управления)

---body.jpg - фон нашего рабочего стола терминальной сессиии можно менять на любую и для каждого пользоватяля отдельно, меня в "UserX.hta" - "body style="background-image:url(images/body.jpg)"

---ххх.jpg - иконки кнопок управления, можете добавлять взависимости от программы

"имя пользователя" и "пароль" , путь к БД , путь к 1с и обробке.В скрипте четко прописано что где писать !

Специальные предложения

Electronic Software Distribution

Интеграция 1С с системой Меркурий

Алкогольная декларация

Готовые переносы данных

54-ФЗ

Управление проектом на Инфостарте

Траектория обучения 1С-разработчика

А потом, когда 1С запустится, делаем "Файл / Открыть", на любой папочке правую кнопку мыша "Проводник" и запускается у пользователя нормальный рабочий стол.
Если этот скрипт используется для "защиты" сервера, то лучше настройкой сервера заниматься, а не такой фигнёй. Начиная с Windows 2008 - RemoteApps, которая в терминале выдаёт только запущенную программу (2) Franco,
Иногда бывает нужна не одна 1С: Почтовый клиент (если не пользоваться встроенным), Внешний справочник бухгалтера и т.д. В этом случае нужен скрипт, только проверяющий "кто есть кто".

Просмотры 4750

Загрузки 3

Рейтинг 0

Создание 30.05.14 12:13

Обновление 30.05.14 12:13

№ Публикации 285542

Конфигурация Конфигурации 1cv8

Операционная система Windows

Вид учета Не имеет значения

Доступ к файлу Абонемент ($m)

Код открыт Не указано

Ключевую часть курса составляет практическая работа по командам над проектами. Управление ИТ-проектами. Agile: продвинутый курс по гибкому управлению проектами.

См. также

Универсальный редактор данных (УРД) Промо

Универсальный редактор данных (УРД) - это лучший инструмент в своем классе, который позволяет редактировать реквизиты и движения объектов

1 стартмани

27.08.2021 5971 124 Adeptus 51

Доп. панель Alt+Z

Панель, вызываемая для объекта комбинацией клавиш Alt+Z (для документа, справочника, плана вида характеристик, плана счетов и т.д.). Возможности: Редактор всех реквизитов, таблиц и движений, Анализ прав к объекту, Поиск ссылок на объект с фильтрами, Сторно движений документа, Выгрузка/загрузка текущего объекта между базами. Подключается как Расширение.

2 стартмани

24.06.2021 8097 100 sapervodichka 57

Оптимизация размера изображений из присоединенных файлов УТ 11.4

5 стартмани

10.07.2020 8800 5 Neti 4

Работа с базами данных 1С в SQL Server Management Studio (Расширение для SSMS)

Расширение позволяет просматривать связи объектов метаданных и таблиц БД, сгруппированные данные (по группам метаданных) об используемом дисковом пространстве и выполнять трансляцию SQL текста запроса в термины 1С. И бонусом - при наведении курсора мыши на таблицу или поле показывает назначение объекта в терминах 1С.

10 стартмани

27.11.2019 17317 46 akpaevj 46

Очистка кэша 1С 8 (8.0, 8.1, 8.2, 8.3). Грамотная чистка кэша 1С с сохранением настроек. Промо

Эффективное средство для устранения ошибок, возникающих в локальном кэше 1С на клиенте, которым легко сможет воспользоваться пользователь с любым уровнем знаний. Wsf-скрипт, созданный на стандартном языке автоматизации Windows - "WSH JScript", очищает кэш 1С просто, быстро и безопасно. Кроме варианта, очищающего кэш текущего пользователя, имеется также вариант для чистки кэша 1С всех пользователей терминального-сервера.

1 стартмани

04.11.2018 54173 530 Eugen-S 35

Конфигурация для администраторов "Центр управления базами" для 8.3 УФ

Конфигурация предназначена для централизованного управления информационными базами предприятия. Разработана на БСП версии 2.4.4.76. В работе использует COM-соединение.

3 стартмани

09.10.2019 10767 36 WhiteOwl 17

Информация о программных лицензиях 1С (Ring GUI)

Обработка, представляющая из себя обертку функций Утилиты лицензирования 1С (ring) в понятном для обычного человека виде. По сути, это GUI утилиты RING

5 стартмани

18.09.2019 9610 34 MaxxG 6

Обновление конфигурации 1С из cf по расписанию

Часто в процессе внедрения или активной разработки конфигурации возникает необходимость ежедневного обновления конфигурации базы данных.

1 стартмани

09.09.2019 4104 1 sivin-alexey 2

DroidRAC2 - консоль администрирования кластера серверов 1С:Предприятие 8.3 под Android Промо

DroidRAC2 - клиент для RAS-сервиса кластера серверов платформы 1С:Предприятие 8.3 под Android.

1 стартмани

24.02.2017 27561 12 user700211_a.straltsou 20

Кто уложил 1С, или мониторинг загрузки кластера в разрезе пользователей с помощью Grafana

Мониторингом различных параметров работы кластера 1С в zabbix сейчас уже никого не удивишь. Собственно потребление памяти, процов и места на серверах обычно настраивают первыми. Потом идет мониторинг в разрезе rphost'ов и различные метрики функционирования SQL сервера. Но вот когда уже все это есть, то временами возникает вопрос - какой же конкретно нехороший человек пытается съесть все (ну не все, но много) ресурсы сервера? Можно смотреть в консоль кластера и ловить редиску там. Можно анализировать журнал регистраций, включать технологический журнал или накапливать статистку в специализированных базах 1С. Но, "настоящим" сисадминам проще как-то с внешними скриптами, базами данных и, например, Grafana. Расскажу что у нас получилось.

Но только чтобы в зависимости от учетной записи. То есть кассир включает комп, и сразу 1С запускается. Рабочего стола и кнопки пуск нету. А если Администратор включает, то тогда все как обычно. Никагого автозапуска. HKLMSoftwareMicrosoftWindows NTCurrentVersionWinlogon параметр shell влияет на всех пользователей. А так не надо.

А в групповых политиках написать скрипт в logon для того, чтобы менять этот параметр, если это не Администратор? Не прокатит?

Администратор может нажать Win+R и загрузить эксплорер.

Следущий вопрос будет: Как чтобы при выходе из 1С система завершала работу.

, надо чтобы Пуск и рабочий стол не появлялся. А так он будет. Он кнопку пуск не увидит например какая нибудь хоть? нет, не терминал я не умею

ну как варик) хотя одно и то же получится) с батником красивее)

т.е. на локальном компе нужен разный запуск по пользователям ?

почему будет? ну если и даже так, тогда в мс КОНФИГЕ замути автозапуск)

Так вот я и не пойму какой ключ найти там надо в этой ветке?

HKEY_CURRENT_USERSoftwareMicrosoftWindows NTCurrentVersionWinlogon

То же самое, что в LM, только Shell нужно вручную создать, его там нет по-умолчанию.

А как определить что курент юзер - это тот пользователь, который нужен?

короче,качай XP Tweaker, там есть галка на запрет рабочего стола, и прочий хрени типа пуска и т.д., там же в автозагрузку добвляй ярлык запуска 1С

Зайди под пользователем и создай этот параметр в CU.

там те можешь и пароль поставить на эту прогу, и запретить диспетчер задач и много другое

Win это кнопка на клавиатуре, Win+R вызовет "Выполнить" там набираете "explorer" и делов-то. Делал неоднократно.

написать vbs скрипт, где прописать путь к базе, юзверя, пасс, и там разные варианты, типа монопольно или нет, когда они будут выходить из 1С, можно будет спрашивать, вы хотите выключить комп, если нет, то снова запускать 1С!

+ А еще: Чтобы узнать, в какой ветке находятся настройки нужного пользователя, нужно узнать его SID. Идентификатор безопасности (SID, security ID) - структура данных переменной длины, которая идентифицирует пользователя, группу или компьютер. Каждая учетная запись в сети имеет уникальный SID. Внутренние процессы в Windows обращаются к SID для получения учетной записи пользователя или имени группы. Откройте редактор реестра HKLMSOFTWARE MicrosoftWindows NTCurrentVersionProfileList. Выберите SID и посмотрите ProfileImagePath. В конце строки найдете имя пользователя.

зачем усложнять когда можно твикнуть раз, и одним махом решить все проблемы) там даже рабенок сообрзит как и че)

На самом деле ничего сложного в этом нет ) Всего один параметр создать нужно. Лично я бы не стал ради этого качать чего-то там, устанавливать и т.п. Тем более, если это нужно сделать на сервере, например (хотя, автор делает не на сервере).

Спасибо, я понял все. Получилось. Я вобщем-то как раз и не мог понять, что надо в этого пользователя зайти и под ним в реестр зайти. Ну и все спасибо тоже большое, приму к сведению.

дык он ж говрил что на локальном компе..) или я хз) ну просто, прошаренный пользователь всеравно запутит что то запретное, а твики оч хорошо обрезают это дело..) на себе проверял.. пришлось админку новую мутить) старую заблочил так, что самому не разблочить было))) кстать, день назад)

все делается штатно и мс это описывает в своем сапорте и кз

Заходить под пользователем не обязательно, настройки всех пользователей находятся в HKEY_USERS. В HKEY_CURRENT_USER что-то типа ссылки на ветку из HKEY_USERS. Как в HKEY_USERS найти нужного пользователя - см. . А зайти под пользователем - это тоже вариант, и, наверное, самый простой, но не всегда возможный.

а можно узнать как найти пользователя в HKEY_USERS когда ни один не подключен ?

Вот такой скриптик наваял: Просто сохрани с расширением VBS и запусти. SID вводится в виде: S-1-5-21-117609710-362288127-1801674531-1005 Можно открыть HKEY_USERS в REGEDIT, щелкнуть правой кнопкой на любом подразделе, выбрать "Копировать имя раздела" и из этого имени убрать потом "HKEY_USERS".

Описание объектов с пом. гугла легко находятся. А VB - оно почти 1С )

ну что то такое есть) общий предок паскаль чуствуется) а ты случайно не знаешь как с помощью скрипта сделать общую папку для сетевых юзеров? батник не предлагать, т.к. работает он криво, пробывал, лажа получается, через раз канает..

Если на сервере с наличием AD, то думается мне, тут можно обойтись и без батников и скриптов, один раз всё настроить и всё. В других случаях больше инфы нужно )

сервак - обычный комп с огромным винчем, рабочей группой и т.д. ) слетает бывает расшаренные папки, хз почему.. мб ось кривая.. (ХП) думаю скрипт намутить и в автозагрузку, чтоб наверника )

ЗАЧЕМ . все запреты делаются политикой, а ОДИН ярлык на рабочем месте можно и ткнуть, ну а как пользователю удалять/добавлять базы и выбирать пользователя - вариантов масса. (например )

И вправду возник вопрос такой. Как чтобы при выходе из 1С завершался сеанс пользователя?

При логоне можно запускать скрипт, который будет запускать 1С, ждать, пока она завершит работу и выполнять выход из системы или выключение рабочей станции.

Блин я в скриптах не силен. А где можно взять такой скрипт? Или хотяб где про скрипты прочитать как их писать?

А-а-а, я полдня въезжать буду :( Если там всего 4 строчки, может поможете?

Читайте также: