Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / COM Interop (BEX Problem) / 3 сообщений из 3, страница 1 из 1
10.11.2013, 17:14
    #38459412
xpoft2010
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
COM Interop (BEX Problem)
Имеется COM dll, написана на Visual FoxPro, вот код:
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
DEFINE CLASS Person as Custom OLEPUBLIC

HIDDEN age as Integer

FUNCTION init

this.age = 15

endfunc

FUNCTION getAge as Integer

RETURN this.Age

endfunc

PROCEDURE doSomething


endproc

enddefine



Успешно скомпилен в dll, типы из которой импортирую в сборку .NET с помощью Tlbimp.exe.
К .NET проекту сборка подключается без проблем.
Класс Person в так же создается без проблем, но при попытке вызова функции или процедуры получаю:

Код: c#
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
Problem signature:
  Problem Event Name:	BEX
  Application Name:	ConsoleApplication3.vshost.exe
  Application Version:	12.0.20827.3
  Application Timestamp:	521cb6f2
  Fault Module Name:	StackHash_8a20
  Fault Module Version:	0.0.0.0
  Fault Module Timestamp:	00000000
  Exception Offset:	0611d1e2
  Exception Code:	c0000005
  Exception Data:	00000008
  OS Version:	6.1.7601.2.1.0.256.1
  Locale ID:	1049
  Additional Information 1:	8a20
  Additional Information 2:	8a20cb64e57b178f10a0e71d9f5e130d
  Additional Information 3:	a5b1
  Additional Information 4:	a5b1ff5be066511d3b7deb7dafe5cb98


Приложение просто схлопывается. Подскажите, по какой причине подобная проблема возникает?
...
Рейтинг: 0 / 0
10.11.2013, 17:18
    #38459417
xpoft2010
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
COM Interop (BEX Problem)
Чуть больше информации:

При при попытке вызова метода или функции экземпляра класса Person (как раз тут и возникает проблема), прилетает ComException - с пометкой:

Код: c#
1.
The server threw an Exception. Exception from HRESULT: 0x80010105 (RPC_E_SERVERFAULT)
...
Рейтинг: 0 / 0
10.11.2013, 17:23
    #38459424
xpoft2010
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
COM Interop (BEX Problem)
Дальше интереснее:

Поставил атрибут запуска приложения [STAThread]
теперь получаю System.AccessViolationException где то на подсознательном уровне предполагаю, что это логичное поведение системы, но не уверен.
...
Рейтинг: 0 / 0
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / COM Interop (BEX Problem) / 3 сообщений из 3, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]