<div class="content"><p>RpcRouterRefreshPrinterChangeNotification returns change
notification information.<a id="Appendix_A_Target_383"></a><a aria-label="Product behavior note 383" href="e81cbc09-ab05-4a32-ae4a-8ec57b436c43#Appendix_A_383" data-linktype="relative-path">&lt;383&gt;</a></p><dl>
<dd>
<div><pre> DWORD RpcRouterRefreshPrinterChangeNotification(
   [in] PRINTER_HANDLE hPrinter,
   [in] DWORD dwColor,
   [in, unique] RPC_V2_NOTIFY_OPTIONS* pOptions,
   [out] RPC_V2_NOTIFY_INFO** ppInfo
 );
</pre></div>
</dd></dl><p><b>hPrinter: </b>A handle to a printer object or
server object that was opened by <a href="bd0bb8d5-26fd-4705-81f5-614d32b9f38f" data-linktype="relative-path">RpcAddPrinter (section 3.1.4.2.3)</a>,
<a href="3af45717-308f-4b4f-8428-430d12856110" data-linktype="relative-path">RpcAddPrinterEx (section 3.1.4.2.15)</a>,
<a href="989357e2-446e-4872-bb38-1dce21e1313f" data-linktype="relative-path">RpcOpenPrinter (section 3.1.4.2.2)</a>,
or <a href="0e81ce18-72b1-46c3-8584-a205393b04ff" data-linktype="relative-path">RpcOpenPrinterEx (section 3.1.4.2.14)</a>.</p><dl>
<dd>
<p>This handle MUST have been previously used
successfully by the client in a call to <a href="b8b414d9-f1cd-4191-bb6b-87d09ab2fd83" data-linktype="relative-path">RpcRemoteFindFirstPrinterChangeNotification (section 3.1.4.10.3)</a>
or <a href="eb66b221-1c1f-4249-b8bc-c5befec2314d" data-linktype="relative-path">RpcRemoteFindFirstPrinterChangeNotificationEx (section 3.1.4.10.4)</a>,
and it MUST NOT have been closed by calling <a href="f50c8a86-1b2d-4124-b220-5b840aacd2c7" data-linktype="relative-path">RpcFindClosePrinterChangeNotification (section 3.1.4.10.2)</a>.</p>
</dd></dl><p><b>dwColor: </b>An implementation-specific value that
MAY be used by <a href="831cd729-be7c-451e-b729-bd8d84ce4d24#gt_3b2da3d1-c159-4399-a6dd-dfd5f76fa2f5" data-linktype="relative-path">print clients</a>
to get an indication of the order of notifications.<a id="Appendix_A_Target_384"></a><a aria-label="Product behavior note 384" href="e81cbc09-ab05-4a32-ae4a-8ec57b436c43#Appendix_A_384" data-linktype="relative-path">&lt;384&gt;</a></p><p><b>pOptions: </b>A pointer to an <a href="4599c052-e814-4174-9bd5-00473329a9f8" data-linktype="relative-path">RPC_V2_NOTIFY_OPTIONS (section 2.2.1.13.1)</a>
structure that specifies printer or job members that the client listens to for
notifications. For lists of members that can be monitored, see <a href="41d5c622-ec77-49ff-95e3-69b325ce4e77" data-linktype="relative-path">Printer Notification
Values (section 2.2.3.8)</a> and <a href="76acb7fb-b63f-4cad-88dd-6920096a2f13" data-linktype="relative-path">Job Notification
Values (section 2.2.3.3)</a>.</p><p><b>ppInfo: </b>A pointer to a variable that receives
a pointer to an <a href="79db335f-ebe7-4a6f-8533-efdda32cc5d8" data-linktype="relative-path">RPC_V2_NOTIFY_INFO (section 2.2.1.13.3)</a>
structure that contains notification information.</p><p><b>Return Values: </b>This method MUST return zero
(ERROR_SUCCESS) to indicate successful completion or a nonzero Windows error
code to indicate failure <a href="../ms-erref/1bc92ddf-b79e-413c-bbaa-99a5281a6c90" data-linktype="relative-path">[MS-ERREF]</a>.</p><p>Upon receiving this message, the server MUST validate
parameters as follows:</p><ul><li><p><span><span> 
</span></span>Perform the validation steps that are specified in <a href="10bfa8c2-d456-4ad0-912d-e674766a36c8" data-linktype="relative-path">PRINTER_HANDLE
Parameters (section 3.1.4.1.11)</a>. This method SHOULD assume that
the handle to the printer or server object can be used without further access
checks.</p>
</li><li><p><span><span> 
</span></span>Verify that the client is in the list of notification clients for
the printer object or server object.</p>
</li><li><p><span><span> 
</span></span>Verify that a notification back channel to the client has been
established and is still open.</p>
</li></ul><p>If parameter validation fails, the server MUST fail the
operation immediately and return a nonzero error response to the client.
Otherwise, the server MUST process the message and compose a response to the
client as follows:</p><ul><li><p><span><span> 
</span></span>Collect all the notification data requested for the printer
objects.</p>
</li><li><p><span><span> 
</span></span>Allocate a buffer and write the collected notification data in
the buffer.</p>
</li><li><p><span><span> 
</span></span>Associate the buffer with <i>ppInfo</i> output parameter.</p>
</li><li><p><span><span> 
</span></span>Return the status of the operation.</p>
</li></ul><p>This method MUST be called when the client receives an
RPC_V2_NOTIFY_INFO structure with the <b>PRINTER_NOTIFY_INFO_DISCARDED</b> bit
set in its <b>Flags</b> member. This indicates that an overflow or other error
has occurred and that notifications might have been lost, which sets the
notification object to the discarded state. The server MUST NOT send any
additional notifications until the client makes this method call. If the
operation is successful, the server MUST modify the notification object to
clear the discarded state.</p></div>