2009-12-16 28 views
1

我们有有一个“启动”应用程序,与在后台的主要应用程序加载一个漂亮的UI坐在那里的应用程序。这两款应用都是用VB6编写的(叹气)。Windows 7中,VB6,桌面应用和压到任务栏

在Windows 7中,如果用户的PIN的启动程序,我们得到的任务栏(一个用于主应用程序,然后在启动程序的固定图标)在两个不同的图标。这看起来很奇怪。

我使用下面的函数尝试:http://msdn.microsoft.com/en-us/library/dd378422%28VS.85%29.aspx无济于事为止。

我给了两个相同的名称(Company.Product),作为建议的文件中,以及之前的任何UI弹出。如果我在运行启动器应用程序时固定它,这可以正常工作。如果我为启动程序固定可执行文件,我会得到两个图标。

就如何解决它,这样我可以用户可以只脚发射EXE和所有的好任何想法?

回答

1

为什么要有两个单独的可执行文件(特别是当它们使用相同的语言编写时)。为什么不将启动程序合并到“主应用程序”中,并在启动程序显示标题屏幕等时执行一些线程来启动主应用程序。有许多用于创建启动程序的教程。

+1

自从它被写入以来就一直如此(我只是试图维护它......我很想重写整个事情)。 在VB6中的线程是icky。像可怕的icky。 – Daemonic 2009-12-16 20:11:26

+0

我已经设法说服管理层,我们应该在将来进行这种修改,因此给予您充分的信任。 :) – Daemonic 2010-01-22 16:37:18

0

使它所以你的主应用程序不在任务栏上显示出来,并使它所以被点击时启动任务栏将消息发送到主窗口,如果它最小化出现。这可以通过Windows API实现。

使用FindWindowEx获得主窗口的句柄,然后发送WM_SYSCOMMAND消息SC_RESTORE

+0

当主应用程序打开时,启动器应用程序会消失(通过一些类似的对话)...所以这将不起作用。 – Daemonic 2009-12-16 20:12:00

+0

然后,除了侵入Windows 7任务栏外,没有办法。 – 2009-12-16 20:16:12