|
code
newsgroups
|
|||||||||||||||||||||||
|
|||||||||||||||||||||||
Is it possible to remove 3rd party app icon from systray?Hello,
I am facing this problem. My app starts the 3rd party app using runas, starting several instances of it. Each instance at startup loads its own icon in the systray, which causes big and unnecessary crowd. I wonder, is it possible to start these instances without systray icon loaded or to remove these icons afterwards? Please advice, Kathy I think, this is possibe, but ar eyou sure that application will work
correctly ? May be, it is more correct to duplicate functionality if this app ? Show quoteHide quote "Kathy" <Kathy@kathy> wrote in message news:uaNFHeSpJHA.5880@TK2MSFTNGP05.phx.gbl... > Hello, > I am facing this problem. > My app starts the 3rd party app using runas, starting several instances > of it. > Each instance at startup loads its own icon in the systray, which causes > big and unnecessary crowd. > I wonder, is it possible to start these instances without systray icon > loaded or to remove these icons afterwards? > Please advice, > Kathy > "Kathy" <Kathy@kathy> wrote Have you scoured the net for 3rd party help? Specifically, I'd look> I am facing this problem. > My app starts the 3rd party app using runas, starting several instances of > it. > Each instance at startup loads its own icon in the systray, which causes big > and unnecessary crowd. > I wonder, is it possible to start these instances without systray icon > loaded or to remove these icons afterwards? > Please advice, for command line options your 3rd party app might support. It may be they already gave you that option.... What is a command line option? It is text added to the command line that informs the program of any selected options. For example, typing the following text into the Run box tells IE you want to navigate to google when the program runs. iexplore.exe "http://www.google.com" The following tells IE you want to go to google while running IE in kiosk mode: iexplore.exe -k "http://www.google.com" (Use Alt+F4 to close the kiosk window) Thus, your 3rd party app may also accept command line options, one of which may avoid showing the system tray icon. If that is the case, it would be far easier to go that route than to try to remove icons they have placed in the tray! (FYI - I don't know how to remove the icons, I'd have to research it, just like you are doing.) HTH LFS
Show quote
Hide quote
"Larry Serflaten" <serfla***@usinternet.com> wrote in message Larry, thank you for your response.news:%23%23xH0vVpJHA.5412@TK2MSFTNGP04.phx.gbl... > > "Kathy" <Kathy@kathy> wrote >> I am facing this problem. >> My app starts the 3rd party app using runas, starting several instances >> of >> it. >> Each instance at startup loads its own icon in the systray, which causes >> big >> and unnecessary crowd. >> I wonder, is it possible to start these instances without systray icon >> loaded or to remove these icons afterwards? >> Please advice, > > > Have you scoured the net for 3rd party help? Specifically, I'd look > for command line options your 3rd party app might support. It may > be they already gave you that option.... > > What is a command line option? It is text added to the command line > that informs the program of any selected options. For example, typing > the following text into the Run box tells IE you want to navigate to > google when the program runs. > > iexplore.exe "http://www.google.com" > > The following tells IE you want to go to google while running IE in > kiosk mode: > > iexplore.exe -k "http://www.google.com" > > (Use Alt+F4 to close the kiosk window) > > Thus, your 3rd party app may also accept command line options, > one of which may avoid showing the system tray icon. If that is the > case, it would be far easier to go that route than to try to remove > icons they have placed in the tray! > > (FYI - I don't know how to remove the icons, I'd have to research it, > just like you are doing.) > > HTH > LFS > > I am well aware what command line is and how to use it. Unfortunately, that 3rd party app not only does not allow to use any command line parameters (even if it did, I would be surprised to see such command.), but also it does not provide the option in Options not to display icon in systray. The only way I can see it is to programmatically remove the icon from systray. Because my app is launching the instances of that 3rd party app I have some kind of control over the it. I do have the handle to the instances and I know the processID. Windows have some mechanism to hide inactive systray icons. How to use it in this case? Thanks, Kathy Hi Kathy,
Can we assume you have tried closing the current instance, which should close the icon, before launching a new instance? John Show quoteHide quote "Kathy" <Kathy@kathy> wrote in message news:u4r7V8XpJHA.3868@TK2MSFTNGP02.phx.gbl... > > "Larry Serflaten" <serfla***@usinternet.com> wrote in message > news:%23%23xH0vVpJHA.5412@TK2MSFTNGP04.phx.gbl... >> >> "Kathy" <Kathy@kathy> wrote >>> I am facing this problem. >>> My app starts the 3rd party app using runas, starting several instances >>> of >>> it. >>> Each instance at startup loads its own icon in the systray, which causes >>> big >>> and unnecessary crowd. >>> I wonder, is it possible to start these instances without systray icon >>> loaded or to remove these icons afterwards? >>> Please advice, >> >> >> Have you scoured the net for 3rd party help? Specifically, I'd look >> for command line options your 3rd party app might support. It may >> be they already gave you that option.... >> >> What is a command line option? It is text added to the command line >> that informs the program of any selected options. For example, typing >> the following text into the Run box tells IE you want to navigate to >> google when the program runs. >> >> iexplore.exe "http://www.google.com" >> >> The following tells IE you want to go to google while running IE in >> kiosk mode: >> >> iexplore.exe -k "http://www.google.com" >> >> (Use Alt+F4 to close the kiosk window) >> >> Thus, your 3rd party app may also accept command line options, >> one of which may avoid showing the system tray icon. If that is the >> case, it would be far easier to go that route than to try to remove >> icons they have placed in the tray! >> >> (FYI - I don't know how to remove the icons, I'd have to research it, >> just like you are doing.) >> >> HTH >> LFS >> >> > Larry, thank you for your response. > I am well aware what command line is and how to use it. > Unfortunately, that 3rd party app not only does not allow to use any command > line parameters > (even if it did, I would be surprised to see such command.), but also it > does not provide the option in Options not to display icon in systray. > The only way I can see it is to programmatically remove the icon from > systray. > Because my app is launching the instances of that 3rd party app I have some > kind of control over the it. > I do have the handle to the instances and I know the processID. > Windows have some mechanism to hide inactive systray icons. How to use it in > this case? > Thanks, > Kathy > > No, I am using several (sometimes up to 16 instances simultanouesly) and
that creates chaos in the systray. Kathy Show quoteHide quote "jaf" <m*@here.com> wrote in message news:enyaxjYpJHA.1184@TK2MSFTNGP04.phx.gbl... > Hi Kathy, > Can we assume you have tried closing the current instance, which should > close the icon, before launching a new instance? > > John > > > "Kathy" <Kathy@kathy> wrote in message > news:u4r7V8XpJHA.3868@TK2MSFTNGP02.phx.gbl... >> >> "Larry Serflaten" <serfla***@usinternet.com> wrote in message >> news:%23%23xH0vVpJHA.5412@TK2MSFTNGP04.phx.gbl... >>> >>> "Kathy" <Kathy@kathy> wrote >>>> I am facing this problem. >>>> My app starts the 3rd party app using runas, starting several >>>> instances of >>>> it. >>>> Each instance at startup loads its own icon in the systray, which >>>> causes big >>>> and unnecessary crowd. >>>> I wonder, is it possible to start these instances without systray icon >>>> loaded or to remove these icons afterwards? >>>> Please advice, >>> >>> >>> Have you scoured the net for 3rd party help? Specifically, I'd look >>> for command line options your 3rd party app might support. It may >>> be they already gave you that option.... >>> >>> What is a command line option? It is text added to the command line >>> that informs the program of any selected options. For example, typing >>> the following text into the Run box tells IE you want to navigate to >>> google when the program runs. >>> >>> iexplore.exe "http://www.google.com" >>> >>> The following tells IE you want to go to google while running IE in >>> kiosk mode: >>> >>> iexplore.exe -k "http://www.google.com" >>> >>> (Use Alt+F4 to close the kiosk window) >>> >>> Thus, your 3rd party app may also accept command line options, >>> one of which may avoid showing the system tray icon. If that is the >>> case, it would be far easier to go that route than to try to remove >>> icons they have placed in the tray! >>> >>> (FYI - I don't know how to remove the icons, I'd have to research it, >>> just like you are doing.) >>> >>> HTH >>> LFS >>> >>> >> Larry, thank you for your response. >> I am well aware what command line is and how to use it. >> Unfortunately, that 3rd party app not only does not allow to use any >> command line parameters >> (even if it did, I would be surprised to see such command.), but also it >> does not provide the option in Options not to display icon in systray. >> The only way I can see it is to programmatically remove the icon from >> systray. >> Because my app is launching the instances of that 3rd party app I have >> some kind of control over the it. >> I do have the handle to the instances and I know the processID. >> Windows have some mechanism to hide inactive systray icons. How to use it >> in this case? >> Thanks, >> Kathy >> "Kathy" <Kathy@kathy> wrote Why don't they learn???> Unfortunately, that 3rd party app not only does not allow to use any command > line parameters > Windows have some mechanism to hide inactive systray icons. How to use it in As I said, I'd have to research the process. This looks promising...> this case? Note Sub Main at the very bottom... http://groups.google.com/group/microsoft.public.vb.general.discussion/msg/d65621e0c8662262 LFS Call Shell_NotifyIcon(NIM_DELETE). It requires the app hWnd, which you can
get with FindWindow/EnumWindows, and uID. Loop through all ID's from 0 to 2G. It's most likely a low number, less than 1000, and the number is the same(usually hard coded within the application). Watch for Err.LastDLLError property because that will tell you the exact number. There is a chance that Windows could block this, especially if the target process is running under a different user than your application, particularly under Vista.
VB App fails when log reaches 65536
HOW IS Memory Used by a VB App vb.net executing on Help with Binary Compatibility Fonts (OT) false positives on my files Can I loop through only SELECTED items in a multi-select FileListBox? Internal String Visibility Should I distribute Winsock? moving controls around on a form |
|||||||||||||||||||||||