Delphi ใช้ DLL เพื่อใช้ตัวอย่างปลั๊กอินง่ายๆ
นี่คือรหัสของ DLL
รหัสการใช้งาน:
ไลบรารี MyDll; ใช้ SysUtils, Dialogs, Classes; สิ้นสุด; ส่งออก ShowInfo, GetCaption; {$R *.res} เริ่มต้นสิ้นสุด
นี่คือรหัสที่เรียกแบบฟอร์ม
ตัวอย่างนี้ใช้ DLL เดียวเท่านั้น ดังนั้นเมื่อมี DLL หลายตัว คุณจะต้องวนซ้ำไดเร็กทอรีที่มี DLL อยู่และโหลด DLL ตามลำดับ
หน่วยหลัก อินเทอร์เฟซใช้ Windows, ข้อความ, SysUtils, ตัวแปร, คลาส, กราฟิก, การควบคุม, แบบฟอร์ม, กล่องโต้ตอบ, StdCtrls, เมนู, ExtCtrls; พิมพ์ TShowInfo = ขั้นตอน (ข้อมูล: PChar); stdcall = function : PChar; stdcall; = คลาส (TForm) Button1: TButton; Button2: TButton; TMainMenu; Image1: TImage; Procedure Button2Click (ผู้ส่ง: TObject); ส่วนตัว { การประกาศส่วนตัว } FHandel: THandle; // DLL จัดการ FProAddress: Pointer; // ที่อยู่ของ ShowInfo ใน DLL showinfo: TShowInfo; ของขั้นตอน DLL LoadPlusIn; // โหลดปลั๊กอิน (DLL) ขั้นตอน ItemClick (ผู้ส่ง: TObject); // เมนูกำหนดเองคลิกเหตุการณ์สาธารณะ { ประกาศสาธารณะ } end; var Form1: TForm1; ; //รับที่อยู่ถ้า @showinfo <> ไม่มีเลย showinfo(PWideChar(TMenuItem(Sender).Caption)); //ดำเนินการ ShowInfo ในตอนท้าย DLL; กำลังโหลดถ้า FHandel = 0 ให้เริ่ม ShowMessage ('การโหลดล้มเหลว! '); ออก; end else start @getcaption := GetProcAddress(FHandel,'GetCaption'); //รับที่อยู่ GetCaption ใน DLL ถ้า @getcaption <> ไม่มี จากนั้นเริ่มรายการ := TMenuItem.Create(MainMenu1); สร้างรายการเมนู Caption := getcaption; //Get the Caption นั่นคือ เรียก GetCaption ใน DLL FProAddress := GetProcAddress(FHandel,'ShowInfo'); //รับที่อยู่ของ ShowInfo ในรายการ DLL.OnClick := ItemClick; //กำหนดเหตุการณ์คลิกให้กับรายการเมนู MainMenu1.Items.Add(item); เมนูหลัก สิ้นสุด ; สิ้นสุด ;
หากคุณมีคำถามใด ๆ โปรดฝากข้อความหรือไปที่ชุมชนของไซต์นี้เพื่อสื่อสารและหารือกัน ขอขอบคุณสำหรับการอ่าน ฉันหวังว่ามันจะช่วยทุกคนได้