As long as you have security setup properly for your background service as BrowserUK points out, you can easily create a window using Win32::GUI. You create a window, add some controls (text and buttons) and some events, then make it visible. User clicks on message, maybe enters text, you set the window to hidden until you need it again.
in reply to Using Perl to write application to interact with users on Windows OS
Depending on what your background process is doing, and how you're handling your event loop, forking a process for the gui component might be a good idea. You wouldn't want (but maybe you do) the gui to wait for input and stop the rest of your code from running. Win32::GUI has lots of examples, and there is some nice Win32::GUI code on this site as well.