Tệp DLL: chúng là gì và làm thế nào để mở chúng?

Tệp .Dll

Các Tệp DLL (Dynamic Link Library) là một yếu tố cơ bản của lập trình trong hệ điều hành Windows. DLL là viết tắt của "Thư viện liên kết động".

Các tệp này cho phép các chương trình truy cập chức năng và thư viện bổ sung mà chúng không được tích hợp sẵn. Trên thực tế, và mặc dù người dùng bình thường không biết về điều đó, nhưng có nhiều chương trình trên máy tính của chúng tôi sử dụng tệp DLL theo cách kết hợp và chung, do đó cải thiện hiệu suất và hiệu quả của chúng.

Tệp DLL là gì?

Về cơ bản, bạn có thể định nghĩa tệp DLL là tập tin windows Nó chứa thông tin và hướng dẫn cho các chương trình hoặc ứng dụng nhất định.

Nội dung này (chỉ thị, thủ tục, thư viện trình điều khiển và các tài nguyên khác) được các chương trình này sử dụng để kích hoạt một số chức năng không được tích hợp sẵn. Nhờ các tài nguyên bổ sung này, các chương trình này có thể tăng đáng kể hiệu quả và hiệu quả của nó.

Đại đa số người dùng Windows không cần mở hoặc sử dụng tệp DLL cho hầu hết các tác vụ họ thực hiện hàng ngày. Chúng thậm chí không thể nhìn thấy được, vì chúng được lập trình như thế này, để hoạt động kín đáo chỉ đạo các quy trình nội bộ của chương trình: phát âm thanh, hiển thị văn bản, đồ họa, v.v.

Ngay cả những người dùng Windows biết tầm quan trọng của nó và cách thức hoạt động của nó cũng biết rằng các tệp DLL đang ở chế độ nền và chúng thường được cài đặt và sử dụng tự động. Chính các chương trình sẽ tìm đến chúng khi chúng cần, giống như cách chúng ta tham khảo từ điển hoặc sổ tay hướng dẫn để giải quyết một vấn đề hoặc nghi ngờ. Trong bất kỳ trường hợp nào, Không nên xử lý hoặc di chuyển chúng, vì điều này có thể gây ra các vấn đề nghiêm trọng trong hệ thống. Bằng cách sử dụng mô phỏng trực quan, việc di chuyển hoặc sửa đổi một trong các tệp này không đúng cách có thể giống như loại bỏ một thẻ khỏi nền của một dãy thẻ.

Thông thường nhất, các tệp DLL có phần mở rộng điển hình (.dll), mặc dù đôi khi chúng xuất hiện với cùng một phần mở rộng tệp (.exe). Bạn phải cẩn thận và tránh nhầm lẫn, luôn nhớ rằng các tệp DLL không được thực thi trực tiếp mà là tự động.

Tệp DLL

Tệp DLL: chúng là gì và làm thế nào để mở chúng?

Ưu điểm của tệp DLL

Trong số những ưu điểm chính mà tệp DLL cung cấp cho hoạt động của hệ điều hành, cần làm nổi bật những điều sau:

  • Giảm kích thước của các tệp thực thi, vì hầu hết mã được lưu trữ trong các thư viện chứ không phải trong chính chương trình thực thi.
  • Chia sẻ giữa nhiều chương trình hoặc ứng dụng. Điều này có thể xảy ra khi mã được sử dụng tương đối chung chung, tức là nó có thể được nhiều chương trình nhận ra và sử dụng. Từ "động" phản ánh chính xác khía cạnh này, sức mạnh hữu ích trong nhiều ứng dụng.
  • Quản lý hiệu quả hơn bộ nhớ hệ thống. Chỉ cần giữ một bản sao duy nhất trong bộ nhớ có thể được sử dụng bởi tất cả các chương trình chia sẻ nó, với việc tiết kiệm dung lượng do điều này đòi hỏi.
  • Tính linh hoạt và thích ứng cao hơn. Tất cả các ứng dụng chia sẻ thư viện đều có thể sử dụng các cải tiến hoặc sửa chữa của mỗi phiên bản mới của thư viện động.

Hạn chế của tệp DLL

Tuy nhiên, các tệp DLL cũng có nhược điểm nhất định, đặc biệt là trong trường hợp của Windows. Đây là những điểm hạn chế cần lưu ý. Hầu hết những vấn đề này đều liên quan đến điểm thứ tư trong danh sách các ưu điểm ở trên: tính linh hoạt. Đôi khi, các phiên bản mới của thư viện được cập nhật riêng lẻ, kết hợp mã không tương thích với các chương trình sử dụng chúng.

Các vấn đề được tạo ra bởi điều này được các nhà khoa học máy tính biết đến với một cái tên rất nổi bật: DLL địa ngục (Địa ngục DLL). Có thể xảy ra, ví dụ: khi một chương trình được cài đặt, một DLL được thay thế bằng một phiên bản mới, không tương thích hoặc khi cố gắng gỡ cài đặt một chương trình, một trong các DLL được chia sẻ sẽ bị xóa. Kết quả là nhiều chương trình hệ thống có thể ngừng hoạt động. Quả thực là một địa ngục đúng nghĩa.

May mắn thay, các phiên bản Windows mới đã thực hiện những thay đổi cần thiết để tránh những tình huống khó chịu này.

Tải xuống tệp DLL

Đôi khi, đặc biệt là trong quá trình cài đặt một số chương trình nhất định, chúng tôi có thể thấy mình cần phải chèn tệp DLL vào các vị trí cụ thể. Bạn luôn phải thận trọng khi nói đến tải về bất kỳ chương trình bên ngoài nào trên máy tính của chúng tôi, nhưng thậm chí nhiều hơn thế khi nói đến tệp DLL, vì những lý do được giải thích trong phần trước.

Trong mọi trường hợp, khi tải xuống tệp DLL (luôn từ một nguồn an toàn), điều đó rất thiết thực sử dụng Windows Notepad. Thủ tục rất đơn giản:

  1. Nhấp chuột phải vào tệp và chọn "Mở bằng".
  2. Chọn "Chọn một trong các chương trình từ danh sách các chương trình đã cài đặt" và nhấp vào "OK".
  3. Chọn công cụ »Notepad» và nhấp lại vào «OK».

Toàn bộ nội dung của tệp DLL sẽ được hiển thị trong Notepad, mặc dù nó có thể sẽ chỉ hiển thị một số lượng lớn các ký tự mà chúng tôi không thể đọc được. Giải pháp cho có thể đọc nội dung của tệp là sử dụng một trình dịch ngược.

Giải mã tệp DLL

Un trình dịch ngược là một chương trình hiển thị cho chúng ta mã nguồn được sử dụng để xây dựng một tệp hoặc chương trình nhất định và cũng chuyển nó thành mã có thể đọc được. Nói cách khác, nó là một loại "trình dịch" giúp chúng ta chuyển mã thực thi thành mã nguồn. Tất nhiên, nó cũng sẽ hữu ích khi hiển thị mã nguồn mà tệp DLL đã được tạo.

Tải xuống trình dịch ngược nào? Hiệu quả nhất là dotpeek. Công cụ miễn phí này từ bộ não phản lực anh ấy có thể thư viện dịch ngược (.dll) và hiển thị chúng dưới dạng mã C #. Chúng tôi cũng có thể sử dụng dotPeek để dịch ngược các loại tệp khác như tệp thực thi (.exe), tệp siêu dữ liệu Windows 8 (.winmd) hoặc tệp nén (.zip), trong số những tệp khác.

dịch ngược các tệp DLL với dotPeek

Công cụ tốt nhất để dịch ngược các tệp DLL: dotPeek

Sau khi dotPeek được cài đặt trên máy tính của chúng tôi, đây là năm bước mà chúng tôi phải làm theo để tiến hành dịch ngược tệp DLL thành công:

bước 1

Nhấp vào "Tệp", sau đó vào "Mở" và chọn tệp DLL mà chúng tôi muốn dịch ngược. Tại thời điểm này, không cần phải lo lắng về việc làm hỏng hệ thống, miễn là chúng ta không thực hiện bất kỳ thay đổi nào đối với tệp.

bước 2

Mở tệp bằng Assembly Explorer (xây dựng nhà thám hiểm). Bằng cách này, bạn có thể điều hướng qua các mô-đun mã khác nhau mà tệp chứa. Tất cả chúng làm việc cùng nhau và bổ sung cho nhau để tạo thành tệp DLL hoàn chỉnh. Một sự hài hòa hoàn hảo. Với trình khám phá biên dịch, chúng ta có thể thấy từng nút và nút con trong đó tệp được tổ chức.

bước 3

Để xem mã cho từng nút này, chỉ cần nhấp vào chúng. Mã sẽ tự động xuất hiện trong giao diện dotPeek, ở bên phải. Mã này sẽ được hiển thị trong C #, mặc dù cũng có tùy chọn tải xuống các thư viện bổ sung để xem mã nguồn ban đầu. Trong trường hợp một nút cần các thư viện bổ sung được hiển thị, dotPeek sẽ tự động tải chúng xuống.

bước 4

Nếu bất chấp điều này, có các nút không thể được hiển thị chính xác, bạn vẫn có thể sử dụng tùy chọn "Tài liệu nhanh" (tài liệu nhanh). Để làm điều này, bạn phải làm như sau:

  • Đi đến phần "Trình xem mã" và chỉ cần đặt con trỏ vào đoạn mã mà bạn muốn làm rõ.
  • Sau đó, bạn phải tải cửa sổ trình xem mã bằng cách nhấn Ctrl + Q và theo các siêu liên kết.

Với điều này, chúng ta có thể xem thêm thông tin về từng khía cạnh của mã mà chúng ta muốn phân tích.

bước 5

Đã đến lúc chỉnh sửa mã. Đối với điều này, bạn phải xuất nó sang Visual Studio.

  • Trong "Assembly Explorer", nhấp chuột phải vào tệp DLL.
  • Chọn tùy chọn »Xuất sang Dự án».
  • Trong số các tùy chọn xuất, hãy chọn Visual Studio.

Khi mã được chọn đã được tải vào Visual Studio, DLL có thể được chỉnh sửa và biên dịch.


Để lại bình luận của bạn

địa chỉ email của bạn sẽ không được công bố. Các trường bắt buộc được đánh dấu bằng *

*

*

  1. Chịu trách nhiệm về dữ liệu: Blog Actualidad
  2. Mục đích của dữ liệu: Kiểm soát SPAM, quản lý bình luận.
  3. Hợp pháp: Sự đồng ý của bạn
  4. Truyền thông dữ liệu: Dữ liệu sẽ không được thông báo cho các bên thứ ba trừ khi có nghĩa vụ pháp lý.
  5. Lưu trữ dữ liệu: Cơ sở dữ liệu do Occentus Networks (EU) lưu trữ
  6. Quyền: Bất cứ lúc nào bạn có thể giới hạn, khôi phục và xóa thông tin của mình.