|
RSS Feed - WebSphere MQ Support
|
RSS Feed - Message Broker Support
|
 |
|
Weird triggering problem |
« View previous topic :: View next topic » |
Author |
Message
|
RogerLacroix |
Posted: Fri Jul 04, 2003 2:55 pm Post subject: Weird triggering problem |
|
|
 Jedi Knight
Joined: 15 May 2001 Posts: 3264 Location: London, ON Canada
|
All,
I am having a problem with triggering from the "Trigger Monitor as a Service". I need to launch a GUI Windows program on a Windows 2000 box using WMQ v5.3 CSD3.
No matter what I do, I cannot trigger my GUI Windows application (and I am no novice). So I thought I would do a basic test and launch notepad. In the process definition, I set the AppID to "start C:\WinNT\notepad.exe"
I created the Trigger Monitor service and used a blank as the initiation queue name (this defaults to SYSTEM.DEFAULT.INITIATION.QUEUE).
So put a message on the triggering queue nothing happens. I cleared the queue and tried it several times - nothing.
So I stopped the Trigger Monitor service, open a Command Prompt and typed runmqtrm.exe (no parameters specified!!). I put a message on the triggering queue (same queue) and viola, notepad appeared. (I did not change any of the queue or process definitions).
So, I stopped runmqtrm at the Command Prompt (closed notepad), started the Service Trigger Monitor and put a message on the triggering queue - nothing again!!!!
After using IBM's name in vain, I checked the Windows Task Manager. Under the "Applications" tab, it was normal looking but under the "Processes" tab it showed that I had 5 notepad programs running. I also noticed several copies of my missing program that I did not think was started.
So I looked at my Taskbar and also pressed Alt-Tab, there were no notepad programs (or my GUI appl.). If I try to kill them, I get "Access denied". The only way to get rid of them is by rebooting.
I looked in the manuals but I don't see any restrictions about launching GUI applications from the Service Trigger Monitor.
Obviously the simple solution is to run the trigger monitor from the Command Prompt but WHY. Why can't Trigger Monitor as a Service successfully start a Windows GUI application? (i.e. AppID set to "start C:\WinNT\notepad.exe")
Anybody got any ideas?
later
Roger... _________________ Capitalware: Transforming tomorrow into today.
Connected to MQ!
Twitter |
|
Back to top |
|
 |
jefflowrey |
Posted: Fri Jul 04, 2003 7:20 pm Post subject: |
|
|
Grand Poobah
Joined: 16 Oct 2002 Posts: 19981
|
Your processes are obviously starting up. If you see them in the process list, they're running.
They're not starting up in your user space, though. They're starting up in the user space of whatever user you have the Trigger Monitor Service running as. If you logged in as that user, you might see the "missing" processes.
If you really want to start an interactive process from a trigger, and have it show up for whoever is logged in at the time, you should set the flag on the service properties that is something like "Allow process to interact with desktop", or maybe "run in foreground".
But the thing to be aware of is if you do this, and a triggered process is running when the currently logged in user logs off, then the process will be ended (whether it's done or not). |
|
Back to top |
|
 |
RogerLacroix |
Posted: Sat Jul 05, 2003 8:53 pm Post subject: |
|
|
 Jedi Knight
Joined: 15 May 2001 Posts: 3264 Location: London, ON Canada
|
Thanks. I tried the "Allow process to interact with desktop" but it did not make any difference.
Any other thoughts.
later
Roger... _________________ Capitalware: Transforming tomorrow into today.
Connected to MQ!
Twitter |
|
Back to top |
|
 |
jefflowrey |
Posted: Mon Jul 07, 2003 5:45 am Post subject: |
|
|
Grand Poobah
Joined: 16 Oct 2002 Posts: 19981
|
You'll have to stop and restart the service after changing the "Allow service to interact with desktop" flag.
You might also look at how you defined your processes. You have your example listed as 'start C:\winnt\notepad.exe'. You may have better luck if your process definitions point to batch files that start your interactive process.
What user are you running the service as? If you're running the service as the System user, you might not be able to interact with the processes it runs. If you're running the service as another user, you might not be able to interact with the processes it runs while you are logged in as any other user. |
|
Back to top |
|
 |
|
|
 |
|
Page 1 of 1 |
|
You cannot post new topics in this forum You cannot reply to topics in this forum You cannot edit your posts in this forum You cannot delete your posts in this forum You cannot vote in polls in this forum
|
|
|
|