我有一个包含大量本机代码和 win32 窗口的 WPF 应用程序。程序的Application图标在VS2015项目中定义为..\gui\rc\MyApp.ico。当我在 XenApp Citrix 中启动程序时:
- 出现飞溅
- WPF 登录窗口在任务栏中显示正确的应用程序图标
- 登录后再次出现启动画面并且任务栏图标消失
- 接下来会出现一个带有任务栏图标的 win32 窗口。
- 加载大量数据时,任务栏图标是 Citrix 图标,但准备好后,正确的应用程序图标会切换回来
- 关闭 win32 对话框后,主窗口将在任务栏中显示 Citrix 图标。
可以跳过主窗口之前的 win32 对话框(步骤 4-5),从而在启动后使用 Citrix 任务栏图标打开主窗口。上面的步骤只是因为对话框正在加载任务栏图标是 Citrix。
MyApp.ico 是 160x160 像素,32 位深度。
在初始化期间创建主窗口时,其 ShowInTaskbar 设置为 false。当它准备好时,它被设置为 true。这样做是因为我们想在主窗口之前显示其他窗口,所以未完成的主窗口位于屏幕之外的某个地方,我们不希望它可以从任务栏访问。
编辑:如果 ShowInTaskbar 未设置为 false,则不会发生这种情况。