Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Delphi Новый топик    Ответить
Топик располагается на нескольких страницах: [1] 2   вперед  Ctrl      все
 Использование .NET классов из Delphi5  [new]
В гриде нет данных
Guest
Добрый день !

Заказчик требует использования безопасных классов .НЕТ из нативного приложения на Delphi5 !

Реально ли и как?

Считает, что делфи нужно только для GUI и формочек, а код безопаснее в фреймворке от МС.
15 июл 17, 12:39    [20646745]     Ответить | Цитировать Сообщить модератору
 Re: Использование .NET классов из Delphi5  [new]
В гриде нет данных
Guest
И да, СиШарп не предгалать , я пишу на паскале 30 лет!
15 июл 17, 12:40    [20646749]     Ответить | Цитировать Сообщить модератору
 Re: Использование .NET классов из Delphi5  [new]
Kazantsev Alexey
Member

Откуда:
Сообщений: 2373
В гриде нет данных
Реально ли и как?

По-моему, как-то через COM можно, но сам не делал, помочь не смогу.

В гриде нет данных
И да, СиШарп не предгалать , я пишу на паскале 30 лет!

Есть паскали с поддержкой дотнета. Та же Delphi 2009.NET, PascalABC или RemObjects Oxygene.
15 июл 17, 13:01    [20646773]     Ответить | Цитировать Сообщить модератору
 Re: Использование .NET классов из Delphi5  [new]
Siemargl
Member

Откуда: 010100
Сообщений: 5213
Уж лучше через СОМ.

Потому что без него ужс
https://support.microsoft.com/en-us/help/953836/calling-a-.net-managed-method-from-native-code
15 июл 17, 13:22    [20646800]     Ответить | Цитировать Сообщить модератору
 Re: Использование .NET классов из Delphi5  [new]
JaDi
Member

Откуда: JayDi из Сызрани
Сообщений: 2943
Можно сделать REST-сервис из шарповского кода и вызывать его методы из делфи. Благо интерфейсную-техническую часть можно нагенерировать встроенным средствами.
15 июл 17, 15:22    [20646960]     Ответить | Цитировать Сообщить модератору
 Re: Использование .NET классов из Delphi5  [new]
asutp2
Member

Откуда: :-)
Сообщений: 124
В гриде нет данных
не стоит из древней версии делфи работать с .net-классами. Тут либо delphi.net (которое реальное убожество, никаких денег не хватит лечить себе нервы после такого проекта), либо c#. Или убедить заказчика))
15 июл 17, 17:52    [20647158]     Ответить | Цитировать Сообщить модератору
 Re: Использование .NET классов из Delphi5  [new]
ziv-2014
Member

Откуда:
Сообщений: 55
Можно реализовать через интерфейсы. Но придется в dll на c# создавать таблицу экспортов. Для этого нужно будет декомпилировать dll, вписать в текст нужную команду, далее опять скомпилировать. Тогда можно вызывать интерфейсы из сборок - работать как с обычными dll.
15 июл 17, 20:07    [20647358]     Ответить | Цитировать Сообщить модератору
 Re: Использование .NET классов из Delphi5  [new]
ziv-2014
Member

Откуда:
Сообщений: 55
Вот еще можно посмотреть JCL в нем есть JclDotNet.pas.
15 июл 17, 20:24    [20647370]     Ответить | Цитировать Сообщить модератору
 Re: Использование .NET классов из Delphi5  [new]
rgreat
Member

Откуда:
Сообщений: 3498
http://hydra.remobjects.com/hydra/default.aspx

Но Delphi 5 тут не катит.
16 июл 17, 01:43    [20647690]     Ответить | Цитировать Сообщить модератору
 Re: Использование .NET классов из Delphi5  [new]
ziv-2014
Member

Откуда:
Сообщений: 55
Вот тут можно почитать
https://stackoverflow.com/questions/2048540/hosting-clr-in-delphi-with-without-jcl-example
https://stackoverflow.com/questions/30621704/how-to-test-if-a-olevariant-contains-an-interface
16 июл 17, 16:43    [20648257]     Ответить | Цитировать Сообщить модератору
 Re: Использование .NET классов из Delphi5  [new]
ziv-2014
Member

Откуда:
Сообщений: 55
Siemargl
Уж лучше через СОМ.

Потому что без него ужс
https://support.microsoft.com/en-us/help/953836/calling-a-.net-managed-method-from-native-code

А как заюзать Net 4.0? Этот метод только для версий ниже 4.0?
16 июл 17, 19:32    [20648416]     Ответить | Цитировать Сообщить модератору
 Re: Использование .NET классов из Delphi5  [new]
Siemargl
Member

Откуда: 010100
Сообщений: 5213
ziv-2014,

Он от версии не зависит. Там просто ключик в реестре проверяется, что установлена .NET - для разных версий он немного разный.

Можешь не проверять - вылетит если нет НЕТа
16 июл 17, 20:58    [20648578]     Ответить | Цитировать Сообщить модератору
 Re: Использование .NET классов из Delphi5  [new]
ziv-2014
Member

Откуда:
Сообщений: 55
Siemargl,
Код зависит от версии. А именно для версии net 4.0 нужно использовать другие функции. Тот код, что приведен выше работает только с версиями ниже 4.0 - это написано в MSDN. Для того, чтобы запустить код, скомпилированный под версии 4.0 и выше, нужно использовать другие функции, в частности CLRCreateInstance.
Вот пример, . Но как его перенести на паскаль пока не разобрался.
17 июл 17, 09:35    [20649224]     Ответить | Цитировать Сообщить модератору
 Re: Использование .NET классов из Delphi5  [new]
ziv-2014
Member

Откуда:
Сообщений: 55
ziv-2014, Вот ссылка https://www.codeproject.com/Articles/816578/WebControls/. Как перенести код на паскаль?
17 июл 17, 09:36    [20649229]     Ответить | Цитировать Сообщить модератору
 Re: Использование .NET классов из Delphi5  [new]
b0rk
Member

Откуда: Харьков
Сообщений: 505
ziv-2014
Можно реализовать через интерфейсы. Но придется в dll на c# создавать таблицу экспортов. Для этого нужно будет декомпилировать dll, вписать в текст нужную команду, далее опять скомпилировать. Тогда можно вызывать интерфейсы из сборок - работать как с обычными dll.

можно и без декомпиляции и прочих извращений, если COM объект из DLL зарегестрировать в системе.
17 июл 17, 10:04    [20649310]     Ответить | Цитировать Сообщить модератору
 Re: Использование .NET классов из Delphi5  [new]
ziv-2014
Member

Откуда:
Сообщений: 55
b0rk, Можно сделать, даже если COM не зарегистрирован в системе. Я пока рассматриваю варианты без регистрации COM.
17 июл 17, 10:34    [20649404]     Ответить | Цитировать Сообщить модератору
 Re: Использование .NET классов из Delphi5  [new]
makhaon
Member

Откуда: A galaxy far far away
Сообщений: 1776
ziv-2014,

регистрация - это не больно. одна команда с расширенными правами.
17 июл 17, 10:57    [20649482]     Ответить | Цитировать Сообщить модератору
 Re: Использование .NET классов из Delphi5  [new]
ziv-2014
Member

Откуда:
Сообщений: 55
makhaon
ziv-2014,

регистрация - это не больно. одна команда с расширенными правами.

Я понимаю. Но мне нужны варианты без регистрации COM. Конкретно реализация CLRCreateInstance. Вы это понимаете?
Все предыдущие варианты без регистрации COM я реализовал и они у меня работают. Осталось понять как заюзать CLRCreateInstance.
17 июл 17, 11:24    [20649581]     Ответить | Цитировать Сообщить модератору
 Re: Использование .NET классов из Delphi5  [new]
Tactical Nuclear Penguin
Member

Откуда: холодно тут
Сообщений: 2338
ziv-2014
makhaon
ziv-2014,

регистрация - это не больно. одна команда с расширенными правами.

Я понимаю. Но мне нужны варианты без регистрации COM. Конкретно реализация CLRCreateInstance. Вы это понимаете?
Все предыдущие варианты без регистрации COM я реализовал и они у меня работают. Осталось понять как заюзать CLRCreateInstance.


это не поможет?
17 июл 17, 11:37    [20649615]     Ответить | Цитировать Сообщить модератору
 Re: Использование .NET классов из Delphi5  [new]
ziv-2014
Member

Откуда:
Сообщений: 55
Tactical Nuclear Penguin,
Нет не поможет.
17 июл 17, 11:54    [20649698]     Ответить | Цитировать Сообщить модератору
 Re: Использование .NET классов из Delphi5  [new]
ziv-2014
Member

Откуда:
Сообщений: 55
Вот еще пример https://code.msdn.microsoft.com/windowsdesktop/CppHostCLR-e6581ee0
В общем понятно стало.
17 июл 17, 22:17    [20652035]     Ответить | Цитировать Сообщить модератору
 Re: Использование .NET классов из Delphi5  [new]
Arioch
Member

Откуда:
Сообщений: 8963
asutp2
Тут либо delphi.net (которое реальное убожество, никаких денег не хватит лечить себе нервы после такого проекта)


Это ранняя версия Oxygen

Но тут надо действительно понимать, что по идеологии RemObjects весь GUI рисуется родными средствами платформы (iOS, Android, Windows), а общий код - только "бизнес-объекты".

http://www.deltics.co.nz/ - тут в блоге один островитянин уже ггода два с Дельфи на Оксиген спрыгнул и радуется, можно по его блогу посмотреть насколько этот язык похож / уехал от Дельфи
18 июл 17, 11:02    [20652881]     Ответить | Цитировать Сообщить модератору
 Re: Использование .NET классов из Delphi5  [new]
Kazantsev Alexey
Member

Откуда:
Сообщений: 2373
Arioch
Это ранняя версия Oxygen

Ранний Oxygene это Delphi Prism, а Delphi.NET это то, что было до призмы (жило оно с Delphi 8 по Delphi 2009).
18 июл 17, 19:17    [20655390]     Ответить | Цитировать Сообщить модератору
 Re: Использование .NET классов из Delphi5  [new]
Victor Cookin
Member

Откуда: Самара
Сообщений: 469
у меня есть проект на Delphi 5, он вызывает DLL на C#, DLL заполняет String Grid по принимаемому JSON файлу. Этот Grid помещается внутрь Delhi приложения и они обмениваются сообщениями. К примеру, при изменении выделенной ячейки в гриде изменяется текст в статус-строке дельфийского приложения.
Ничего особо сложного. Сделано было чтоб на Delphi 5 не возиться с JSON, так как лёгких путей не нашёл.
20 июл 17, 18:07    [20662464]     Ответить | Цитировать Сообщить модератору
 Re: Использование .NET классов из Delphi5  [new]
GunSmoker
Member

Откуда:
Сообщений: 2882
Victor Cookin
Сделано было чтоб на Delphi 5 не возиться с JSON

20 июл 17, 18:55    [20662598]     Ответить | Цитировать Сообщить модератору
Топик располагается на нескольких страницах: [1] 2   вперед  Ctrl      все
Все форумы / Delphi Ответить