Delphi - 更改任务栏图标

时间:2015-07-10 21:44:53

标签: delphi dll icons

我有主要的.exe app和.dll表单。从.exe我可以从.dll创建和显示表单,但它没有任务栏图标(左上角是小图标)。我想从另一个DLL加载此图标。我该怎么办?

2 个答案:

答案 0 :(得分:3)

以下是您需要做的事情。我没有详细介绍,因为你的问题没有什么细节,我也无法确切地知道你如何将所有这些都融入到你的程序中。关键是要在高层清楚地说明你需要做什么。

加载包含资源的DLL

使用LoadLibraryLoadLibraryEx执行此操作。如果需要调用DLL中的代码,请使用前者。否则使用后者传递LOAD_LIBRARY_AS_IMAGE_RESOURCE。这两个函数都产生一个模块句柄HMODULE

加载DLL中的图标

HMODULE传递给LoadIconLoadImage以从资源加载图标。这些将产生HICON。将其分配给Handle实例的TIcon属性。

将图标分配给表单

将您在上一步中获得的图标对象分配给表单的Icon属性。

答案 1 :(得分:1)

非常感谢你。我试过像Form.Icon.Assign(Icon);,但它创建了AV错误消息。这是工作代码:

self.mapview.showsUserLocation = YES;