Совместимость Delphi с.NET

Я хотел бы подойти к этому с помощью коррелированного подзапроса:

select t.*,
       (select count(*)
        from t t2
        where t2.start_time <= t.start_time and
              t2.end_time >= t.end_time
       ) as num_concurrent_calls
from t;
6
задан user71947 27 February 2009 в 16:52
поделиться

5 ответов

Я не использовал его, но проверяю RemObject Гидра.

Гидра помогает собственный Delphi смешивания и подгонки и управляла кодом.NET в отдельном приложении, позволяя разработчикам выбрать лучший набор технологий для их потребностей.

В основном можно встроить Визуальный и невидимый код.NET в приложении Delphi и работать с ним точно так же, как это - собственный компонент Delphi. У них есть бесплатная демонстрационная версия, и существует конкурс, работающий прямо сейчас, где можно выиграть бесплатный экземпляр путем рассмотрения бесплатной демонстрационной версии.

Кроме того затем можно использовать.NET через COM в Delphi. Блок.NET может быть в C#, Призме, VB.NET или любом языке.NET.

7
ответ дан 8 December 2019 в 14:47
поделиться

Существует несколько опций:

  • Возможно создать и выставить класс.NET в блоке как управление COM (interop) так, чтобы это было применимо в Delphi.

  • Delphi был .NET некоторое время (но это не был самый яркий час Delphi), таким образом, с Delphi 2006, например, можно использовать Delphi в качестве языка .NET. Однако точно так же, как, если не больше, какое-либо другое изменение версии Delphi, существуют несовместимости с более старым исходным кодом.

РЕДАКТИРОВАНИЕ, Чтобы сделать первый метод, Вы захотите создать свой блок с классами/функциональностью, в которых Вы нуждаетесь на языке.NET и компилируете его. Необходимо закончить с DLL.

В Delphi, в соответствии с меню Component, избранный Компонент Импорта (это должно быть ниже Пакетов Установки). Вы получите мастер, который должен иметь 3 радио-опции

  • Импортируйте Библиотеку типов
  • Импортируйте элемент управления ActiveX
  • Импортируйте блок.NET

Выберите третье, и Вы будете видеть список глобально зарегистрированных блоков. Так как Вашим блоком является просто анонимный DLL, нажмите Add около нижней части, и в открытом диалоговом окне выбирают DLL.

На следующей странице Вы будете запрошенной информацией палитры. Здесь у Вас есть выбор - указывают, что Ваша папка проектов и отпуск "Генерируют Обертки Компонента", неконтролируемые для добавления блока к проекту только. Другой выбор состоит в том, чтобы поместить его в lib или другую глобальную папку и проверить опцию обертки, которая добавит его к палитре инструментов для всех проектов.

Последний экран спросит, хотите ли Вы добавить, это к Вашему текущему проекту (зависит от если Вы где, добавляя его глобально или только к одному проекту).

Когда все сделано, необходимо смочь создать экземпляры класса .NET в Delphi с чем-то вроде этого:

var MyCSharpClassInstance: TMyCSharpClassProvider;
begin
     MyCSharpClassInstance:=CoTMyCSharpClassProvider.Create;
     …
     MyCSharpClassInstance.Free;
End
7
ответ дан 8 December 2019 в 14:47
поделиться

Я полагаю, что Delphi, с несколько версий назад, имеет компиляцию.NET.

http://www.codegear.com/products/bds2006

"Developer Studio 2006 включает полную поддержку RAD C и C# в дополнение к Delphi Win32 и Delphi для языков программирования.NET".

0
ответ дан 8 December 2019 в 14:47
поделиться

Можно скомпилировать код Delphi для.NET с помощью последней Призмы Delphi (т.е. 2009). Возможно сделать блок.NET из файлов Delphi, и их расширяют тот классы, использующие регулярно C#.

Если Ваши классы изолируются, можно также использовать дополнительные методы.

2
ответ дан 8 December 2019 в 14:47
поделиться

Вы могли взглянуть здесь, они производят компилятор для Delphi. Сеть. Это могло возможно быть путем вперед.

0
ответ дан 8 December 2019 в 14:47
поделиться
Другие вопросы по тегам:

Похожие вопросы: