Có một vài lựa chọn:
Nó có thể tạo ra và phơi bày một lớp .NET trong một hội đồng như một điều khiển COM (interop) để nó có thể sử dụng trong Delphi.
Delphi là .Net trong một thời gian (nhưng nó không phải là giờ sáng nhất của Delphi), vì vậy với Delphi 2006 chẳng hạn bạn có thể sử dụng Delphi làm ngôn ngữ .Net. Tuy nhiên, giống như, nếu không nhiều hơn như vậy, bất kỳ thay đổi phiên bản Delphi khác, có những không tương thích với mã nguồn cũ hơn.
EDIT Để làm phương pháp đầu tiên, bạn sẽ muốn tạo lắp ráp của bạn với các lớp/chức năng mà bạn cần trong một ngôn ngữ .NET và biên dịch nó. Bạn nên kết thúc với một DLL.
Trong Delphi, trong menu Thành phần, hãy chọn Nhập thành phần (nó phải ở dưới Gói cài đặt). Bạn sẽ nhận được một thuật sĩ mà cần phải có 3 lựa chọn đài phát thanh
- thư viện kiểm soát Loại nhập
- nhập ActiveX
- nhập NET hội
Chọn thứ ba và bạn sẽ thấy một danh sách của các hội đồng đăng ký toàn cầu. Kể từ khi lắp ráp của bạn chỉ là một DLL vô danh, hãy nhấp vào Thêm gần phía dưới và trong hộp thoại mở chọn DLL.
Trên trang tiếp theo, bạn sẽ được hỏi thông tin về bảng màu. Ở đây bạn có một sự lựa chọn - chỉ định thư mục dự án của bạn và để lại "Tạo thành phần đóng gói" bỏ chọn để thêm lắp ráp cho dự án của bạn mà thôi. Một lựa chọn khác là đặt nó vào thư mục lib hoặc global khác và kiểm tra tùy chọn wrapper, nó sẽ thêm nó vào bảng công cụ cho tất cả các dự án.
Màn hình cuối cùng sẽ hỏi xem bạn có muốn thêm nó vào dự án hiện tại của bạn hay không (phụ thuộc vào việc bạn thêm nó trên toàn cầu hay chỉ cho một dự án).
Khi tất cả được thực hiện bạn sẽ có thể tạo thể hiện của lớp Net của bạn trong Delphi với một cái gì đó như thế này:
var MyCSharpClassInstance: TMyCSharpClassProvider;
begin
MyCSharpClassInstance:=CoTMyCSharpClassProvider.Create;
…
MyCSharpClassInstance.Free;
End
+1 cho .NET qua COM. Nó không phải là khó để thiết lập, và nó hoạt động tốt cho các chức năng không trực quan (hoặc các hình thức độc lập). Đối với các plugin nhúng trực quan, bạn sẽ muốn sử dụng Hydra. – skamradt