tailieunhanh - Buit Windows By C.Net part 8

Hàm DllMain với tham số DLL_PROCESS_ATTACH được gọi khi process tiến hành load DLL. Thư viện DLL đang được Windows ánh xạ vào vùng nhớ của tiến trình (thực hiện lời gọi DLL). | CHƯƠNG 1-4 Làm việc với bộ quản lý C cl LD link DEF Gác DLL này có thể được dùng bởi chương trình c hay VB mà bạn viết. Khả nănggọi DLL kiểu cũ với mã lệnh hay ngôn ngữ kiểu mới này sẽ gìn giữ các đầu tư của bạn ở các mã lệnh ứng dụng và công cụ cũ khi bạn muốn chuyển sang kiến trủc .NET. Đế minh họa chúng ta sẽ viết một chương trình cực kỳ đơn gián Q .cho thấy cách dùng lớp được quản lý C vả DLL không được quản lý. Ví dụ cho thấy mã lệnh của tập tin thực thi . Ví dụ Một chương trinh C đơn giản cho thấy cách dùng DLL í using System 2 using 3 using System. 10 4 using 5 6 using cppdll 7 8 class dlltester 9 10 11 Dlllmport 12 MarshalAs 13 public static extern string DllFunction int n 14 í 15 static void Main 16 17 18 Đầu tiên method trong C dll được gọi. 19 AClass pC new AClass 20 . pC . FirstMethod 10 21 22 Bây giờ gọi hầm bao bọc cho DLL không dược quán lý 23 DllFunction 10 2 25 26 Sử dụng DLL của managed C khá rõ ràng nhưng cái không được quản lý thì phức tạp hơn. Chúng ta khảo sát phấn làm cho sự tương tác với mã lẹnh không được quản lý là có thể. Dòng mã lệnh 11 12 và 13 ở ví dụ cho ta thấy cách tạo ra một tấm phủ wrapper cho một hàm trong một DLL không được quán lý. Cách này dùng các thuộc tính attribute để tạo ra một proxy cho các mã lệnh không được quán lý 074 PHẤN ĩ Mở đầu và sắp đặt các tham số và kiểu trả về từ và đến các phần không dược khai báo của hệ thống. Thuộc tính IDllImport . chỉ rõ rằng dấu hiệu của hàm theo sau là một thứ dược xuât khẩu bởi DLL được đạt tên trong trường hợp này là mà chúng ta đã tạo ở ví dụ . Hàm này trả về một char đến một vùng đệm mà nó được cấp phát. Tuy nhiên bộ thực thi được quản lý sẽ cần dữ liệu trả về để được đóng gói trong một đối tượng thân .

crossorigin="anonymous">
Đã phát hiện trình chặn quảng cáo AdBlock
Trang web này phụ thuộc vào doanh thu từ số lần hiển thị quảng cáo để tồn tại. Vui lòng tắt trình chặn quảng cáo của bạn hoặc tạm dừng tính năng chặn quảng cáo cho trang web này.