1

I have multi process wpf app : 1 master process + 1or more slave process. All these processes have Windows.

Now I have set icon property of all the windows to xyz.ico. Also I have set ApplicationIcon property of startup project to xyz.ico. I am deploying the app through click once.

As per my understanding , setting above two icon property should be enough to make sure all windows of all process appear under single Taskbar icon. But I am seeing that the windows of mater process appear in a Taskbar icon while all other process's windows appear under a different Taskbar icon.

Any idea what am I missing? Or any other technique to achieve this scenario.

Note: I am NOT launching different application. Theres just one app , that app is launching The different processes.

answer: finally we sorted this out using the appUserModelID shell32 APIs. It did work even with click once being used.

KhannaB7
  • 265
  • 5
  • 17
  • 1
    Possible duplicate of [Combine two applications into one icon on taskbar](https://stackoverflow.com/questions/25393875/combine-two-applications-into-one-icon-on-taskbar) –  May 28 '17 at 07:52
  • @elgonzo the problem here is that, all windows icons of child processes are combined except for the window of mater process. – KhannaB7 May 28 '17 at 09:42
  • Yeah, that's *precisely* why it is a duplicate of the question i linked... –  May 28 '17 at 11:36
  • @elgonzo i will try the approach marked as answer in the duplicate question. However it talks about calling the API after process launch with the window ref, in my case I have multiple windows launching during the life cycle of the app. Anyways, I will try that out, thanks. – KhannaB7 May 28 '17 at 12:52
  • Well, you only need to make sure that the processes all have the same ApplicationID (aka Application User Model ID). Your slave processes all have the same ApplicationID already (since they are grouped in the task bar). All you would need to do is to give your main/master process the same ApplicationID as your slave processes. If you don't know the slaves ApplicationID (which would be the case if they are not explicitly set), you might try setting their ApplicationID as well... –  May 28 '17 at 12:54
  • @elgonzo YES , u r right normally I should just set the app user ID for the master process. However according to https://msdn.microsoft.com/en-us/library/windows/desktop/dd378459(v=vs.85).aspx since I am using click once for deployment, I should not explicitly set app user IDs . so I m thinking whether the problem lies with click once . – KhannaB7 May 28 '17 at 13:08
  • See here for some infos that might help you defining ApplicationIDs in ClickOnce scenarios: https://msdn.microsoft.com/en-us/library/windows/desktop/dd378459(v=vs.85).aspx –  May 28 '17 at 13:13
  • I just retracted my duplication flag, as for ClickOnce you indeed need to follow a different apporach to set ApplicationIDs, as it seems... –  May 28 '17 at 13:14
  • Thanks elgonza, i will update if I crack this. – KhannaB7 May 28 '17 at 13:16

0 Answers0