2009-12-16 76 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