Имя: Пароль:
1C
1С v8
внешняя компонента namedecl.dll
0 wwwqwert2014
 
23.09.13
16:41
Задача: подключить внешнюю компоненту. Что я только не перепробовал. и код с ИТС и код с форумов, ничего не получается. Куда я эту компоненту только ни копировал. и в папку с базой и в папку bin с 1ской и на диск с и даже в system32.
Я её подключал как здесь было написано:
regsvr32 c:/namedel.dll
и даже так:
regsvr32 c:/windows/system32/namedel.dll
при подключении пишет что все ок, а в коде ошибка на одном и том же месте:
    Попытка
  ЗагрузитьВнешнююКомпоненту("C:\windows\system32\NAMEDECL.DLL");
  Объект=Новый("AddIn.NameDeclension");
Исключение
  Сообщить("Ошибка загрузки внешней компоненты для склонения ФИО! Функции склонения будут недоступны!" + ОписаниеОшибки());
КонецПопытки;
  ФИО = "Иванов Иван Иванович";
  ФИОРодительный = "";

Падеж=2;
ФИОРодительный=Объект.Просклонять(ФИО, Падеж);


ОШибка здесь:
ЗагрузитьВнешнююКомпоненту("C:\windows\system32\NAMEDECL.DLL");

Я и так пробовал  ЗагрузитьВнешнююКомпоненту("NAMEDECL.DLL");
нифига не работает. Что делать?
1 Волшебник
 
модератор
23.09.13
16:45
&НаСервере
Функция СклонениеФИО(СтрокаФИО,Падеж)
     Результат = "";
     ПутьККомпоненте = КаталогПрограммы()+ "NameDecl.dll";
     NameDecl = "AddIn.NameDeclension";
     Попытка
        Если ПодключитьВнешнююКомпоненту(ПутьККомпоненте,NameDecl)ТОгда
            Результат = NameDecl.Просклонять(СтрокаФИО,Падеж); ;
        КонецЕсли;
     Исключение
         Сообщить("Не удалось загрузить внешнюю компаненту по причине: "+ОписаниеОшибки());
     КонецПопытки;
     Возврат Результат;
КонецФункции
2 wwwqwert2014
 
23.09.13
16:46
спасибо
3 wwwqwert2014
 
23.09.13
17:26
Все работает, когда в конфигфигураторе подключаешь. Когда же подключаешь как внешнюю печатную форму, ругается:
{ВнешняяОбработка.ВПФ_Акт.МодульОбъекта(71)}: Ошибка при вызове метода контекста (УстановитьБезопасныйРежим): В данной процедуре/ функции не был установлен безопасный режим
Я пробовал сделать так:
    Попытка    
        УстановитьБезопасныйРежим(Ложь);
  ПодключитьВнешнююКомпоненту(КаталогПрограммы() + "NAMEDECL.DLL", "Скл");
  ОбъектСклонение=Новый("AddIn.Скл.NameDeclension");
Исключение
  Сообщить("Не удалось подключить внешнюю компоненту NAMEDECL.DLL! Функции склонения недоступны" + КаталогПрограммы());
  Сообщить(ОписаниеОшибки());

Конецпопытки;
Но это не помогло. В другом месте надо безопасный режим отключать?
Основная теорема систематики: Новые системы плодят новые проблемы.