
Kuzevich
Отключение start/stop на BMW X3 G01 с помощью кодирования через E-SYS
По умолчанию с завода на BMW идет работающий режим start/stop, который глушит двигатель при остановке. Функция ужасно бесячая, но через стандартное меню почему то не настраиваемая.
С помощью нехитрых манипуляций кодирования можно ее настроить таким образом, чтобы кнопка запоминала свое последнее состояние. Почему не сделать так сразу на заводе не понятно, хорошо что есть хотя бы такая возможность!
Но человеку впервые с этим сталкивающимся не сразу все понятно. Гуглением находятся обрывки информации и видео, где не все объясняется.
Самый лучший пост https://www.drive2.ru/l/4118016/ но тоже новичку слегка запутано.
В итоге, я решил все свести в единую статью, чтобы потом не собирать повторно.
Не открываются презентации Outlook
Столкнулся с проблемой открытия файлов презентаций .ppt и .pptx на компьютере с Windows 11 и Outlook 2016
Файлы презентаций нормально открывающиеся на других компьютерах, на этом открываться категорически отказывались и сообщали о необходимости восстановить содержимое. Но нажатие на кнопку восстановления не устраняет проблему. Вместо этого система выдает другое сообщение об ошибке с кнопкой "показать справку"
Это происходит из-за того что Windows вместе с PowerPoint'ом пытаются Вас защитить от подозрительных файлов. Обойти эту защиту можно отключив режим защищенного просмотра. Файл-Параметры-Центр управления безопасностью-Защищенный просмотр и снять все галки на данной панели:
Восстановление битой базы SQLite3 "database disk image is malformed"
Попалась мне база писем для Outlook, настроенная через MDaemon Outlook Connector.
Проблема была в том что Outlook перестал открываться. Оказалось что данный файл базы поврежден. Сам файл представляет собой хранилище SQLite3
Для того чтобы работать с базой SQLite3 нужно скачать исполняемые файлы, SQLite3-tools отсюда: https://www.SQLite3.org/download.html на момент написания статьи это SQLite3-tools-win32-x86-3420000.zip
При открытии базы средствами SQLite3 и попытке с ней что-то сделать появляется ошибка:
/****** CORRUPTION ERROR *******/
/****** database disk image is malformed ******/
/****** ERROR: near "ORDER": syntax error ******/
/**** ERROR: (11) database disk image is malformed *****/
Есть программы для восстановления, например SQLite Database Recovery, но они платные, а бесплатных аналогов я, к сожалению, не нашел!
Поэтому решил дествовать вручную.
При попытке сделать восстановить через dump, способами описанными здесь https://infostart.ru/1c/articles/402536/ , здесь https://stackoverflow.com/questions/18259692/how-to-recover-a-corrupt-SQLite3-database и здесь https://mobi-c.ru/help/error2.htm появляется та же самая ошибка.
В итоге помогла команда ".recover"
SQLite3.exe LocalCache.db ".recover" >> LocalCache.sql
А затем загрузка полученного дампа в новый файл базы данных
SQLite3.exe LocalCache_new.db < LocalCache.sql
Полученным восстановленным файлом подменяем файл который лежал в папке Outlook'a и все заработало!
Как передать картинку (ХранилищеЗначений) по Com-соединению из одной базы 1С в другую
db = Новый COMобъект("V83.COMConnector"); Попытка соединение= db.Connect(СтрокаПодключения); Исключение сообщить("база не открыта"); Предупреждение(ОписаниеОшибки()); Возврат ложь; КонецПопытки; НоваяНоменклатура=Справочники.Номенклатура.НайтиПоКоду("ВашКод"); GUID = НоваяНоменклатура.УникальныйИдентификатор(); GUIDCom = соединение.NewObject("УникальныйИдентификатор", Строка(GUID)); НоменклатураСсылкаCom = ТекПодключение.Справочники.Номенклатура.ПолучитьСсылку(GUIDCom); НовКартинкаОбъект = Соединение.Справочники.ХранилищеДополнительнойИнформации.СоздатьЭлемент(); НовКартинкаОбъект.Объект = НоменклатураСсылкаCom; НовКартинкаОбъект.Наименование = НоваяНоменклатура.ОсновноеИзображение.Наименование; НовКартинкаОбъект.ВидДанных = Соединение.Перечисления.ВидыДополнительнойИнформацииОбъектов.Изображение; НовКартинкаОбъект.ИмяФайла = НоваяНоменклатура.ОсновноеИзображение.ИмяФайла; Картинка=НоваяНоменклатура.ОсновноеИзображение.Хранилище.Получить(); Двоичные = Картинка.ПолучитьДвоичныеДанные(); ДвоичныеСтрокой = Base64Строка(Двоичные); ДвоичныеCOM = Соединение.Base64Значение(ДвоичныеСтрокой); МояКартинкаCOM = Соединение.NewObject("Картинка",ДвоичныеCOM); НовКартинкаОбъект.Хранилище = Соединение.NewObject("ХранилищеЗначения",МояКартинкаCOM); НовКартинкаОбъект.Записать();