Неудачная попытка создания объекта excel application

Обновлено: 03.07.2024

В реестре нашла HKEY_LOCAL_MACHINE\SOFTWARE\Classes\V77.Application\ но CLSID и прочего там нет - пусто.
Помогите, времени в обрез. Не пойму что не так.
1с устанавливала обычным способом (не копировала)

П.С. аналогичная обработка только для другого справочника работает отлично.

Когда работаю через удаленный стол. При вызове обработки (прикрепила) первый раз - все норм. На следующий выдает ошибку памяти (фото 1). После нее 1с предприятие вырубается. При повторном входе в 1с ошибка по прежнему остается.
Если после появления ошибки удалить в базе файлы с индексами и перезайти удаленно - работает. НО это не выход. Помогите.

Иногда еще появляется (фото 2), но после него хоть работает.
Капец.

П.С. аналогичная обработка только для другого справочника работает отлично. Но после появления ошибки при вызове новой обработки, тоже перестает работать и выдает туже ошибку (фото).

(37) anit135, переменную COM объекта очищаете в коде после окончания работы с ней?

если создаете COM объект при открытии, то очищайте при закрытии, если создаете в процедуре по кнопке, то очищайте в конце процедуры

(41) Заглянул в обработку
КаталогБазыОЛе = "d:\KPI\KNU\";
У меня в подобной строке нет последней наклонной черты. П.С. аналогичная обработка только для другого справочника работает отлично.

не совсем понял, в одной обработке объект создается нормально а в другой обработке на том же компе ошибка?

(42) это в любом случае не может повлиять на создание самого СОМ объекта

в одной обработке объект создается нормально а в другой обработке на том же компе ошибка?

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

(40) этот код еще не пробовала.

(45) поняла, извините.
Не правильно указала, ПС лишнее в том посте.
На рабочем постоянно, выдает ошибку: Неудачная попытка создания объекта (V77.Application) (46) anit135, платформу переустановить пробовали? ОС какая? (49) anit135, аналогичным образом нужно все переменные, которым любые другие объекты ole базы присваиваются очистить.
Т.е.

OLE отказывается работать, когда я пытаюсь запустить обоработку на удаленном рабочем столе (Сервер2003).
Если же я запускаю 1С на своем локальном компе, то все ОК, даже когда обрабатывается информация из баз, лежащих все на том же сервере.
В чем может быть проблема?

Было бы более конструктивно, если бы вы дали больше информации. Конкретно как не работает, на каком этапе это происходит, если выдает ошибку, то напишите сюда текст ошибки.

Оригинал = СоздатьОбъект("V77.Application");
Каталог = "Z:\ЧЧЧ\Форест 2008 (494) новая\";
Пользователь = "ЧЧЧ";
Пароль = "";
МонопольныйРеж = "";
ЗапускБезЗаставки = 0;
РезультатПодключения = Оригинал.Initialize ( Оригинал.RMTrade , "/d" +
СокрЛП(Каталог) + " /n" + СокрЛП(Пользователь)+
" /p" + СокрЛП(Пароль) + МонопольныйРеж,
?(ЗапускБезЗаставки = 1,"NO_SPLASH_SHOW",""));
Если РезультатПодключения = 0 Тогда
Предупреждение("Не удалось подключится к указанной базе - проверьте вводные!");
Иначе
Сообщить("Подключение произведено");
КонецЕсли;

вот и выдает мне: Не удалось подключится к указанной базе - проверьте вводные!

Z:\. Это типа сетевой диск у вас ? С локального компа к серванту стучитесь ? Да, Z - это на сервере. И что?
Когда я со своего рабочего места туда же стучусь, то работает. А с удаленного рабочего стола - нет Получается, что местонахождение рабочей базы - не имеет значения.
А зависит от того, с какого места сама программа На серваке какая 1с-ина стоит ? С удаленого рабочего стола, сама 1с-ина по этому пути запущается вообще ? В зависимости от версии 77 подключаться через объекты
"V1CEnterprise.Application", "версия независимый ключ (V1CEnterprise)");
"V77.Application", "версия зависимый ключ (V77)");
"V77S.Application", "версия зависимый ключ, SQL версия (V77S)");
"V77L.Application", "версия зависимый ключ, локальная версия (V77L)");
"V77M.Application", "версия зависимый ключ, сетевая версия (V77M)");
**V77.Application
Смените на V1CEnterprise.Application
Или V77S для SQL версии и V77M для сетевой.
Еще попробуйте каталог привести к короткому и англоязычному виду. Засунь свой каталог в . :)
Каталог = """Z:\ЧЧЧ\Форест 2008 (494) новая\""";

Ну почему всегда находится такой человек, как vovan519.

Спасибо, попробую.
Убрала русский язык. Не помогло

Попробуй. Проблема не в русском языке, а в пробелах. А для того чтобы передать строку с пробелами в командную строку, необходимо ее ограничить кавычками.
Удачи. Все тщетно(((((((.
1. Я убрала русский так (и в пользователе тоже):
Каталог = "Z:\WWW\F\";
Пользователь = "WWW";
2. Ни один из предложенных вариантов не помог, причем, когда я использую V77.Application он достаточно долго ковыряется (примерно также, как в работающем варианте), а потом sorry. Все же остальные варианты отметает мгновенно, сразу после нажатия на кнопку.

Что-то я внимательно посмотрела на окошко "О программе", и узрила, что у меня на сервере
1С:Предприятие 7.7 для SQL

Но все равно не проходит V77S.Application

Ну попробуйте упростить командную строку в initialize, не задавайте параметры пользователя режима пароля. или сведите его к виду (Оригинал.RMTrade ,"/dZ:\WWW\F /M /NWWW","")
PS Надеюсь диск Z у Вас подключен и там есть каталог WWW в котором есть каталог F, где лежит Ваша база :-) и у Вас есть права на запись и чтение этого каталога :-)))
ЗЫ /M - это запуск в монопольном режиме, этот параметр нужно убрать если запускаете в разделенном режиме

Пишет: Неудачная попытка создания объекта (V77.Application)
или Неудачная попытка создания объекта (V77S.Application) - смотря что поставлю.

А непосредственно на компе у меня сетевая версия.

Используйте Всегда "V1CEnterprise.Application" .

Уже просто боюсь показаться грубым и невежественным мужланом.
Было бы намного конструктивней, если бы все отвечающие узнали о том, в чем собственно у Вас проблема? В инициализации или создании объекта? А то в начале ветки речь о первом, сейчас о втором.

(((((Неудачная попытка создания объекта (V1CEnterprise.Application)
Так что пишет, то и говорю. Не знаю, почему изменилось.

Если бы я еще и программистом была, наверно, не задавала бы такие вопросы.

Попробовала следующее:
1. Обе сравниваемые базы перенесла на сервере в каталог C:\1Cv77. Саму обработку положила туда же.
2. Пробовала
Оригинал = СоздатьОбъект("V1CEnterprise.Application");
и
Оригинал = СоздатьОбъект("V77S.Application");
3. Использовала предложенный вариант:
РезультатПодключения = Оригинал.Initialize (Оригинал.RMTrade ,"/dC:\1Cv77\F /M /NWWW","");

Ответ всегда один:
Оригинал = СоздатьОбъект("V1CEnterprise.Application");
Неудачная попытка создания объекта (V1CEnterprise.Application)

или
Оригинал = СоздатьОбъект("V77S.Application");
Неудачная попытка создания объекта (V77S.Application)

При использовании СоздатьОбъект("V77.Application")
долго думает, потом пишет то же самое:
Оригинал = СоздатьОбъект("V77.Application");
Неудачная попытка создания объекта (V77.Application)

При создании ole-соединения в 1cv77 в строчке
База=СоздатьОбъект("V77S.Application");
выдает ошибку: Неудачная попытка создания объекта (V77S.Application)
Подскажите из-за чего вылетает с ошибкой ?

а V77S.Application есть? движок устанавливал или скопировал?

(5) Зачем? Достаточно просто один раз запустить скопированную.

+(5) Ну а текст ты сам знаешь: "Чё ж я, дурак, ветоку реестра не перенес-то!!"

(7) Как это зачем. А поругать себя таким образом за забывчивость? :)

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

Права то в 1с-ине есть хоть? На использование оле автомейшен ?

на том компьютере что не запускался не было ole32.dll . скопировал . зарегил
. все равно не пашет

---
что в реестре по поиску "V77S.Application" выдает в CLSID?

(20) - выдает .. нашел . там - HKEY_CLASSES_ROOT\CLSID\
. там в LocalServer32 прописан путь к 1с-ке .. он не меняется после запуска 1с-ки вне зависимости из какого каталога запускаешь платформу .
хотя запускаю из под админа .

(20) А сам ProgID V77S.Application в HKEY_CLASSES_ROOT - прописан?

(20) // что в реестре по поиску "V77S.Application" выдает в CLSID?
ошибку
(22) да

кажется что 1с-ка каким-то образом не может изменить реестр .

(24) сказали же - запусти 1 раз под админскими правами, 1с сама пропишется в реестр
---
>он не меняется после запуска 1с-ки вне зависимости из какого каталога запускаешь платформу
т.е. тебе по Оле надо еще и определенную версию 1с запускать?
Нафига тебе несколько скульных дистрибов?

(25) запустил с правами админа . 1с-ка не прописывается в реестре

>т.е. тебе по Оле надо еще и определенную версию 1с запускать?
Нафига тебе несколько скульных дистрибов?
Я пытался добиться изменения в реестре ..чтоб другой каталог платформы прописался в реестре . А 1с-ка ничего не меняет в реестре

MATEVI --> MATEVI



Просмотр профиля

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

Получение данных из Excel.
Доступ из 1С к Excel производится посредством OLE. Например, код

позволит нам получить доступ через переменную "Эксель" к запущенному приложению Excel. А далее уже можно получить доступ к книге (файлу), листу и ячейке с данными. Далее примеры кода.
Открытие книги (файла):

ПутьКФайлу - полный путь к файлу книги Excel.
Выбор листа книги для работы с ним:

НомерЛиста - номер листа в книге, ИмяЛиста - имя листа в книге.
Получение значения ячейки листа:

НомерСтроки, НомерКолонки - номер строки и номер колонки, на пересечении которых находится ячейка.
Важно: не забывайте поле выполнения нужных действий добавлять код Эксель.Quit(); , иначе запущенный процесс останется незавершенным и будет занимать память и процессор компьютера.
Вывод данных в Excel.
Для вывода (выгрузки) данных в Excel необходимо либо открыть существующую книгу, либо создать новую, и выбрать рабочий лист для вывода данных. Открытие существующей книги описано выше, а для создания новой книги нужно использовать следующий код:

Так как при создании книги в Excel автоматически создаются листы (Сервис->Параметры->Общие->Листов в новой книге), то нужно лишь произвести выбор листа, с которым будет вестись работа:

либо добавить в книгу новый лист, если необходимо:

Следующим шагом будет установка значения ячейки:

НомерСтроки, НомерКолонки - номер строки и номер колонки, на пересечении которых находится ячейка.
И в конце нужно произвести запись созданной книги:

ПутьКФайлу - полный путь к файлу книги Excel (включая имя).
Важно: не забывайте, что в имени файлов не должно содержаться символов / : * ? " > < |.

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