2013-03-28 28 views
7

Tôi đang làm việc trên một DLL và tôi muốn các hàm tôi xuất chỉ được xuất theo thứ tự không theo tên.Chức năng xuất từ ​​dll chỉ theo thứ tự

Điều này có khả thi không? Nếu có, tôi muốn biết cách thực hiện.

+4

Bạn chắc chắn có thể sử dụng giá trị thứ tự: http://101.lv/learn/delphi/ch19.htm. Nhưng cái tên không phải là 'ẩn', vì vậy tôi sợ bạn không nhận được * chỉ bằng * một phần. Nhưng tất nhiên bạn có thể đặt tên cho các hàm của mình 'Function001', v.v. –

+0

Tôi nghĩ rằng việc xuất thứ tự không được chấp nhận trong các cửa sổ 32 bit. –

Trả lời

13

Cách duy nhất để yêu cầu Delphi đánh dấu chức năng xuất là sử dụng chỉ thị exports. Và Delphi sẽ luôn thêm một mục được đặt tên vào bảng xuất PE cho mỗi hàm mà bạn xuất. Nhưng nó đủ dễ dàng để cung cấp cho các chức năng không có tên.

library Project32; 

procedure Foo; 
begin 
end; 

exports 
    Foo index 1 name ''; 

begin 
end. 
+0

rằng nó sẽ làm các trick.thanks – opc0de

+1

Để kiến ​​thức tốt nhất của tôi, bạn không thể làm bất kỳ tốt hơn so với điều này với các công cụ được xây dựng trong. Tôi đoán bạn có thể post-process các tập tin PE để loại bỏ các bảng tên xuất khẩu và chỉ để lại các ordinals. –

+6

+1. Không có ý tưởng bạn có thể sử dụng chuỗi rỗng như tên! –

Các vấn đề liên quan