簡體   English   中英

如何從BPL中提取資源?

[英]How to extract a resource from within a BPL?

如果我在EXE中有一個資源並且我想要提取它,那就非常簡單了。 就像是:

stream := TResourceStream.Create(HInstance, ResourceName, RT_RCDATA);

這是有效的,因為全局變量HInstance是EXE的句柄。 BPL中的代碼有沒有類似的方法來獲取它所屬的包的句柄,所以我可以從中提取資源?

HInstance實際上是在SysInit單元中,每個PE(package,exe,dll)都是唯一的。 如果使用rtl包,則在包中共享大量編譯器RTL和輔助函數的系統。

因此,您在上面顯示的代碼應該可以在包中正常工作。 MainInstance可能是你正在考慮的加載exe的句柄(在某些情況下甚至是DLL)。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM