1С попытка исключение

Ошибка 1С — обнаружено нарушение целостности системы

Описание проблемы

Фирма 1С решила пойти на кардинальные методы борьбы с пиратством и 12 декабря выпустила 2 версии платформы: 8.3.10.2699 и 8.3.11.2899  в которых внедрили механизм проверки легальности версии.
А именно программа отслеживает:

а) изменен ли файл backbas.dll

(проверяется контрольная сумма всех файлов системы)

б) установлен ли на компьютере эмулятор.

В случае обнаружения нелегального использования (или неправильно установленной программы) в режиме 1С:Предприятия начинает появляться ошибка "Обнаружено нарушение целостности системы" и после этого можно только завершить работу или перезапустить…
При повторном открытии программы ошибка возникает вновь.

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

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

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

Не торопитесь обновлять платформу.

Последние версии, которые работают без проверки файла backbas (контрольной суммы) и эмуляторов 8.3.10.2667 и 8.3.11.2867. При работе на них ошибки об обнаружении нарушения целостности системы НЕ возникает.

Какие варианты вернуть работоспособность базы:

1. Откатить платформу и работать в старых версиях (не более 8.3.10.2667 и 8.3.11.2867). Это временное решение, рано или поздно фирма 1С выпустит релизы, которые будут работать только на новых платформах.

не совпадает версия временного файла 1с 83

Перейти на работу в сервисе 1С:Облако (1С:Fresh). Стоимость использования программы в данном сервисе начинается от 1000 руб/мес.

3. Купить ключи и пользоваться программой официально.

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

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

Как удалить следы патчей:

а) Вернуть файл backbas.dll к исходному состоянию (удалить полностью и заново установить платформу).

б) В системе не должно быть установлено службы vusbbus и файл этой службы должен отсутствовать  (обычно он лежит по пути \SystemRoot\system32\DRIVERS\vusbbus.sys).
Наличие ключа HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\NEWHASP ни на что не влияет.
Для устранения в диспетчере устройств ищем и удаляем — Virtual Usb Bus Enumerator в ветке Системных устройствах (нужно поставить галку Удалять драйвера программы)

  • Добавить свою публикацию
  • для этого требуется регистрация

Проблема, которой посвящена статья, возникает при аварийном завершении работы конфигуратора в тот момент, когда происходит реструктуризация базы данных, то есть — на одном из последних этапов обновления конфигурации.

Сравнение UUID, кодов и наименований справочников в двух базах

Решение, описанное в статье, относится к клиент-серверной версии платформы "1С: Предприятие", использующей в качестве СУБД "MS SQL Server".

Симптомами могут служить следующие предупреждения системы:

1)      При попытки запуска базы в режиме конфигуратора:

 

2)      При попытки запуска базы в режиме предприятия:

 

3)      При входе в конфигуратор система может также предложить следующее решение:

 

На данный вопрос мы можем ответить утвердительно.

И часто таким способом проблема решается. Но не всегда.

На наше согласие продолжить обновление система может ответить следующим сообщением:

 

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

В этом случае нам поможет MS SQL Server. Для решения нашей проблемы достаточно последовательно выполнить следующие скрипты (разумеется в контексте проблемной БД).

1)       Сначала создадим копии таблиц Config и ConfigSave (впоследствии, их можно удалить).

SELECT *

INTO Config_copy

FROM

SELECT *

INTO ConfigSave_copy

FROM

В данных таблицах, как раз, и хранится информация о конфигурациях и ходе обновления. В первой таблице хранится информация о конфигурации БД, в том числе, и данные последнего обновления. Вторая таблица содержит данные новой, ещё несохраненной конфигурации. Анализируя содержание этих таблиц, система получает данные о том, насколько успешным (или неуспешным) было последнее обновление.

2)      Удаляем все записи из таблицы ConfigSave (хранит накатываемую конфигурацию)

DELETE FROM

3)      Удаляем три записи из таблицы Config (именно они хранят информацию о незаконченном процессе обновления конфигурации)

DELETE FROM

WHEREFileNameIN (‘commit’,’dbStruFinal’,’dynamicCommit’)

Далее следует обновить конфигурацию в штатном режиме, то есть через конфигуратор.

В таблице Config должны появиться записи о нашем последнем обновлении, что легко проверить обычным «селектом».

 

предыдущие ()все

≡ к списку статей

Платформа 8.3.4.365. Не совпадает версия временного файла

После обновления до актуального релиза у пользователей запуск 1С нередко происходит с ошибкой:

КЭШБЭК 20% ПРИ ПОКУПКЕ «1С:ПРЕДПРИЯТИЕ 8»

При этом перезагрузка не помогает, сообщение продолжает возникать и в пользовательском режиме, и в режиме Конфигуратор.

Проблема известная, но имеет множество причин возникновения, о которых мы расскажем.

В первую очередь отметет самое очевидное решение: некорректно завершенные сеансы.

Для этого администратор должен не только завершить все активные сеансы, но также перезагрузить сервер.

Установка 1С 8.3

Это обеспечит отключение всех процессов.

Сообщение исчезло? Отлично!

Ошибка при запуске 1С по-прежнему остается? Продолжаем!

Запуск 1С с разными версиями конфигурации

Теперь сверим релизы, которые используются на сервере и на пользовательских машинах.

Каждый выпуск конфигурации хранится на жестком диске в отдельной папке, поэтому определить наличие нужного очень просто.

Для этого зайдем в директорию (по умолчанию она расположена C:\Program Files (x86)\1cv8 ) и посмотрим, есть ли в ней искомый релиз:

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

Требуемая конфигурация установлена, но сообщение об ошибке все еще возникает?

К сожалению, наличие сборки на машине не обещает, что запуск 1С осуществляется именно из нее.

Например, иногда сотрудники сами создают некорректные ярлыки из устаревшей сборки или некорректно отрабатывает 1cestart.exe.

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

Что указано в поле «Версия»? Если поле пусто или в нем прописана устаревшая сборка, то будет лучше указать в нем актуальный номер платформы, необходимой для загрузки.

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

Кеш – частая причина для 1С ошибки

Кеширивание — это механизм создания временных и чаще всего статичных данных. Хранение кеша способствует увеличению скорости отклика программы. При этом на машину загружается информация, чтобы ее не пришлось постоянно запрашивать с сервера при каждом клике. К сожалению, бывают случаи, когда платформа обрабатывает сохраненную информацию со сбоем, поэтому мы можем получить неадекватное поведение системы в виде разнообразных "глюков".

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

Основной способ чистки кеша – удаление вручную.

Данный вариант очистки кеша является наиболее правильным.

Для этого необходимо найти папку, где сохраняются файлы ИБ. Пусть к ней находится обнаружить в меню настройки, которая открывается из списка:

Системная директория находится в программном каталоге вида C:\Documents and Settings\username\Application Data\1C\1Cv82\tmplts\1c, а сами каталоги с кешированной информацией находятся в корневой паке «1Cv82». При этом «username» будет означать имя пользователя, а само название папки 1Cv82 варьируется из-за версии платформы.

При переходе внутрь мы найдем большое количество папок (по числу установленных конфигураций) с названием типа «fcb8341b-07er-48b9-97f4-6d1cfae7f004».

Такие директории – это кэш данных, и их нужно удалить. Перед этим не забудьте обязательно закрыть все активные сеансы ИБ на компьютере.

Второй способ – удаление базы из списка.

Для очистки требуется удалить проблемную базу из списка, а после этого создать новую, указав такой же путь к ИБ. После процедуры ранее использованный каталог с кешированными файлами останется на жестком диске, но для новой базы будет создано новое хранилище.

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

Последний метод – прописать в настройках команду «ClearCache»:

Его можно воспользоваться только в тонком клиенте. К тому же при работе с этой командой значительно снижается производительность.

Антивирус

Иногда ошибка при запуске 1с может возникнуть после установки свежего антивируса. Например, известно, что после апдейта антивируса Касперский до 10 версии нередко возникает такая блокировка. Если это произошло, то желательно вернуться к использованию более раннего выпуска.

Обсудить статью на 1С форуме?

Просмотр примеров использования "Попытка" в Вопросах и Ответах, доступен только зарегистрированным пользователям!
Пожалуйста, войдите или зарегистрируйтесь!

Попытка (Try)

1C v 8.2
Синтаксис:

Параметры:
// Операторы попытки
Исполняемый оператор или последовательность таких операторов.

Исключение
Операторы, следующие за ключевым словом Исключение выполняются, если при выполнении последовательности операторов произошла ошибка времени выполнения.

// Операторы исключения
Исполняемый оператор или последовательность операторов, которые обрабатывают исключительную ситуацию.

ВызватьИсключение
Оператор позволяет вызвать исключение в тех случаях, когда несмотря на отработку исключительной ситуации операторами исключения необходимо прервать выполнение модуля с ошибкой времени выполнения. Оператор допустим только внутри операторных скобок Исключение – КонецПопытки.

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

КонецПопытки
Ключевое слово, которое завершает структуру оператора обработки исключительных ситуаций.

Описание:
Оператор Попытка управляет выполнением программы, основываясь на возникающих при выполнении модуля ошибочных (исключительных) ситуациях, и определяет обработку этих ситуаций. В качестве ошибочных (исключительных) ситуаций воспринимаются ошибки времени выполнения модуля. Не предусмотрено определяемых пользователем исключений.

Если при выполнении последовательности операторов попытки произошла ошибка времени выполнения, то выполнение оператора, вызвавшего ошибку, прерывается и управление передается на первый оператор последовательности операторов исключения. При этом управление будет передано даже в том случае, если ошибку вызвал оператор, находящийся в процедуре или функции, вызванной из операторов попытки. Если ошибка произошла в вызванной процедуре или функции, то ее выполнение будет прервано, а локальные переменные – уничтожены. Это справедливо для любой вложенности вызовов.

Запуск программы 1С из командной строки

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

Конструкции Попытка – Исключение – КонецПопытки могут быть вложенными. При этом, при возникновении исключительной ситуации управление передается на тот обработчик, в попытке которого произошла ошибка. Если же в последовательности операторов исключения этого обработчика выполняется оператор ВызватьИсключение, выполнение передается вышестоящему обработчику исключения и так далее. Если вышестоящего обработчика нет, исключительная ситуация обрабатывается системно с прекращением выполнения программного модуля.

1C v 8.0 — 8.1
Синтаксис:

Параметры:
// Операторы попытки
Исполняемый оператор или последовательность таких операторов.
Исключение
Операторы, следующие за ключевым словом Исключение выполняются, если при выполнении последовательности операторов произошла ошибка времени выполнения.
// Операторы исключения
Исполняемый оператор или последовательность операторов, которые обрабатывают исключительную ситуацию.
ВызватьИсключение
Оператор позволяет вызвать исключение в тех случаях, когда несмотря на отработку исключительной ситуации операторами исключения необходимо прервать выполнение модуля с ошибкой времени выполнения. Оператор допустим только внутри операторных скобок Исключение – КонецПопытки.
Выполнение данного оператора прекращает выполнение последовательности операторов исключения и производит поиск более «внешнего» обработчика исключения (при вложенных попытках). Если таковой есть, то управление передается на его первый оператор. Если нет, то исключительная ситуация обрабатывается системно, выдается сообщение о первоначально возникшей ошибке, а выполнение модуля прекращается.
КонецПопытки
Ключевое слово, которое завершает структуру оператора обработки исключительных ситуаций.
Описание:
Оператор Попытка управляет выполнением программы, основываясь на возникающих при выполнении модуля ошибочных (исключительных) ситуациях, и определяет обработку этих ситуаций. В качестве ошибочных (исключительных) ситуаций воспринимаются ошибки времени выполнения модуля. Не предусмотрено определяемых пользователем исключений.
Если при выполнении последовательности операторов попытки произошла ошибка времени выполнения, то выполнение оператора, вызвавшего ошибку, прерывается и управление
передается на первый оператор последовательности операторов исключения. При этом управление будет передано даже в том случае, если ошибку вызвал оператор, находящийся в процедуре или функции, вызванной из операторов попытки. Если ошибка произошла в вызванной процедуре или функции, то ее выполнение будет прервано, а локальные переменные – уничтожены. Это справедливо для любой вложенности вызовов. После выполнения последовательности операторов исключения управление передается на следующий за ключевым словом КонецПопытки оператор. Если же последовательность операторов попытки выполнилась без ошибок, то последовательность операторов исключения будет пропущена и управление также
будет продолжено с оператора, следующего за ключевым словом КонецПопытки.
Конструкции Попытка – Исключение – КонецПопытки могут быть вложенными. При этом, при возникновении исключительной ситуации управление передается на тот обработчик, в попытке которого произошла ошибка. Если же в последовательности операторов исключения этого обработчика выполняется оператор ВызватьИсключение, выполнение передается вышестоящему обработчику исключения и так далее. Если вышестоящего обработчика нет, исключительная ситуация обрабатывается системно с прекращением выполнения программного модуля.

1C v 7.x
Синтаксис:

Назначение:
управляет выполнением программы, основываясь на возникающих при выполнении модуля ошибочных (исключительных) ситуациях и определяет обработку этих ситуаций. В качестве ошибочных (исключительных) ситуаций воспринимаются ошибки времени выполнения модуля.
В выдаче диагностики помощь может оказать встроенная функция ОписаниеОшибки() (англоязычный синоним GetErrorDescription). Эта функция не имеет параметров, а в качестве значения возвращает описание ошибки, такое же, как то, которое было бы выдано в окне сообщений, в случае отсутствия обработчика исключительной ситуации, за исключением описания модуля и строки, в которой ошибка возникла. Применять данную функцию имеет смысл только при выполнении последовательности операторов <// Обработка исключительной ситуации>, так как в ином случае она вернет пустую строку.

Разместил: E_Migachev Дата: 30.11.2009 Прочитано: 8702