2009-07-24 17 views
24

Tôi đang cố gắng thực hiện chính xác những gì LD_PRELOAD thực hiện, tức là tải trước thư viện được chia sẻ hoặc tệp DLL trên Windows vào một chương trình cụ thể để ghi đè các chức năng nhất định.Tương đương LD_PRELOAD cho Windows để tải trước thư viện được chia sẻ

Có một số LD_PRELOAD tương đương với Windows không?

Tôi không có bất kỳ chức năng cụ thể nào trong đầu. Tôi chỉ biết rằng điều này là có thể trên Linux, và tôi tò mò về cách quá tải một DLL bản địa có thể được thực hiện trên Windows.

+1

bạn đang cố gắng đạt được điều gì? Không có tương đương trực tiếp –

+1

Bạn muốn quá tải chức năng nào? –

+1

Ngoài ra, đây có phải là một hội đồng quản lý .net hoặc cho một dll bản địa? –

Trả lời

14

AppInit_DLLs.

http://support.microsoft.com/kb/197571

Nhưng xem thêm: Deadlock_Or_Crash_Randomly_DLLs

AppInit_DLLs nên được đổi tên

https://blogs.msdn.microsoft.com/oldnewthing/20071213-00/?p=24183/

Bạn cũng có thể muốn xem xét "tiêm DLL". Bốn cách tiếp cận (bao gồm AppInint_DLLs) đều được mô tả ở đây:

http://en.wikipedia.org/wiki/DLL_Injection

+0

Liên kết thứ hai dường như bị hỏng: Tôi đoán liên kết chính xác hiện là: https://blogs.msdn.microsoft.com/oldnewthing/20071213-00/?p=24183/ – Markus

+0

@Markus thực sự :-) – Ben