I have a print monitor that is installed for a custom Postscript printer
driver.

This print monitor needs to display a screen asking the user to name a file
and select some processing options during the call to LcmStartDocPort. It
also invokes a COM object that display several interactive screens to process
the file during the call to LcmEndDocPort.

The printer driver and monitor installs and runs on OSes Win2K and up. It
also installs on Vista, and it will properly interact with the user and
process files as designed.

However, on Vista the OS intercepts the dialog boxes and displays a dialog
titled "Interactive Services Dialog Detection". The message is that "The
program [my port monitor] may need information or permission to complete a
task." When the user clicks OK, the dialogs are displayed.

My questions:
1. How can I properly set permissions (programatically, during the
installation) on the port monitor so that it can interact in the user session
without the OS intercepting the dialog boxes?
2. Do these permissions need to be applied to the port monitor (a dll) or
to the spooler that invokes it?

Thanks,

Mike

Re: Print Monitor Needs to Access Interactive Services by Ivco

Ivco
Thu Feb 01 17:51:03 CST 2007

Mike wrote:
> I have a print monitor that is installed for a custom Postscript printer
> driver.
>
> This print monitor needs to display a screen asking the user to name a file
> and select some processing options during the call to LcmStartDocPort. It
> also invokes a COM object that display several interactive screens to process
> the file during the call to LcmEndDocPort.
>
> The printer driver and monitor installs and runs on OSes Win2K and up. It
> also installs on Vista, and it will properly interact with the user and
> process files as designed.
>
> However, on Vista the OS intercepts the dialog boxes and displays a dialog
> titled "Interactive Services Dialog Detection". The message is that "The
> program [my port monitor] may need information or permission to complete a
> task." When the user clicks OK, the dialogs are displayed.
>
> My questions:
> 1. How can I properly set permissions (programatically, during the
> installation) on the port monitor so that it can interact in the user session
> without the OS intercepting the dialog boxes?
> 2. Do these permissions need to be applied to the port monitor (a dll) or
> to the spooler that invokes it?
>
> Thanks,
>
> Mike
>

Why don't you try to switch off the user account control (Control
Panel\User Accounts -> Turn User Account Control on or off). I haven't
tried this but the Interactive Service Dialog Detection might magically
disappear.


Re: Print Monitor Needs to Access Interactive Services by Mike

Mike
Thu Feb 01 15:13:00 CST 2007

That may work and I'll try it, but I'm not going to be able to get all of my
customers to do this on their machings.

What I need to do is be able to solve this problem programatically during an
MS Install procedure. I can certainly code a cusom action in c++ if someone
can explain what needs to be, and can be, done.


"Ivco" <" ivco_sa" wrote:

> Mike wrote:
> > I have a print monitor that is installed for a custom Postscript printer
> > driver.
> >
> > This print monitor needs to display a screen asking the user to name a file
> > and select some processing options during the call to LcmStartDocPort. It
> > also invokes a COM object that display several interactive screens to process
> > the file during the call to LcmEndDocPort.
> >
> > The printer driver and monitor installs and runs on OSes Win2K and up. It
> > also installs on Vista, and it will properly interact with the user and
> > process files as designed.
> >
> > However, on Vista the OS intercepts the dialog boxes and displays a dialog
> > titled "Interactive Services Dialog Detection". The message is that "The
> > program [my port monitor] may need information or permission to complete a
> > task." When the user clicks OK, the dialogs are displayed.
> >
> > My questions:
> > 1. How can I properly set permissions (programatically, during the
> > installation) on the port monitor so that it can interact in the user session
> > without the OS intercepting the dialog boxes?
> > 2. Do these permissions need to be applied to the port monitor (a dll) or
> > to the spooler that invokes it?
> >
> > Thanks,
> >
> > Mike
> >
>
> Why don't you try to switch off the user account control (Control
> Panel\User Accounts -> Turn User Account Control on or off). I haven't
> tried this but the Interactive Service Dialog Detection might magically
> disappear.
>
>

Re: Print Monitor Needs to Access Interactive Services by Maxim

Maxim
Thu Feb 01 23:31:38 CST 2007

> 1. How can I properly set permissions (programatically, during the
> installation) on the port monitor so that it can interact in the user session
> without the OS intercepting the dialog boxes?

I think no ways except creating a helper app, which will communicate to the
port monitor (in the SPOOLSV service) via RPC or COM.

Vista disabled the services (spooler included) from displaying any UI.

--
Maxim Shatskih, Windows DDK MVP
StorageCraft Corporation
maxim@storagecraft.com
http://www.storagecraft.com


Re: Print Monitor Needs to Access Interactive Services by Mike

Mike
Fri Feb 02 08:46:01 CST 2007

The interesting thing is that, according to the Services snap-in, the print
spooler is "allowed to interact with the desktop". Yet my port monitor still
invokes the "Interactive Services Dialog Detection". And turning off User
Account Control didn't help either.

Hopefully, disabling the spooler (or maybe it's just my port monitor dll)
isn't hardcoded. Perhaps there is a setting somewhere to enable it?

"Maxim S. Shatskih" wrote:

> > 1. How can I properly set permissions (programatically, during the
> > installation) on the port monitor so that it can interact in the user session
> > without the OS intercepting the dialog boxes?
>
> I think no ways except creating a helper app, which will communicate to the
> port monitor (in the SPOOLSV service) via RPC or COM.
>
> Vista disabled the services (spooler included) from displaying any UI.
>
> --
> Maxim Shatskih, Windows DDK MVP
> StorageCraft Corporation
> maxim@storagecraft.com
> http://www.storagecraft.com
>
>