Subject kind of explains the basics of my question, but here's the background :- I'm using the System.Managed namespace in a C#.Net app to set the default printer via WMI. This is a conversion of an older bit of code that was using an API call (via P/Invoke). After the call to set the default printer, the recommended practice was to use another API call, SendMessageTimeout, to notify other running applications of the change. Now that I'm using WMI to set the default printer, do I still need to call SendMessageTimeout to let other applications know, or does WMI handle it internally and automatically? Cheers Rob
I do not think WMI will handle that notification. The reason that message is sent out from my understanding is that applications like Word etc. Can receive those messages and update their default printer as they process. When you use WMI, you would still need to notify the applications of the change or it will not update until the next time the application starts or polls the spooler. Allan "RobCowell" wrote in message news:99dea20c-cb2d-43b0-81cd-8ec643dc33a5@c65g2000hsa.googlegroups.com... > Subject kind of explains the basics of my question, but here's the > background :- > > I'm using the System.Managed namespace in a C#.Net app to set the > default printer via WMI. This is a conversion of an older bit of code > that was using an API call (via P/Invoke). After the call to set the > default printer, the recommended practice was to use another API call, > SendMessageTimeout, to notify other running applications of the > change. > > Now that I'm using WMI to set the default printer, do I still need to > call SendMessageTimeout to let other applications know, or does WMI > handle it internally and automatically? > > Cheers > > Rob