Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2008.08.03;
Скачать: CL | DM;

Вниз

Вызов подпрограмм из DLL, написанных на C# из Delphi   Найти похожие ветки 

 
Darvin   (2008-06-18 11:44) [0]

Здравствуйте!
Как можно осуществить сабж и можно ли вообще. Я вызываю подпрограммы из DLL, написанных на C++ как статически, так и динамически, используя stdcall. А вот с C# возникла проблема. Нужно написать DLL на C# и вызывать из нее подпрограммы из Delphi.


 
KSergey ©   (2008-06-18 11:56) [1]

А смотря как эти DLL предполагают к себе доступ.
Если это COM или вообще обычные функции, предполагающие к себе обращение из неманаджет кода - то реально, если предполагается .NET-ремоутинг какой-либо, то может и реально (я не умею), но явно очень скучно.

Хотя, а какой версии дельфи и .NET имеется в виду?


 
@!!ex ©   (2008-06-18 12:01) [2]

dll на C#????
Я похоже чего то не понимаю... Но этож редкое извращение...


 
Darvin   (2008-06-18 12:03) [3]

>KSergey ©  
>А смотря как эти DLL предполагают к себе доступ
И DLL и вызывающая программа на Delphi пишутся самостоятельно, так что как напишем, так и будет, вопрос, как это можно написать, чтоб работало.
>Хотя, а какой версии дельфи и .NET имеется в виду?
Delphi7, .Net - не знаю, пишет разработчик, находящийся далеко.


 
DiamondShark ©   (2008-06-18 12:04) [4]


> А смотря как эти DLL предполагают к себе доступ.

А какие могут быть варианты?
Managed code или COM-interop. Третьего не дано.


> dll на C#????
> Я похоже чего то не понимаю... Но этож редкое извращение.

Похоже, ты чего-то не понимаешь.


> Darvin   (18.06.08 11:44)  

COM-interop тебе в руки.


 
Darvin   (2008-06-18 12:04) [5]

>@!!ex ©   (18.06.08 12:01) [2]
то есть это невозможно?


 
Игорь Шевченко ©   (2008-06-18 12:04) [6]

Через COM-обертки


 
DiamondShark ©   (2008-06-18 12:08) [7]


> Delphi7, .Net - не знаю, пишет разработчик, находящийся
> далеко.

Хм... @!!ex -- мои извинения.
Это действительно редкое извращение.

А если не секрет, можно разработчика, который далеко, как-нибудь пнуть, чтобы он не страдал фигнёй?
Дело в том, что пинать всё равно придётся: сборку для COM-interop хоть и чуть-чуть, но напильником подправлять надо. Может тогда сразу пнуть посильнее, чтобы писал на Дельфи или на Си?


 
DiamondShark ©   (2008-06-18 12:12) [8]


> Darvin   (18.06.08 12:04) [5]
> то есть это невозможно?

Это возможно, причём аж двумя путями.

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


 
palva ©   (2008-06-18 12:24) [9]

Если на машине гарантированно имеется Net Framework, то имеет смысл полностью перейти на управляемый код.


 
X9 ©   (2008-06-18 13:55) [10]

> [2] @!!ex ©   (18.06.08 12:01)

Правильнее говорить не "DLL", а "сборка".

Сборка - вовсе не извращение, а вполне нормальный метод разбиения программ на логические единицы, используемый повсеместно.

Автору советую посмотреть директивы компилятора, может быть всплывёт что-нибудь путное.



Страницы: 1 вся ветка

Текущий архив: 2008.08.03;
Скачать: CL | DM;

Наверх




Память: 0.49 MB
Время: 0.019 c
15-1213656789
Riply
2008-06-17 02:53
2008.08.03
NTSTATUS в С++


15-1213701783
No_Dead
2008-06-17 15:23
2008.08.03
«околорезюмный» сабж


2-1214945141
Casper
2008-07-02 00:45
2008.08.03
Можно ли нарисовать прозрачный эллипс на изображении?


3-1203489861
Kolan
2008-02-20 09:44
2008.08.03
Как добавить в DataSet колонку.


15-1213618816
No_Dead
2008-06-16 16:20
2008.08.03
Мнение как пользователя и как разработчика