{"version":"1.1","schema_version":"1.1.0","plugin_version":"1.1.2","url":"https://tutos-gameserver.fr/2020/06/17/fonction-openprinter-winspool-h-applications-win32-bien-choisir-son-serveur-d-impression/","llm_html_url":"https://tutos-gameserver.fr/2020/06/17/fonction-openprinter-winspool-h-applications-win32-bien-choisir-son-serveur-d-impression/llm","llm_json_url":"https://tutos-gameserver.fr/2020/06/17/fonction-openprinter-winspool-h-applications-win32-bien-choisir-son-serveur-d-impression/llm.json","manifest_url":"https://tutos-gameserver.fr/llm-endpoints-manifest.json","language":"fr-FR","locale":"fr_FR","title":"Fonction OpenPrinter (Winspool.h) &#8211; Applications Win32\n\n &#8211; Bien choisir son serveur d impression","site":{"name":"Tutos GameServer","url":"https://tutos-gameserver.fr/"},"author":{"id":1,"name":"Titanfall","url":"https://tutos-gameserver.fr/author/titanfall/"},"published_at":"2020-06-17T20:13:25+00:00","modified_at":"2020-06-17T20:13:25+00:00","word_count":1249,"reading_time_seconds":375,"summary":"31/05/2018 4 minutes pour lire Dans cet article &lt;! &#8211; -&gt; le OpenPrinter La fonction récupère une poignée vers l&#39;imprimante ou le serveur d&#39;impression spécifié ou d&#39;autres types de poignées dans le sous-système d&#39;impression. Syntaxe BOOL OpenPrinter ( _In_ LPTSTR pPrinterName, _Out_ LPHANDLE phPrinter, _In_ LPPRINTER_DEFAULTS pDefault ); Paramètres pPrinterName [in] Pointeur vers une chaîne [&hellip;]","summary_points":["31/05/2018\n\t\t\t\t\t\t\t\n4 minutes pour lire\n\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\n\nDans cet article\n\n\t\t\t\t\t\t&lt;!","&#8211;  -&gt;\nle OpenPrinter La fonction récupère une poignée vers l&#39;imprimante ou le serveur d&#39;impression spécifié ou d&#39;autres types de poignées dans le sous-système d&#39;impression.","Syntaxe\nBOOL OpenPrinter (\n  _In_ LPTSTR pPrinterName,\n  _Out_ LPHANDLE phPrinter,\n  _In_ LPPRINTER_DEFAULTS pDefault\n);\n\nParamètres\n\n\npPrinterName [in]\n\n\nPointeur vers une chaîne terminée par un caractère nul qui spécifie le nom de l&#39;imprimante ou du serveur d&#39;impression, l&#39;objet imprimante, XcvMonitor ou XcvPort.","Pour un objet imprimante, utilisez: PrinterName, Job xxxx."],"topics":["Serveur d'impression"],"entities":[],"entities_metadata":[{"id":10,"name":"Serveur d'impression","slug":"serveur-dimpression","taxonomy":"category","count":3907,"url":"https://tutos-gameserver.fr/category/serveur-dimpression/"}],"tags":["Serveur d'impression"],"content_hash":"25008d959ddf8edd01821e7826c28a4b","plain_text":"31/05/2018\n\t\t\t\t\t\t\t\n4 minutes pour lire\n\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\n\nDans cet article\n\n\t\t\t\t\t\t&lt;! &#8211;  -&gt;\nle OpenPrinter La fonction récupère une poignée vers l&#39;imprimante ou le serveur d&#39;impression spécifié ou d&#39;autres types de poignées dans le sous-système d&#39;impression.\nSyntaxe\nBOOL OpenPrinter (\n  _In_ LPTSTR pPrinterName,\n  _Out_ LPHANDLE phPrinter,\n  _In_ LPPRINTER_DEFAULTS pDefault\n);\n\nParamètres\n\n\npPrinterName [in]\n\n\nPointeur vers une chaîne terminée par un caractère nul qui spécifie le nom de l&#39;imprimante ou du serveur d&#39;impression, l&#39;objet imprimante, XcvMonitor ou XcvPort.\nPour un objet imprimante, utilisez: PrinterName, Job xxxx. Pour un XcvMonitor, utilisez: ServerName, XcvMonitor MonitorName. Pour un XcvPort, utilisez: ServerName, XcvPort PortName.\nSi NUL, il indique le serveur d&#39;impression local.\n\n\nphPrinter [out]\n\n\nUn pointeur vers une variable qui reçoit une poignée (non thread-safe) vers l&#39;imprimante ouverte ou l&#39;objet serveur d&#39;impression.\nle phPrinter Le paramètre peut renvoyer un descripteur Xcv à utiliser avec la fonction XcvData. Pour plus d&#39;informations sur XcvData, consultez le DDK.\n\n\npDefault [in]\n\n\nUn pointeur vers un PRINTER_DEFAULTS structure. Cette valeur peut être NUL.\n\n\nValeur de retour\nSi la fonction réussit, la valeur de retour est une valeur non nulle.\nSi la fonction échoue, la valeur de retour est zéro.\nRemarques\nN&#39;appelez pas cette méthode dans DllMain.\n\nRemarque\nUn handle obtenu pour une imprimante distante par un appel à OpenPrinter pour une imprimante distante accède à l&#39;imprimante via un cache local dans le service de spouleur d&#39;impression. Ce cache n&#39;est pas précis en temps réel. Pour obtenir des données précises, remplacez l&#39;appel OpenPrinter par OpenPrinter2 avec pOptions.dwFlags défini sur PRINTER_OPTION_NO_CACHE. Notez que seul OpenPrinter2W est fonctionnel. La fonction renvoie un descripteur d&#39;imprimante qui utilise d&#39;autres appels d&#39;API d&#39;impression et contourne le cache local. Cette méthode se bloque en attendant la communication réseau avec l&#39;imprimante distante, il se peut donc qu&#39;elle ne revienne pas immédiatement. La vitesse de retour de cette fonction dépend de facteurs d&#39;exécution tels que l&#39;état du réseau, la configuration du serveur d&#39;impression et les facteurs d&#39;implémentation du pilote d&#39;imprimante qui sont difficiles à prévoir lors de l&#39;écriture d&#39;une application. L&#39;appel de cette fonction à partir d&#39;un thread qui gère l&#39;interaction de l&#39;interface utilisateur peut faire en sorte que l&#39;application semble ne pas répondre.\n\n\nRemarque\nUn handle obtenu par un appel à OpenPrinter pour une imprimante distante accédera à l&#39;imprimante via un cache local dans le service de spouleur d&#39;impression. De par sa conception, ce cache n&#39;est pas précis en temps réel. Si vous devez obtenir des données précises, remplacez le OpenPrinter appeler avec OpenPrinter2 avec pOptions.dwFlags mis à PRINTER_OPTION_NO_CACHE. Notez que seulement OpenPrinter2W est fonctionnel. Ce faisant, la fonction renvoie un descripteur d&#39;imprimante qui effectue d&#39;autres appels d&#39;API d&#39;impression pour contourner le cache local. Notez que cette approche se bloquera en attendant la communication réseau aller-retour avec l&#39;imprimante distante, il est donc possible qu&#39;elle ne revienne pas immédiatement. La rapidité de retour de cette fonction dépend de facteurs d&#39;exécution tels que l&#39;état du réseau, la configuration du serveur d&#39;impression et l&#39;implémentation du pilote d&#39;imprimante, facteurs difficiles à prévoir lors de l&#39;écriture d&#39;une application. Par conséquent, l&#39;appel de cette fonction à partir d&#39;un thread qui gère l&#39;interaction avec l&#39;interface utilisateur peut donner l&#39;impression que l&#39;application ne répond pas.\n\nLa poignée pointée par phPrinter n&#39;est pas thread-safe. Si les appelants doivent l&#39;utiliser simultanément sur plusieurs threads, ils doivent fournir un accès de synchronisation personnalisé à la poignée de l&#39;imprimante à l&#39;aide des fonctions de synchronisation. Pour éviter d&#39;écrire du code personnalisé, l&#39;application peut ouvrir une poignée d&#39;imprimante sur chaque thread, selon les besoins.\nle pDefault Le paramètre vous permet de spécifier le type de données et les valeurs de mode de périphérique utilisés pour l&#39;impression des documents soumis par le StartDocPrinter une fonction. Cependant, vous pouvez remplacer ces valeurs en utilisant le paramètre SetJob après le démarrage d&#39;un document.\nle DEVMODE paramètres définis dans le PRINTER_DEFAULTS structure du pDefault ne sont pas utilisés lorsque la valeur de la pDatatype membre du DOC_INFO_1 structure qui a été adoptée dans le pDocInfo paramètre du StartDocPrinter l&#39;appel est &quot;RAW&quot;. Lorsqu&#39;un document de haut niveau (tel qu&#39;un fichier Adobe PDF ou Microsoft Word) ou d&#39;autres données d&#39;imprimante (telles que PCL, PS ou HPGL) sont envoyés directement à une imprimante avec pDatatype réglé sur &quot;RAW&quot;, le document doit décrire DEVMODE-les paramètres des travaux d&#39;impression de style dans la langue comprise par le matériel.\nVous pouvez appeler le OpenPrinter pour ouvrir un descripteur sur un serveur d&#39;impression ou pour déterminer les droits d&#39;accès dont dispose un client sur un serveur d&#39;impression. Pour ce faire, spécifiez le nom du serveur d&#39;impression dans le pPrinterName , définissez le pDatatype et pDevMode membres de PRINTER_DEFAULTS structure à NULet définissez Accès souhaité membre pour spécifier une valeur de masque d&#39;accès au serveur telle que SERVER_ALL_ACCESS. Lorsque vous avez terminé avec la poignée, passez-la au FermerImprimante fonction pour le fermer.\nUtilisez le Accès souhaité membre du PRINTER_DEFAULTS pour spécifier les droits d&#39;accès dont vous avez besoin sur l&#39;imprimante. Les droits d&#39;accès peuvent être l&#39;un des suivants. (Si pDefault est NUL, les droits d&#39;accès sont PRINTER_ACCESS_USE.)\n\n\n\nValeur d&#39;accès souhaitée\nSens\n\n\n\n\nPRINTER_ACCESS_ADMINISTER\nPour effectuer des tâches administratives, telles que celles fournies par SetPrinter.\n\n\nPRINTER_ACCESS_USE\nPour effectuer des opérations d&#39;impression de base.\n\n\nPRINTER_ALL_ACCESS\nPour effectuer toutes les tâches administratives et les opérations d&#39;impression de base à l&#39;exception de SYNCHRONIZE (voir Droits d&#39;accès standard.\n\n\nPRINTER_ACCESS_MANAGE_LIMITED\nPour effectuer des tâches administratives, telles que celles fournies par SetPrinter et SetPrinterData. Cette valeur est disponible à partir de Windows 8.1.\n\n\nvaleurs de sécurité génériques, telles que WRITE_DAC\nPour autoriser des droits d&#39;accès de contrôle spécifiques. Voir Droits d&#39;accès standard.\n\n\n\nSi un utilisateur n&#39;est pas autorisé à ouvrir une imprimante ou un serveur d&#39;impression spécifié avec l&#39;accès souhaité, le OpenPrinter l&#39;appel échouera avec une valeur de retour de zéro et GetLastError renverra la valeur ERROR_ACCESS_DENIED.\nExemples\nPour un exemple de programme qui utilise cette fonction, consultez Comment: imprimer à l&#39;aide de l&#39;API d&#39;impression GDI.\nExigences\n\n\n\n\n\n\n\n\n\nClient minimum pris en charge\nWindows 2000 Professionnel [desktop apps only]\n\n\nServeur minimum pris en charge\nWindows 2000 Server [desktop apps only]\n\n\nEntête\n\n\nWinspool.h (inclure Windows.h)\n\n\n\n\nBibliothèque\n\n\nWinspool.lib\n\n\n\n\nDLL\n\n\nWinspool.drv\n\n\n\n\nNoms Unicode et ANSI\nOpenPrinterW (Unicode) et OpenPrinterA (ANSI)\n\n\n\nVoir également\n\n\nImpression\n\n\nFonctions de l&#39;API du spouleur d&#39;impression\n\n\nWritePrinter\n\n\nFermerImprimante\n\n\nPRINTER_DEFAULTS\n\n\nSetJob\n\n\nSetPrinter\n\n\nStartDocPrinter\n\n\n\t\t\t\t\t\t&lt;! &#8211;  -&gt;\nClick to rate this post!\r\n                                   \r\n                               [Total: 0  Average: 0]","paragraphs":["31/05/2018\n\t\t\t\t\t\t\t\n4 minutes pour lire","Dans cet article","&lt;! &#8211;  -&gt;\nle OpenPrinter La fonction récupère une poignée vers l&#39;imprimante ou le serveur d&#39;impression spécifié ou d&#39;autres types de poignées dans le sous-système d&#39;impression.\nSyntaxe\nBOOL OpenPrinter (\n  _In_ LPTSTR pPrinterName,\n  _Out_ LPHANDLE phPrinter,\n  _In_ LPPRINTER_DEFAULTS pDefault\n);","Paramètres","pPrinterName [in]","Pointeur vers une chaîne terminée par un caractère nul qui spécifie le nom de l&#39;imprimante ou du serveur d&#39;impression, l&#39;objet imprimante, XcvMonitor ou XcvPort.\nPour un objet imprimante, utilisez: PrinterName, Job xxxx. Pour un XcvMonitor, utilisez: ServerName, XcvMonitor MonitorName. Pour un XcvPort, utilisez: ServerName, XcvPort PortName.\nSi NUL, il indique le serveur d&#39;impression local.","phPrinter [out]","Un pointeur vers une variable qui reçoit une poignée (non thread-safe) vers l&#39;imprimante ouverte ou l&#39;objet serveur d&#39;impression.\nle phPrinter Le paramètre peut renvoyer un descripteur Xcv à utiliser avec la fonction XcvData. Pour plus d&#39;informations sur XcvData, consultez le DDK.","pDefault [in]","Un pointeur vers un PRINTER_DEFAULTS structure. Cette valeur peut être NUL.","Valeur de retour\nSi la fonction réussit, la valeur de retour est une valeur non nulle.\nSi la fonction échoue, la valeur de retour est zéro.\nRemarques\nN&#39;appelez pas cette méthode dans DllMain.","Remarque\nUn handle obtenu pour une imprimante distante par un appel à OpenPrinter pour une imprimante distante accède à l&#39;imprimante via un cache local dans le service de spouleur d&#39;impression. Ce cache n&#39;est pas précis en temps réel. Pour obtenir des données précises, remplacez l&#39;appel OpenPrinter par OpenPrinter2 avec pOptions.dwFlags défini sur PRINTER_OPTION_NO_CACHE. Notez que seul OpenPrinter2W est fonctionnel. La fonction renvoie un descripteur d&#39;imprimante qui utilise d&#39;autres appels d&#39;API d&#39;impression et contourne le cache local. Cette méthode se bloque en attendant la communication réseau avec l&#39;imprimante distante, il se peut donc qu&#39;elle ne revienne pas immédiatement. La vitesse de retour de cette fonction dépend de facteurs d&#39;exécution tels que l&#39;état du réseau, la configuration du serveur d&#39;impression et les facteurs d&#39;implémentation du pilote d&#39;imprimante qui sont difficiles à prévoir lors de l&#39;écriture d&#39;une application. L&#39;appel de cette fonction à partir d&#39;un thread qui gère l&#39;interaction de l&#39;interface utilisateur peut faire en sorte que l&#39;application semble ne pas répondre.","Remarque\nUn handle obtenu par un appel à OpenPrinter pour une imprimante distante accédera à l&#39;imprimante via un cache local dans le service de spouleur d&#39;impression. De par sa conception, ce cache n&#39;est pas précis en temps réel. Si vous devez obtenir des données précises, remplacez le OpenPrinter appeler avec OpenPrinter2 avec pOptions.dwFlags mis à PRINTER_OPTION_NO_CACHE. Notez que seulement OpenPrinter2W est fonctionnel. Ce faisant, la fonction renvoie un descripteur d&#39;imprimante qui effectue d&#39;autres appels d&#39;API d&#39;impression pour contourner le cache local. Notez que cette approche se bloquera en attendant la communication réseau aller-retour avec l&#39;imprimante distante, il est donc possible qu&#39;elle ne revienne pas immédiatement. La rapidité de retour de cette fonction dépend de facteurs d&#39;exécution tels que l&#39;état du réseau, la configuration du serveur d&#39;impression et l&#39;implémentation du pilote d&#39;imprimante, facteurs difficiles à prévoir lors de l&#39;écriture d&#39;une application. Par conséquent, l&#39;appel de cette fonction à partir d&#39;un thread qui gère l&#39;interaction avec l&#39;interface utilisateur peut donner l&#39;impression que l&#39;application ne répond pas.","La poignée pointée par phPrinter n&#39;est pas thread-safe. Si les appelants doivent l&#39;utiliser simultanément sur plusieurs threads, ils doivent fournir un accès de synchronisation personnalisé à la poignée de l&#39;imprimante à l&#39;aide des fonctions de synchronisation. Pour éviter d&#39;écrire du code personnalisé, l&#39;application peut ouvrir une poignée d&#39;imprimante sur chaque thread, selon les besoins.\nle pDefault Le paramètre vous permet de spécifier le type de données et les valeurs de mode de périphérique utilisés pour l&#39;impression des documents soumis par le StartDocPrinter une fonction. Cependant, vous pouvez remplacer ces valeurs en utilisant le paramètre SetJob après le démarrage d&#39;un document.\nle DEVMODE paramètres définis dans le PRINTER_DEFAULTS structure du pDefault ne sont pas utilisés lorsque la valeur de la pDatatype membre du DOC_INFO_1 structure qui a été adoptée dans le pDocInfo paramètre du StartDocPrinter l&#39;appel est &quot;RAW&quot;. Lorsqu&#39;un document de haut niveau (tel qu&#39;un fichier Adobe PDF ou Microsoft Word) ou d&#39;autres données d&#39;imprimante (telles que PCL, PS ou HPGL) sont envoyés directement à une imprimante avec pDatatype réglé sur &quot;RAW&quot;, le document doit décrire DEVMODE-les paramètres des travaux d&#39;impression de style dans la langue comprise par le matériel.\nVous pouvez appeler le OpenPrinter pour ouvrir un descripteur sur un serveur d&#39;impression ou pour déterminer les droits d&#39;accès dont dispose un client sur un serveur d&#39;impression. Pour ce faire, spécifiez le nom du serveur d&#39;impression dans le pPrinterName , définissez le pDatatype et pDevMode membres de PRINTER_DEFAULTS structure à NULet définissez Accès souhaité membre pour spécifier une valeur de masque d&#39;accès au serveur telle que SERVER_ALL_ACCESS. Lorsque vous avez terminé avec la poignée, passez-la au FermerImprimante fonction pour le fermer.\nUtilisez le Accès souhaité membre du PRINTER_DEFAULTS pour spécifier les droits d&#39;accès dont vous avez besoin sur l&#39;imprimante. Les droits d&#39;accès peuvent être l&#39;un des suivants. (Si pDefault est NUL, les droits d&#39;accès sont PRINTER_ACCESS_USE.)","Valeur d&#39;accès souhaitée\nSens","PRINTER_ACCESS_ADMINISTER\nPour effectuer des tâches administratives, telles que celles fournies par SetPrinter.","PRINTER_ACCESS_USE\nPour effectuer des opérations d&#39;impression de base.","PRINTER_ALL_ACCESS\nPour effectuer toutes les tâches administratives et les opérations d&#39;impression de base à l&#39;exception de SYNCHRONIZE (voir Droits d&#39;accès standard.","PRINTER_ACCESS_MANAGE_LIMITED\nPour effectuer des tâches administratives, telles que celles fournies par SetPrinter et SetPrinterData. Cette valeur est disponible à partir de Windows 8.1.","valeurs de sécurité génériques, telles que WRITE_DAC\nPour autoriser des droits d&#39;accès de contrôle spécifiques. Voir Droits d&#39;accès standard.","Si un utilisateur n&#39;est pas autorisé à ouvrir une imprimante ou un serveur d&#39;impression spécifié avec l&#39;accès souhaité, le OpenPrinter l&#39;appel échouera avec une valeur de retour de zéro et GetLastError renverra la valeur ERROR_ACCESS_DENIED.\nExemples\nPour un exemple de programme qui utilise cette fonction, consultez Comment: imprimer à l&#39;aide de l&#39;API d&#39;impression GDI.\nExigences","Client minimum pris en charge\nWindows 2000 Professionnel [desktop apps only]","Serveur minimum pris en charge\nWindows 2000 Server [desktop apps only]","Entête","Winspool.h (inclure Windows.h)","Bibliothèque","Winspool.lib","DLL","Winspool.drv","Noms Unicode et ANSI\nOpenPrinterW (Unicode) et OpenPrinterA (ANSI)","Voir également","Impression","Fonctions de l&#39;API du spouleur d&#39;impression","WritePrinter","FermerImprimante","PRINTER_DEFAULTS","SetJob","SetPrinter","StartDocPrinter","&lt;! &#8211;  -&gt;\nClick to rate this post!\n                                   \n                               [Total: 0  Average: 0]"],"content_blocks":[{"id":"text-1","type":"text","heading":"","plain_text":"31/05/2018\n\t\t\t\t\t\t\t\n4 minutes pour lire","html":"<p>31/05/2018\n\t\t\t\t\t\t\t\n4 minutes pour lire</p>"},{"id":"text-2","type":"text","heading":"","plain_text":"Dans cet article","html":"<p>Dans cet article</p>"},{"id":"text-3","type":"text","heading":"","plain_text":"&lt;! &#8211;  -&gt;\nle OpenPrinter La fonction récupère une poignée vers l&#39;imprimante ou le serveur d&#39;impression spécifié ou d&#39;autres types de poignées dans le sous-système d&#39;impression.\nSyntaxe\nBOOL OpenPrinter (\n  _In_ LPTSTR pPrinterName,\n  _Out_ LPHANDLE phPrinter,\n  _In_ LPPRINTER_DEFAULTS pDefault\n);","html":"<p>&lt;! &#8211;  -&gt;\nle OpenPrinter La fonction récupère une poignée vers l&#039;imprimante ou le serveur d&#039;impression spécifié ou d&#039;autres types de poignées dans le sous-système d&#039;impression.\nSyntaxe\nBOOL OpenPrinter (\n  _In_ LPTSTR pPrinterName,\n  _Out_ LPHANDLE phPrinter,\n  _In_ LPPRINTER_DEFAULTS pDefault\n);</p>"},{"id":"text-4","type":"text","heading":"","plain_text":"Paramètres","html":"<p>Paramètres</p>"},{"id":"text-5","type":"text","heading":"","plain_text":"pPrinterName [in]","html":"<p>pPrinterName [in]</p>"},{"id":"text-6","type":"text","heading":"","plain_text":"Pointeur vers une chaîne terminée par un caractère nul qui spécifie le nom de l&#39;imprimante ou du serveur d&#39;impression, l&#39;objet imprimante, XcvMonitor ou XcvPort.\nPour un objet imprimante, utilisez: PrinterName, Job xxxx. Pour un XcvMonitor, utilisez: ServerName, XcvMonitor MonitorName. Pour un XcvPort, utilisez: ServerName, XcvPort PortName.\nSi NUL, il indique le serveur d&#39;impression local.","html":"<p>Pointeur vers une chaîne terminée par un caractère nul qui spécifie le nom de l&#039;imprimante ou du serveur d&#039;impression, l&#039;objet imprimante, XcvMonitor ou XcvPort.\nPour un objet imprimante, utilisez: PrinterName, Job xxxx. Pour un XcvMonitor, utilisez: ServerName, XcvMonitor MonitorName. Pour un XcvPort, utilisez: ServerName, XcvPort PortName.\nSi NUL, il indique le serveur d&#039;impression local.</p>"},{"id":"text-7","type":"text","heading":"","plain_text":"phPrinter [out]","html":"<p>phPrinter [out]</p>"},{"id":"text-8","type":"text","heading":"","plain_text":"Un pointeur vers une variable qui reçoit une poignée (non thread-safe) vers l&#39;imprimante ouverte ou l&#39;objet serveur d&#39;impression.\nle phPrinter Le paramètre peut renvoyer un descripteur Xcv à utiliser avec la fonction XcvData. Pour plus d&#39;informations sur XcvData, consultez le DDK.","html":"<p>Un pointeur vers une variable qui reçoit une poignée (non thread-safe) vers l&#039;imprimante ouverte ou l&#039;objet serveur d&#039;impression.\nle phPrinter Le paramètre peut renvoyer un descripteur Xcv à utiliser avec la fonction XcvData. Pour plus d&#039;informations sur XcvData, consultez le DDK.</p>"},{"id":"text-9","type":"text","heading":"","plain_text":"pDefault [in]","html":"<p>pDefault [in]</p>"},{"id":"text-10","type":"text","heading":"","plain_text":"Un pointeur vers un PRINTER_DEFAULTS structure. Cette valeur peut être NUL.","html":"<p>Un pointeur vers un PRINTER_DEFAULTS structure. Cette valeur peut être NUL.</p>"},{"id":"text-11","type":"text","heading":"","plain_text":"Valeur de retour\nSi la fonction réussit, la valeur de retour est une valeur non nulle.\nSi la fonction échoue, la valeur de retour est zéro.\nRemarques\nN&#39;appelez pas cette méthode dans DllMain.","html":"<p>Valeur de retour\nSi la fonction réussit, la valeur de retour est une valeur non nulle.\nSi la fonction échoue, la valeur de retour est zéro.\nRemarques\nN&#039;appelez pas cette méthode dans DllMain.</p>"},{"id":"text-12","type":"text","heading":"","plain_text":"Remarque\nUn handle obtenu pour une imprimante distante par un appel à OpenPrinter pour une imprimante distante accède à l&#39;imprimante via un cache local dans le service de spouleur d&#39;impression. Ce cache n&#39;est pas précis en temps réel. Pour obtenir des données précises, remplacez l&#39;appel OpenPrinter par OpenPrinter2 avec pOptions.dwFlags défini sur PRINTER_OPTION_NO_CACHE. Notez que seul OpenPrinter2W est fonctionnel. La fonction renvoie un descripteur d&#39;imprimante qui utilise d&#39;autres appels d&#39;API d&#39;impression et contourne le cache local. Cette méthode se bloque en attendant la communication réseau avec l&#39;imprimante distante, il se peut donc qu&#39;elle ne revienne pas immédiatement. La vitesse de retour de cette fonction dépend de facteurs d&#39;exécution tels que l&#39;état du réseau, la configuration du serveur d&#39;impression et les facteurs d&#39;implémentation du pilote d&#39;imprimante qui sont difficiles à prévoir lors de l&#39;écriture d&#39;une application. L&#39;appel de cette fonction à partir d&#39;un thread qui gère l&#39;interaction de l&#39;interface utilisateur peut faire en sorte que l&#39;application semble ne pas répondre.","html":"<p>Remarque\nUn handle obtenu pour une imprimante distante par un appel à OpenPrinter pour une imprimante distante accède à l&#039;imprimante via un cache local dans le service de spouleur d&#039;impression. Ce cache n&#039;est pas précis en temps réel. Pour obtenir des données précises, remplacez l&#039;appel OpenPrinter par OpenPrinter2 avec pOptions.dwFlags défini sur PRINTER_OPTION_NO_CACHE. Notez que seul OpenPrinter2W est fonctionnel. La fonction renvoie un descripteur d&#039;imprimante qui utilise d&#039;autres appels d&#039;API d&#039;impression et contourne le cache local. Cette méthode se bloque en attendant la communication réseau avec l&#039;imprimante distante, il se peut donc qu&#039;elle ne revienne pas immédiatement. La vitesse de retour de cette fonction dépend de facteurs d&#039;exécution tels que l&#039;état du réseau, la configuration du serveur d&#039;impression et les facteurs d&#039;implémentation du pilote d&#039;imprimante qui sont difficiles à prévoir lors de l&#039;écriture d&#039;une application. L&#039;appel de cette fonction à partir d&#039;un thread qui gère l&#039;interaction de l&#039;interface utilisateur peut faire en sorte que l&#039;application semble ne pas répondre.</p>"},{"id":"text-13","type":"text","heading":"","plain_text":"Remarque\nUn handle obtenu par un appel à OpenPrinter pour une imprimante distante accédera à l&#39;imprimante via un cache local dans le service de spouleur d&#39;impression. De par sa conception, ce cache n&#39;est pas précis en temps réel. Si vous devez obtenir des données précises, remplacez le OpenPrinter appeler avec OpenPrinter2 avec pOptions.dwFlags mis à PRINTER_OPTION_NO_CACHE. Notez que seulement OpenPrinter2W est fonctionnel. Ce faisant, la fonction renvoie un descripteur d&#39;imprimante qui effectue d&#39;autres appels d&#39;API d&#39;impression pour contourner le cache local. Notez que cette approche se bloquera en attendant la communication réseau aller-retour avec l&#39;imprimante distante, il est donc possible qu&#39;elle ne revienne pas immédiatement. La rapidité de retour de cette fonction dépend de facteurs d&#39;exécution tels que l&#39;état du réseau, la configuration du serveur d&#39;impression et l&#39;implémentation du pilote d&#39;imprimante, facteurs difficiles à prévoir lors de l&#39;écriture d&#39;une application. Par conséquent, l&#39;appel de cette fonction à partir d&#39;un thread qui gère l&#39;interaction avec l&#39;interface utilisateur peut donner l&#39;impression que l&#39;application ne répond pas.","html":"<p>Remarque\nUn handle obtenu par un appel à OpenPrinter pour une imprimante distante accédera à l&#039;imprimante via un cache local dans le service de spouleur d&#039;impression. De par sa conception, ce cache n&#039;est pas précis en temps réel. Si vous devez obtenir des données précises, remplacez le OpenPrinter appeler avec OpenPrinter2 avec pOptions.dwFlags mis à PRINTER_OPTION_NO_CACHE. Notez que seulement OpenPrinter2W est fonctionnel. Ce faisant, la fonction renvoie un descripteur d&#039;imprimante qui effectue d&#039;autres appels d&#039;API d&#039;impression pour contourner le cache local. Notez que cette approche se bloquera en attendant la communication réseau aller-retour avec l&#039;imprimante distante, il est donc possible qu&#039;elle ne revienne pas immédiatement. La rapidité de retour de cette fonction dépend de facteurs d&#039;exécution tels que l&#039;état du réseau, la configuration du serveur d&#039;impression et l&#039;implémentation du pilote d&#039;imprimante, facteurs difficiles à prévoir lors de l&#039;écriture d&#039;une application. Par conséquent, l&#039;appel de cette fonction à partir d&#039;un thread qui gère l&#039;interaction avec l&#039;interface utilisateur peut donner l&#039;impression que l&#039;application ne répond pas.</p>"},{"id":"text-14","type":"text","heading":"","plain_text":"La poignée pointée par phPrinter n&#39;est pas thread-safe. Si les appelants doivent l&#39;utiliser simultanément sur plusieurs threads, ils doivent fournir un accès de synchronisation personnalisé à la poignée de l&#39;imprimante à l&#39;aide des fonctions de synchronisation. Pour éviter d&#39;écrire du code personnalisé, l&#39;application peut ouvrir une poignée d&#39;imprimante sur chaque thread, selon les besoins.\nle pDefault Le paramètre vous permet de spécifier le type de données et les valeurs de mode de périphérique utilisés pour l&#39;impression des documents soumis par le StartDocPrinter une fonction. Cependant, vous pouvez remplacer ces valeurs en utilisant le paramètre SetJob après le démarrage d&#39;un document.\nle DEVMODE paramètres définis dans le PRINTER_DEFAULTS structure du pDefault ne sont pas utilisés lorsque la valeur de la pDatatype membre du DOC_INFO_1 structure qui a été adoptée dans le pDocInfo paramètre du StartDocPrinter l&#39;appel est &quot;RAW&quot;. Lorsqu&#39;un document de haut niveau (tel qu&#39;un fichier Adobe PDF ou Microsoft Word) ou d&#39;autres données d&#39;imprimante (telles que PCL, PS ou HPGL) sont envoyés directement à une imprimante avec pDatatype réglé sur &quot;RAW&quot;, le document doit décrire DEVMODE-les paramètres des travaux d&#39;impression de style dans la langue comprise par le matériel.\nVous pouvez appeler le OpenPrinter pour ouvrir un descripteur sur un serveur d&#39;impression ou pour déterminer les droits d&#39;accès dont dispose un client sur un serveur d&#39;impression. Pour ce faire, spécifiez le nom du serveur d&#39;impression dans le pPrinterName , définissez le pDatatype et pDevMode membres de PRINTER_DEFAULTS structure à NULet définissez Accès souhaité membre pour spécifier une valeur de masque d&#39;accès au serveur telle que SERVER_ALL_ACCESS. Lorsque vous avez terminé avec la poignée, passez-la au FermerImprimante fonction pour le fermer.\nUtilisez le Accès souhaité membre du PRINTER_DEFAULTS pour spécifier les droits d&#39;accès dont vous avez besoin sur l&#39;imprimante. Les droits d&#39;accès peuvent être l&#39;un des suivants. (Si pDefault est NUL, les droits d&#39;accès sont PRINTER_ACCESS_USE.)","html":"<p>La poignée pointée par phPrinter n&#039;est pas thread-safe. Si les appelants doivent l&#039;utiliser simultanément sur plusieurs threads, ils doivent fournir un accès de synchronisation personnalisé à la poignée de l&#039;imprimante à l&#039;aide des fonctions de synchronisation. Pour éviter d&#039;écrire du code personnalisé, l&#039;application peut ouvrir une poignée d&#039;imprimante sur chaque thread, selon les besoins.\nle pDefault Le paramètre vous permet de spécifier le type de données et les valeurs de mode de périphérique utilisés pour l&#039;impression des documents soumis par le StartDocPrinter une fonction. Cependant, vous pouvez remplacer ces valeurs en utilisant le paramètre SetJob après le démarrage d&#039;un document.\nle DEVMODE paramètres définis dans le PRINTER_DEFAULTS structure du pDefault ne sont pas utilisés lorsque la valeur de la pDatatype membre du DOC_INFO_1 structure qui a été adoptée dans le pDocInfo paramètre du StartDocPrinter l&#039;appel est &quot;RAW&quot;. Lorsqu&#039;un document de haut niveau (tel qu&#039;un fichier Adobe PDF ou Microsoft Word) ou d&#039;autres données d&#039;imprimante (telles que PCL, PS ou HPGL) sont envoyés directement à une imprimante avec pDatatype réglé sur &quot;RAW&quot;, le document doit décrire DEVMODE-les paramètres des travaux d&#039;impression de style dans la langue comprise par le matériel.\nVous pouvez appeler le OpenPrinter pour ouvrir un descripteur sur un serveur d&#039;impression ou pour déterminer les droits d&#039;accès dont dispose un client sur un serveur d&#039;impression. Pour ce faire, spécifiez le nom du serveur d&#039;impression dans le pPrinterName , définissez le pDatatype et pDevMode membres de PRINTER_DEFAULTS structure à NULet définissez Accès souhaité membre pour spécifier une valeur de masque d&#039;accès au serveur telle que SERVER_ALL_ACCESS. Lorsque vous avez terminé avec la poignée, passez-la au FermerImprimante fonction pour le fermer.\nUtilisez le Accès souhaité membre du PRINTER_DEFAULTS pour spécifier les droits d&#039;accès dont vous avez besoin sur l&#039;imprimante. Les droits d&#039;accès peuvent être l&#039;un des suivants. (Si pDefault est NUL, les droits d&#039;accès sont PRINTER_ACCESS_USE.)</p>"},{"id":"text-15","type":"text","heading":"","plain_text":"Valeur d&#39;accès souhaitée\nSens","html":"<p>Valeur d&#039;accès souhaitée\nSens</p>"},{"id":"text-16","type":"text","heading":"","plain_text":"PRINTER_ACCESS_ADMINISTER\nPour effectuer des tâches administratives, telles que celles fournies par SetPrinter.","html":"<p>PRINTER_ACCESS_ADMINISTER\nPour effectuer des tâches administratives, telles que celles fournies par SetPrinter.</p>"},{"id":"text-17","type":"text","heading":"","plain_text":"PRINTER_ACCESS_USE\nPour effectuer des opérations d&#39;impression de base.","html":"<p>PRINTER_ACCESS_USE\nPour effectuer des opérations d&#039;impression de base.</p>"},{"id":"text-18","type":"text","heading":"","plain_text":"PRINTER_ALL_ACCESS\nPour effectuer toutes les tâches administratives et les opérations d&#39;impression de base à l&#39;exception de SYNCHRONIZE (voir Droits d&#39;accès standard.","html":"<p>PRINTER_ALL_ACCESS\nPour effectuer toutes les tâches administratives et les opérations d&#039;impression de base à l&#039;exception de SYNCHRONIZE (voir Droits d&#039;accès standard.</p>"},{"id":"text-19","type":"text","heading":"","plain_text":"PRINTER_ACCESS_MANAGE_LIMITED\nPour effectuer des tâches administratives, telles que celles fournies par SetPrinter et SetPrinterData. Cette valeur est disponible à partir de Windows 8.1.","html":"<p>PRINTER_ACCESS_MANAGE_LIMITED\nPour effectuer des tâches administratives, telles que celles fournies par SetPrinter et SetPrinterData. Cette valeur est disponible à partir de Windows 8.1.</p>"},{"id":"text-20","type":"text","heading":"","plain_text":"valeurs de sécurité génériques, telles que WRITE_DAC\nPour autoriser des droits d&#39;accès de contrôle spécifiques. Voir Droits d&#39;accès standard.","html":"<p>valeurs de sécurité génériques, telles que WRITE_DAC\nPour autoriser des droits d&#039;accès de contrôle spécifiques. Voir Droits d&#039;accès standard.</p>"},{"id":"text-21","type":"text","heading":"","plain_text":"Si un utilisateur n&#39;est pas autorisé à ouvrir une imprimante ou un serveur d&#39;impression spécifié avec l&#39;accès souhaité, le OpenPrinter l&#39;appel échouera avec une valeur de retour de zéro et GetLastError renverra la valeur ERROR_ACCESS_DENIED.\nExemples\nPour un exemple de programme qui utilise cette fonction, consultez Comment: imprimer à l&#39;aide de l&#39;API d&#39;impression GDI.\nExigences","html":"<p>Si un utilisateur n&#039;est pas autorisé à ouvrir une imprimante ou un serveur d&#039;impression spécifié avec l&#039;accès souhaité, le OpenPrinter l&#039;appel échouera avec une valeur de retour de zéro et GetLastError renverra la valeur ERROR_ACCESS_DENIED.\nExemples\nPour un exemple de programme qui utilise cette fonction, consultez Comment: imprimer à l&#039;aide de l&#039;API d&#039;impression GDI.\nExigences</p>"},{"id":"text-22","type":"text","heading":"","plain_text":"Client minimum pris en charge\nWindows 2000 Professionnel [desktop apps only]","html":"<p>Client minimum pris en charge\nWindows 2000 Professionnel [desktop apps only]</p>"},{"id":"text-23","type":"text","heading":"","plain_text":"Serveur minimum pris en charge\nWindows 2000 Server [desktop apps only]","html":"<p>Serveur minimum pris en charge\nWindows 2000 Server [desktop apps only]</p>"},{"id":"text-24","type":"text","heading":"","plain_text":"Entête","html":"<p>Entête</p>"},{"id":"text-25","type":"text","heading":"","plain_text":"Winspool.h (inclure Windows.h)","html":"<p>Winspool.h (inclure Windows.h)</p>"},{"id":"text-26","type":"text","heading":"","plain_text":"Bibliothèque","html":"<p>Bibliothèque</p>"},{"id":"text-27","type":"text","heading":"","plain_text":"Winspool.lib","html":"<p>Winspool.lib</p>"},{"id":"text-28","type":"text","heading":"","plain_text":"DLL","html":"<p>DLL</p>"},{"id":"text-29","type":"text","heading":"","plain_text":"Winspool.drv","html":"<p>Winspool.drv</p>"},{"id":"text-30","type":"text","heading":"","plain_text":"Noms Unicode et ANSI\nOpenPrinterW (Unicode) et OpenPrinterA (ANSI)","html":"<p>Noms Unicode et ANSI\nOpenPrinterW (Unicode) et OpenPrinterA (ANSI)</p>"},{"id":"text-31","type":"text","heading":"","plain_text":"Voir également","html":"<p>Voir également</p>"},{"id":"text-32","type":"text","heading":"","plain_text":"Impression","html":"<p>Impression</p>"},{"id":"text-33","type":"text","heading":"","plain_text":"Fonctions de l&#39;API du spouleur d&#39;impression","html":"<p>Fonctions de l&#039;API du spouleur d&#039;impression</p>"},{"id":"text-34","type":"text","heading":"","plain_text":"WritePrinter","html":"<p>WritePrinter</p>"},{"id":"text-35","type":"text","heading":"","plain_text":"FermerImprimante","html":"<p>FermerImprimante</p>"},{"id":"text-36","type":"text","heading":"","plain_text":"PRINTER_DEFAULTS","html":"<p>PRINTER_DEFAULTS</p>"},{"id":"text-37","type":"text","heading":"","plain_text":"SetJob","html":"<p>SetJob</p>"},{"id":"text-38","type":"text","heading":"","plain_text":"SetPrinter","html":"<p>SetPrinter</p>"},{"id":"text-39","type":"text","heading":"","plain_text":"StartDocPrinter","html":"<p>StartDocPrinter</p>"},{"id":"text-40","type":"text","heading":"","plain_text":"&lt;! &#8211;  -&gt;\nClick to rate this post!\n                                   \n                               [Total: 0  Average: 0]","html":"<p>&lt;! &#8211;  -&gt;\nClick to rate this post!\n                                   \n                               [Total: 0  Average: 0]</p>"}],"sections":[{"id":"text-1","heading":"Text","content":"31/05/2018\n\t\t\t\t\t\t\t\n4 minutes pour lire"},{"id":"text-2","heading":"Text","content":"Dans cet article"},{"id":"text-3","heading":"Text","content":"&lt;! &#8211;  -&gt;\nle OpenPrinter La fonction récupère une poignée vers l&#39;imprimante ou le serveur d&#39;impression spécifié ou d&#39;autres types de poignées dans le sous-système d&#39;impression.\nSyntaxe\nBOOL OpenPrinter (\n  _In_ LPTSTR pPrinterName,\n  _Out_ LPHANDLE phPrinter,\n  _In_ LPPRINTER_DEFAULTS pDefault\n);"},{"id":"text-4","heading":"Text","content":"Paramètres"},{"id":"text-5","heading":"Text","content":"pPrinterName [in]"},{"id":"text-6","heading":"Text","content":"Pointeur vers une chaîne terminée par un caractère nul qui spécifie le nom de l&#39;imprimante ou du serveur d&#39;impression, l&#39;objet imprimante, XcvMonitor ou XcvPort.\nPour un objet imprimante, utilisez: PrinterName, Job xxxx. Pour un XcvMonitor, utilisez: ServerName, XcvMonitor MonitorName. Pour un XcvPort, utilisez: ServerName, XcvPort PortName.\nSi NUL, il indique le serveur d&#39;impression local."},{"id":"text-7","heading":"Text","content":"phPrinter [out]"},{"id":"text-8","heading":"Text","content":"Un pointeur vers une variable qui reçoit une poignée (non thread-safe) vers l&#39;imprimante ouverte ou l&#39;objet serveur d&#39;impression.\nle phPrinter Le paramètre peut renvoyer un descripteur Xcv à utiliser avec la fonction XcvData. Pour plus d&#39;informations sur XcvData, consultez le DDK."},{"id":"text-9","heading":"Text","content":"pDefault [in]"},{"id":"text-10","heading":"Text","content":"Un pointeur vers un PRINTER_DEFAULTS structure. Cette valeur peut être NUL."},{"id":"text-11","heading":"Text","content":"Valeur de retour\nSi la fonction réussit, la valeur de retour est une valeur non nulle.\nSi la fonction échoue, la valeur de retour est zéro.\nRemarques\nN&#39;appelez pas cette méthode dans DllMain."},{"id":"text-12","heading":"Text","content":"Remarque\nUn handle obtenu pour une imprimante distante par un appel à OpenPrinter pour une imprimante distante accède à l&#39;imprimante via un cache local dans le service de spouleur d&#39;impression. Ce cache n&#39;est pas précis en temps réel. Pour obtenir des données précises, remplacez l&#39;appel OpenPrinter par OpenPrinter2 avec pOptions.dwFlags défini sur PRINTER_OPTION_NO_CACHE. Notez que seul OpenPrinter2W est fonctionnel. La fonction renvoie un descripteur d&#39;imprimante qui utilise d&#39;autres appels d&#39;API d&#39;impression et contourne le cache local. Cette méthode se bloque en attendant la communication réseau avec l&#39;imprimante distante, il se peut donc qu&#39;elle ne revienne pas immédiatement. La vitesse de retour de cette fonction dépend de facteurs d&#39;exécution tels que l&#39;état du réseau, la configuration du serveur d&#39;impression et les facteurs d&#39;implémentation du pilote d&#39;imprimante qui sont difficiles à prévoir lors de l&#39;écriture d&#39;une application. L&#39;appel de cette fonction à partir d&#39;un thread qui gère l&#39;interaction de l&#39;interface utilisateur peut faire en sorte que l&#39;application semble ne pas répondre."},{"id":"text-13","heading":"Text","content":"Remarque\nUn handle obtenu par un appel à OpenPrinter pour une imprimante distante accédera à l&#39;imprimante via un cache local dans le service de spouleur d&#39;impression. De par sa conception, ce cache n&#39;est pas précis en temps réel. Si vous devez obtenir des données précises, remplacez le OpenPrinter appeler avec OpenPrinter2 avec pOptions.dwFlags mis à PRINTER_OPTION_NO_CACHE. Notez que seulement OpenPrinter2W est fonctionnel. Ce faisant, la fonction renvoie un descripteur d&#39;imprimante qui effectue d&#39;autres appels d&#39;API d&#39;impression pour contourner le cache local. Notez que cette approche se bloquera en attendant la communication réseau aller-retour avec l&#39;imprimante distante, il est donc possible qu&#39;elle ne revienne pas immédiatement. La rapidité de retour de cette fonction dépend de facteurs d&#39;exécution tels que l&#39;état du réseau, la configuration du serveur d&#39;impression et l&#39;implémentation du pilote d&#39;imprimante, facteurs difficiles à prévoir lors de l&#39;écriture d&#39;une application. Par conséquent, l&#39;appel de cette fonction à partir d&#39;un thread qui gère l&#39;interaction avec l&#39;interface utilisateur peut donner l&#39;impression que l&#39;application ne répond pas."},{"id":"text-14","heading":"Text","content":"La poignée pointée par phPrinter n&#39;est pas thread-safe. Si les appelants doivent l&#39;utiliser simultanément sur plusieurs threads, ils doivent fournir un accès de synchronisation personnalisé à la poignée de l&#39;imprimante à l&#39;aide des fonctions de synchronisation. Pour éviter d&#39;écrire du code personnalisé, l&#39;application peut ouvrir une poignée d&#39;imprimante sur chaque thread, selon les besoins.\nle pDefault Le paramètre vous permet de spécifier le type de données et les valeurs de mode de périphérique utilisés pour l&#39;impression des documents soumis par le StartDocPrinter une fonction. Cependant, vous pouvez remplacer ces valeurs en utilisant le paramètre SetJob après le démarrage d&#39;un document.\nle DEVMODE paramètres définis dans le PRINTER_DEFAULTS structure du pDefault ne sont pas utilisés lorsque la valeur de la pDatatype membre du DOC_INFO_1 structure qui a été adoptée dans le pDocInfo paramètre du StartDocPrinter l&#39;appel est &quot;RAW&quot;. Lorsqu&#39;un document de haut niveau (tel qu&#39;un fichier Adobe PDF ou Microsoft Word) ou d&#39;autres données d&#39;imprimante (telles que PCL, PS ou HPGL) sont envoyés directement à une imprimante avec pDatatype réglé sur &quot;RAW&quot;, le document doit décrire DEVMODE-les paramètres des travaux d&#39;impression de style dans la langue comprise par le matériel.\nVous pouvez appeler le OpenPrinter pour ouvrir un descripteur sur un serveur d&#39;impression ou pour déterminer les droits d&#39;accès dont dispose un client sur un serveur d&#39;impression. Pour ce faire, spécifiez le nom du serveur d&#39;impression dans le pPrinterName , définissez le pDatatype et pDevMode membres de PRINTER_DEFAULTS structure à NULet définissez Accès souhaité membre pour spécifier une valeur de masque d&#39;accès au serveur telle que SERVER_ALL_ACCESS. Lorsque vous avez terminé avec la poignée, passez-la au FermerImprimante fonction pour le fermer.\nUtilisez le Accès souhaité membre du PRINTER_DEFAULTS pour spécifier les droits d&#39;accès dont vous avez besoin sur l&#39;imprimante. Les droits d&#39;accès peuvent être l&#39;un des suivants. (Si pDefault est NUL, les droits d&#39;accès sont PRINTER_ACCESS_USE.)"},{"id":"text-15","heading":"Text","content":"Valeur d&#39;accès souhaitée\nSens"},{"id":"text-16","heading":"Text","content":"PRINTER_ACCESS_ADMINISTER\nPour effectuer des tâches administratives, telles que celles fournies par SetPrinter."},{"id":"text-17","heading":"Text","content":"PRINTER_ACCESS_USE\nPour effectuer des opérations d&#39;impression de base."},{"id":"text-18","heading":"Text","content":"PRINTER_ALL_ACCESS\nPour effectuer toutes les tâches administratives et les opérations d&#39;impression de base à l&#39;exception de SYNCHRONIZE (voir Droits d&#39;accès standard."},{"id":"text-19","heading":"Text","content":"PRINTER_ACCESS_MANAGE_LIMITED\nPour effectuer des tâches administratives, telles que celles fournies par SetPrinter et SetPrinterData. Cette valeur est disponible à partir de Windows 8.1."},{"id":"text-20","heading":"Text","content":"valeurs de sécurité génériques, telles que WRITE_DAC\nPour autoriser des droits d&#39;accès de contrôle spécifiques. Voir Droits d&#39;accès standard."},{"id":"text-21","heading":"Text","content":"Si un utilisateur n&#39;est pas autorisé à ouvrir une imprimante ou un serveur d&#39;impression spécifié avec l&#39;accès souhaité, le OpenPrinter l&#39;appel échouera avec une valeur de retour de zéro et GetLastError renverra la valeur ERROR_ACCESS_DENIED.\nExemples\nPour un exemple de programme qui utilise cette fonction, consultez Comment: imprimer à l&#39;aide de l&#39;API d&#39;impression GDI.\nExigences"},{"id":"text-22","heading":"Text","content":"Client minimum pris en charge\nWindows 2000 Professionnel [desktop apps only]"},{"id":"text-23","heading":"Text","content":"Serveur minimum pris en charge\nWindows 2000 Server [desktop apps only]"},{"id":"text-24","heading":"Text","content":"Entête"},{"id":"text-25","heading":"Text","content":"Winspool.h (inclure Windows.h)"},{"id":"text-26","heading":"Text","content":"Bibliothèque"},{"id":"text-27","heading":"Text","content":"Winspool.lib"},{"id":"text-28","heading":"Text","content":"DLL"},{"id":"text-29","heading":"Text","content":"Winspool.drv"},{"id":"text-30","heading":"Text","content":"Noms Unicode et ANSI\nOpenPrinterW (Unicode) et OpenPrinterA (ANSI)"},{"id":"text-31","heading":"Text","content":"Voir également"},{"id":"text-32","heading":"Text","content":"Impression"},{"id":"text-33","heading":"Text","content":"Fonctions de l&#39;API du spouleur d&#39;impression"},{"id":"text-34","heading":"Text","content":"WritePrinter"},{"id":"text-35","heading":"Text","content":"FermerImprimante"},{"id":"text-36","heading":"Text","content":"PRINTER_DEFAULTS"},{"id":"text-37","heading":"Text","content":"SetJob"},{"id":"text-38","heading":"Text","content":"SetPrinter"},{"id":"text-39","heading":"Text","content":"StartDocPrinter"},{"id":"text-40","heading":"Text","content":"&lt;! &#8211;  -&gt;\nClick to rate this post!\n                                   \n                               [Total: 0  Average: 0]"}],"media":{"primary_image":""},"relations":[{"rel":"canonical","href":"https://tutos-gameserver.fr/2020/06/17/fonction-openprinter-winspool-h-applications-win32-bien-choisir-son-serveur-d-impression/"},{"rel":"alternate","href":"https://tutos-gameserver.fr/2020/06/17/fonction-openprinter-winspool-h-applications-win32-bien-choisir-son-serveur-d-impression/llm","type":"text/html"},{"rel":"alternate","href":"https://tutos-gameserver.fr/2020/06/17/fonction-openprinter-winspool-h-applications-win32-bien-choisir-son-serveur-d-impression/llm.json","type":"application/json"},{"rel":"llm-manifest","href":"https://tutos-gameserver.fr/llm-endpoints-manifest.json","type":"application/json"}],"http_headers":{"X-LLM-Friendly":"1","X-LLM-Schema":"1.1.0","Content-Security-Policy":"default-src 'none'; img-src * data:; style-src 'unsafe-inline'"},"license":"CC BY-ND 4.0","attribution_required":true,"allow_cors":false}