Переключение на Главную Страницу Страницы: 1 ОтправитьПечать
Обычная тема Компонента для 1с 7.7, не срабатывает Init() и Done() (число прочтений - 5195 )
DrunkProgrammer
Full Member
***
Отсутствует


I Love YaBB 2!

Сообщений: 128
Зарегистрирован: 28. Декабря 2007
Компонента для 1с 7.7, не срабатывает Init() и Done()
20. Мая 2009 :: 05:46
Печать  
Доброе время суток!
Понадобилось компоненту написать, ну и возникла непонятка: методы Init() и Done() не срабатывают. Более того, я даже убрал реализаацию интерфейса IInitDone(), так компонента загрузилась  и создан был экземпляр класса без всякой ругани. Сразу скажу, компонента точно загрузилась;я создал в ней класс, в котором создал метод, выдающий определенное сообщение, т.е. я изменил в компоненте текст сообщения, убрал реализацию интерфейса IInitDone()перекомпиллировал компоненту, запустил 1с, загрузил компоненту и когда вызвал тот метод, то получил новое сообщение.
  
Наверх
 
IP записан
 
PVR
God Member
*****
Отсутствует



Сообщений: 622
Зарегистрирован: 19. Ноября 2007
Пол: Мужской
Re: Компонента для 1с 7.7, не срабатывает Init() и Done()
Ответ #1 - 20. Мая 2009 :: 05:56
Печать  
на каком языке написана ВК?
исходники  Улыбка
  
Наверх
 
IP записан
 
DrunkProgrammer
Full Member
***
Отсутствует


I Love YaBB 2!

Сообщений: 128
Зарегистрирован: 28. Декабря 2007
Re: Компонента для 1с 7.7, не срабатывает Init() и Done()
Ответ #2 - 20. Мая 2009 :: 06:04
Печать  
C#
  
Наверх
 
IP записан
 
berezdetsky
1c++ power user
Отсутствует


barba non facit sisadminum

Сообщений: 1986
Местоположение: Москва
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: Компонента для 1с 7.7, не срабатывает Init() и Done()
Ответ #3 - 20. Мая 2009 :: 06:38
Печать  
DrunkProgrammer писал(а) 20. Мая 2009 :: 05:46:
Более того, я даже убрал реализаацию интерфейса IInitDone(), так компонента загрузилась  и создан был экземпляр класса без всякой ругани.

Это COM-объект был создан, а ЗагрузитьВнешнююКомпоненту() вернуло 0.

Написание внешних компонент для 1С на VB.NET и C#
  

пароль как коньяк, чем больше звездочек, тем лучше
Наверх
IP записан
 
DrunkProgrammer
Full Member
***
Отсутствует


I Love YaBB 2!

Сообщений: 128
Зарегистрирован: 28. Декабря 2007
Re: Компонента для 1с 7.7, не срабатывает Init() и Done()
Ответ #4 - 20. Мая 2009 :: 06:48
Печать  
Действительно, ЗагрузитьВнешнююКомпоненту возвращает 0, но я использовал старый шаблон, который раньше работал, впрочем, может я его когда-то исправил, но не протестировал.

Вот артибуты сборки:
Код
Выбрать все
using System.Reflection;
using System.Runtime.CompilerServices;
using System.Runtime.InteropServices;
using System.EnterpriseServices;

// General Information about an assembly is controlled through the following
// set of attributes. Change these attribute values to modify the information
// associated with an assembly.
[assembly: AssemblyTitle("ORCAS7")]
[assembly: AssemblyDescription("")]
[assembly: AssemblyConfiguration("")]
[assembly: AssemblyCompany("")]
[assembly: AssemblyProduct("ORCAS7")]
[assembly: AssemblyCopyright("Copyright ©  2008")]
[assembly: AssemblyTrademark("")]
[assembly: AssemblyCulture("")]

// Setting ComVisible to false makes the types in this assembly not visible
// to COM components.  If you need to access a type in this assembly from
// COM, set the ComVisible attribute to true on that type.
[assembly: ComVisible(true)]

// The following GUID is for the ID of the typelib if this project is exposed to COM
[assembly: Guid("c4d69827-df4f-40dd-9d6c-8fd6db9d0032")]
[assembly: ApplicationActivation(ActivationOption.Library)]

// Version information for an assembly consists of the following four values:
//
//	Major Version
//	Minor Version
//	Build Number
//	Revision
//
// You can specify all the values or you can default the Revision and Build Numbers
// by using the '*' as shown below:
[assembly: AssemblyVersion("1.0.0.0")]
[assembly: AssemblyFileVersion("1.0.0.0")] 

  
Наверх
 
IP записан
 
DrunkProgrammer
Full Member
***
Отсутствует


I Love YaBB 2!

Сообщений: 128
Зарегистрирован: 28. Декабря 2007
Re: Компонента для 1с 7.7, не срабатывает Init() и Done()
Ответ #5 - 20. Мая 2009 :: 06:51
Печать  
Все разобрался, нужно использовать ПодключитьВнешнююКомпоненту().
Спасибо!
  
Наверх
 
IP записан
 
Переключение на Главную Страницу Страницы: 1
ОтправитьПечать