Не удалось загрузить компоненту lp45 dll

Обновлено: 06.07.2024

На одном из подшевных бухгалтерских компов, при запуске 1C, в консоль стали сыпаться ошибки следующего толка:

Ошибка при создании объекта из компоненты C:\Program Files (x86)\1Cv77\BIN\1CRtInf.dll (отсутствует CLSID)
Ошибка при создании объекта из компоненты S:\Bases_1C\v77\BD_NAME\1SBDB\v7plus.dll (отсутствует CLSID)
Ошибка при создании объекта из компоненты S:\Bases_1C\v77\BD_NAME\1SBDB\v7plus.dll (отсутствует CLSID)
Ошибка при создании объекта из компоненты S:\Bases_1C\v77\BD_NAME\1SBDB\v7plus.dll (отсутствует CLSID)
Ошибка при создании объекта из компоненты S:\Bases_1C\v77\BD_NAME\1SBDB\v7plus.dll (отсутствует CLSID)
Ошибка при создании объекта из компоненты S:\Bases_1C\v77\BD_NAME\1SBDB\v7plus.dll (отсутствует CLSID)
Не удалось обнаружить компоненту v7plus.dll!

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

Ошибка данного характера Ошибка при создании объекта из компоненты (отсутствует CLSID) означает, что по каким то причинам слетела регистрация элементов управления OLE, необходимых для корректного запуска и последующей работы 1C.

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

Но если файлы на месте, то их следует зарегистрировать с помощью утилиты Regsvr32.exe, запускаемой из под админских прав.
Для чего нажимаем Пуск -> в поиске пишем cmd (функционал Windows7) -> вверху списка появляется cmd.exe на который кликаем правой клавишей мыши и говорим Запуск от имени администратора -> в открывшемся окне пишем regsvr32.exe с нужными вам путями, в моем случае это выглядело как:

также можно просто из сессии дос-промта перехватить права администратора, командой
runas /noprofile /user:admin_user cmd

Программы » 1С:Предприятие 1C - 1C: Вопросы по конфигурациям
Варезник » 1C:Предприятие 7.7 - 1С:Предприятие v.8.x - 1C Диск ИТС - 1С: Совместимо 8.х Топик 1C Ebooks
ЗДЕСЬ (обновлено 22.02.14 ) - небольшая библиотечка (книги, документация, видео, утилиты) по 1С, финансам, бухучету и т.п.
Все рассортировано по версиям. Для заблудившихся в трех соснах >>> FAQ по форуму RU.Board

Функция ПослатьКомандуСерверу(Сервер, АПИ_Ключ, Парам, POST_URL)

Ресурс = POST_URL + Парам;

ФайлЗапроса = ПолучитьИмяВременногоФайла();
ФайлРезультата = ПолучитьИмяВременногоФайла();

Возвращается ошибка 301, ответа НОЛЬ. С отладчика не буду флудить, но что то тут не правильно я делаю. Посмотрите плз зорким взглядом

Есть отчет на СКД, в котором есть 3 поля и один ресурс.
Изначальная настройка имеет такой вид:
Отчет
Групировка по полю 1
Группировка по полю 2.

При нажатии на поле ресурса появляется стандартное диалоговое окно расшифровки, где, среди прочего, можно выбрать вариант "Расшифровать по полю 3".

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

Смотрю в сторону настройки макета. Создал макет группировки для Группировки по полю 2.
Указал для ячейки, в которой выводится ресурс, Параметр Расшифровки.
В окне настройки Параметра расшифровки из Параметров макета указал Основное действие "Расшифровать".
Но вот дальше тупик. Если в окне настройки Параметра расшифровки я указываю Имя поля "Поле3" и Выражение "Поле3", то при попытки сформировать отчет получаю ошибку "Поле3 не может быть использовано в группировке Поле2".
Если эти поля не заполнять, или заполнить значением "Поле2" то при попытке вызвать расшифровку все равно появляется диалоговое окно, в котором нужно выбирать поле для расшифровки.
Подскажите, в чем неправ?

При помощи этой компоненты легко решается поставленная задача:

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

Недостатки: внешние компоненты в 7.7 требуют регистрации с правами администратора; относительно медленный способ.

По поводу правомерности использования компоненты мне официально ответили «Компонента APPlus.dll бесплатная, Вы можете использовать её в любых целях»

Способ второй – консольный

Заключается в использовании стандартной команды windows «ftp» с параметрами.

Решение может выглядеть так:

Преимущества: никаких компонент, всё стандартное и понятное.

"ftp -s:ftpcmd.dat > naprimer.log"

После выполнения команды файл naprimer.log считывается программно и анализируется.

Способ третий – пассивный режим

История возникновения этого способа связана с тем, что первые два не имеют возможности перехода в пассивный режим обмена (как Web-браузер) и в некоторых случаях из-за этого не работают. Связано ли это с настройками фтп-серверов или политикой безопасности компьютера-клиента и его сети, лично для меня как н еобременённого сетевыми знаниями специалиста, загадка, а искать ответ или специалиста который бы помог в каждом новом случае – смерти подобно. Поэтому силами яндекса было найдено решение – использовать свободно доступную консольную программу ФС.УстТекКаталог(КаталогИБ()); // место расположения curl.exe и её компонент КомандаСистемы("curl.exe -T """+ИмяФайлаЛокально+""" -u "+ФТПимяПользователя+":"+ФТПпароль+" "+ФТПсервер); // вот и всё

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

Недостаток: нет возможности программно определить результат отправки.

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

О том как можно организовать регулярную автоматическую отправку отчетов можно узнать здесь.

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

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

Electronic Software Distribution

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

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

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

54-ФЗ

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

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

насколько законно такое использование APPlus.dll без наличия лицензии на Агент+?
По поводу правомерности использования компоненты мне официально ответили «Компонента APPlus.dll бесплатная, Вы можете использовать её в любых целях»

а можно ссылочку на ветку форума? или это из приватной переписки?

(3) спасибо. но всё равно я бы опасался её использования в каких-то серьёзных решениях, ведь лицензия на неё не указана, а письмо. это всего лишь письмо (4) andrewks, обязательно найду время, посмотрю dialmail.dll и добавлю четвертый способ:) уж лучше dialmail.dll использовать, он-то уж точно свободно распространяемый Обработка помогла, все три варианта сработали :) вот теперь мучаюсь с выбором :) (7) Elected, для того и представлено несколько способов, что бы найти рабочий, а так же посмотрите комментарии выше, там ещё одна компонента. (8) не знаю, у меня есть своя наработка и она работает на стандартной команде windows FTP.EXE. Всё загружается и выгружается.

Для первого варианта будет ли работать Загрузка с FTP?:

Да, работать будет ))
Но вот так:

(13) Gennadiy83,
0001/file1.txt
положить в каталог 0001
или
/file1.txt
положить в корневой каталог ФТП

вот реальный пример
storage/sdcard0/Download/To1C.zip
загружаю файл на телефон

При подключении к серверу начальный каталог не указывается. При подключении через браузер или проводник, локальный каталог не указываю и не вижу. Вероятнее всего при подключении к ftp сразу перенаправляет в нужную папку. Знаю, что на ftp каждому дистрибьютору соответствует папка по логину подключения.

Пробовал установить каталог вызовом процедуры ФтпУстТекКаталог(имяПапкиНаFTP), но генерируется ошибка.

Подозреваю, что ftp работает в пассивном режиме, есть ли возможность установки соединения с ftp-сервером в таком режиме? Огромное спасибо за помощь, попробую в ближайшее время, обязательно отпишу по результатам

Попробовал dialMail.dll в активном и пассивном режиме, подключение происходит, но файл не перегружается на ftp. Ниже приведу лог пассивного подключения, затем, активного

.11.15 00:36:41.314 FTP: Подключаемся к сокету
05.11.15 00:36:41.330 FTP: К сокету подключились успешно
05.11.15 00:36:41.361 FTP <-- 220 Microsoft FTP Service
05.11.15 00:36:41.361 FTP --> USER ЛОГИН
05.11.15 00:36:41.377 FTP <-- 331 Password required for PTN020104699.
05.11.15 00:36:41.377 FTP --> PASS *****
05.11.15 00:36:41.392 FTP <-- 230 User logged in.
05.11.15 00:36:41.392 FTP --> TYPE I
05.11.15 00:36:41.424 FTP <-- 200 Type set to I.
05.11.15 00:36:41.424 FTP --> STRU F
05.11.15 00:36:41.439 FTP <-- 200 STRU F ok.
05.11.15 00:36:41.439 FTP --> REST 0
05.11.15 00:36:41.455 FTP <-- 350 Restarting at 0.
05.11.15 00:36:41.455 FTP --> REST 1
05.11.15 00:36:41.470 FTP <-- 350 Restarting at 1.
05.11.15 00:36:41.470 FTP --> REST 0
05.11.15 00:36:41.502 FTP <-- 350 Restarting at 0.
05.11.15 00:36:44.185 FTP DataSocket: Begin
05.11.15 00:36:44.185 FTP DataSocket: Use passive mode
05.11.15 00:36:44.185 FTP DataSocket: Command EPSV 1
05.11.15 00:36:44.185 FTP DataSocket: Command PASV
05.11.15 00:36:44.185 FTP --> PASV
05.11.15 00:36:44.200 FTP <-- 227 Entering Passive Mode (хх,хх,хх,хх,218,154).
05.11.15 00:36:44.200 FTP DataSocket: CloseSocket
05.11.15 00:36:44.200 FTP DataSocket: Bind 0.0.0.0:0
05.11.15 00:36:44.200 FTP DataSocket: Connect хх.хх.хх.хх:55962
05.11.15 00:37:05.229 FTP DataSocket: Error
05.11.15 00:37:05.229 D_FTP ErrorCode = 10060
05.11.15 00:37:05.229 D_FTP ErrorDesc = Connection timed out
05.11.15 00:37:05.229 FTP DataSocket: End
05.11.15 00:37:05.229 FTP --> QUIT
05.11.15 00:37:05.245 FTP <-- 221 Goodbye.

05.11.15 00:41:13.831 FTP: Подключаемся к сокету
05.11.15 00:41:13.862 FTP: К сокету подключились успешно
05.11.15 00:41:13.878 FTP <-- 220 Microsoft FTP Service
05.11.15 00:41:13.878 FTP --> USER ЛОГИН
05.11.15 00:41:13.893 FTP <-- 331 Password required for PTN020104699.
05.11.15 00:41:13.893 FTP --> PASS *****
05.11.15 00:41:13.909 FTP <-- 230 User logged in.
05.11.15 00:41:13.909 FTP --> TYPE I
05.11.15 00:41:13.940 FTP <-- 200 Type set to I.
05.11.15 00:41:13.940 FTP --> STRU F
05.11.15 00:41:13.956 FTP <-- 200 STRU F ok.
05.11.15 00:41:13.956 FTP --> REST 0
05.11.15 00:41:13.971 FTP <-- 350 Restarting at 0.
05.11.15 00:41:13.971 FTP --> REST 1
05.11.15 00:41:14.002 FTP <-- 350 Restarting at 1.
05.11.15 00:41:14.002 FTP --> REST 0
05.11.15 00:41:14.018 FTP <-- 350 Restarting at 0.
05.11.15 00:41:17.653 FTP DataSocket: Begin
05.11.15 00:41:17.653 FTP DataSocket: Use active mode
05.11.15 00:41:17.653 FTP DataSocket: Bind 192.168.110.5:0
05.11.15 00:41:17.653 FTP DataSocket: Command PORT 192,168,110,5,240,79
05.11.15 00:41:17.653 FTP --> PORT 192,168,110,5,240,79
05.11.15 00:41:17.684 FTP <-- 501 Server cannot accept argument.
05.11.15 00:41:17.684 FTP DataSocket: End
05.11.15 00:41:17.684 FTP --> QUIT
05.11.15 00:41:17.700 FTP <-- 221 Goodbye.

Добрый день.
Используется:
Windows8.1 x64, 1С:Предприятие 8.3 (8.3.13.1644), ARM_ORION_PRO1_20_2
Orion1C.dll ,брал из каталога 1C_WorkTime, в каталоге находятся Orion1C.sil и Orion1C.dll
при использовании Example1.exe и Example2.exe все происходит корректно

На текущий момент такая ошибка при использовании метода в 1с
ЗагрузитьВнешнююКомпоненту("Orion1C.dll"); выдает ошибку
"Не смогли загрузить внешнюю компоненту."
ОписаниеОшибки() = "Ошибка при вызове метода контекста (ЗагрузитьВнешнююКомпоненту): Ошибка при загрузке внешней компоненты"
Пробовал указать полный путь к местонахождению dll, ошибка та же.

При попытке зарегистрировать компоненту с помощь. regsvr32 выходит ошибка,
"модуль . Orion1C.dll загружен, но не удалось выполнить вызов DLLRegisterServer, код ошибки: 0х80004005"
Подскажите что можно сделать.

1 год 6 месяцев назад

avatar

Это сразу пробовал. не помогает. Если нет прав обычно пишет другую ошибку

– Ряснов Александр 1 год 6 месяцев назад

«ЗАМЕЧАНИЕ: на управляемых формах программа работает ощутимо медленнее, поэтому, если есть возможность оставаться на обычных формах, то разработчик рекомендует запускать программу в режиме «Обычное приложение».»

(Заинтригован, т.к. у «1С» ников упор в сторону «управляемых форм», буду пробовать «на разгон», там есть такая «фича», будет время, кратко распишу… )

. А запуск в отладочном режиме - даёт много дополнительной информации…

– Карпов Дмитрий 1 год 6 месяцев назад

Ваш номер телефона будет доступен только администраторам сайта.

Спасибо за понимание.

ПОКАЗАН

ЗАДАН

1 год 6 месяцев назад

ПРОДУКТЫ

По каждому вопросу/ответу можно добавлять комментарии. Комментарии предназначены для уточнения вопроса/ответа.

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