التعامل مع dll مبرمجة بـ c#.net في ديلفي
#6
السلام عليكم ورحمة الله وبركاته

نم حل المشكل شكرا للاخ TF6M

هذا مثال لتعم الفائدة ان شاء الله

كود ال C#

PHP كود :
// MyInterface.cs
public interface MyInterface
{
    
int Add(int i1, int i2);
} 
PHP كود :
// MyDLL.cs
using System.Runtime.InteropServices;

[
ClassInterface(ClassInterfaceType.None)]
public class 
MyDLL : MyInterface
{
    public 
int Add(int i1, int i2)
    {
        return 
i1+i2;
    }
} 

الان
إقتباس :1- حمل Assembly Registration Tool (Regasm.exe)
2- تحصل على الـ Lib من الـ Dll بهذا الخيار :
PHP كود :
Regasm MyDll.dll /tlb:MyLib.tlb 

إقتباس :3- الأن من المفترض التحصل على ملف MyLib.tlb , قم بنسخه & MyDll.dll , مثلا و أرفقهما
بالبرنامج j(YourApp)
4- إذا كنت تستخدم دلفي 7 , قم بإظافة الـ TLB من :

كود :
Project->Import Type Library -> Add ->

تم اضغط علي Create Unit

5- لا تنسى إظافة :
كود :
uses ComObj, MyDLL_TLB;

للاستدعاء
PHP كود :
procedure TForm1.Button1Click(Sender: TObject);
var
  
intfRef: MyInterface;
  
result: Integer;
begin
  intfRef 
:= CreateComObject(CLASS_MyDLL_) as MyInterface;
  
result := intfRef.Add(2, 2);
..
.
end; 

سلام
الرد


الردود في هذا الموضوع
التعامل مع dll مبرمجة بـ c#.net في ديلفي - بواسطة maosalah - 27-08-2010, 11:37 PM

التنقل السريع :


يقوم بقرائة الموضوع: بالاضافة الى ( 1 ) ضيف كريم