问题标签 [cups]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
macos - 如何启动/停止打印机?
如何使用 CUPS API 暂停/取消暂停打印队列?使用 CUPS API,我可以使用 cupsGetOption() 检查打印机状态。如果这返回值 5,我知道打印机已停止或暂停。在这种情况下,我想取消暂停打印机,有没有办法做到这一点?
windows - Windows 中的打印机通知应该如何与网络打印机一起使用?
我有一个应用程序需要使用它们关联的应用程序打印不同类型的文件,以便使用 ShellExecute 和“打印”动词进行打印。我的应用程序需要(希望)可靠地知道一个打印作业何时完成并且可以发出下一个打印作业。我使用 FindNextPrinterChangeNotification 完成此操作,并且使用本地打印机(例如通过 USB 安装)似乎一切正常,但如果涉及网络打印机,我会得到完全不同的行为。
我的一个客户将我的应用程序与网络打印机一起使用,这意味着专业打印机嵌入了自己的打印服务器,安装在 Windows Server 2008 R2 上,并使用 Windows 将安装的打印机共享给它的客户端。在这种情况下 FindNextPrinterChangeNotification 总是返回成功,但它返回的结构也总是设置了标志 PRINTER_NOTIFY_INFO_DISCARDED。我可以自己使用 Windows Server 2008 R2 重现此行为,它不会使用自己的嵌入式打印机服务器导出打印机,而只是本地安装的 FreePDF XP。此外,如果我在我们的一台 Ubuntu 开发服务器上使用 samba、cups 和 cups-pdf,我会得到相同的行为:Samba 成功导出了 cups-pdf 打印机,并且如果我将它安装在我的 Windows 7 开发机器中并将它与我的打印一起使用应用,
我的客户后来通过打印机的嵌入式打印服务器直接将他的打印机安装到它的客户端,并告诉我我的打印应用程序现在可以像使用本地打印机一样工作。意味着不再有 PRINTER_NOTIFY_INFO_DISCARDED 标志设置为我的应用程序版本的事件,这是一个错误状态,将退出应用程序。
我尝试再次使用 cups-pdf 重现,这次我没有安装 Samba 导出的打印机,而是直接通过使用 URL http://domain.example.org:631/printers/指定 cups 的打印机名称.pdf _ 我可以在 Windows 中成功使用这台打印机,但我的应用程序再次出现奇怪的事件。这次我没有得到设置了标志 PRINTER_NOTIFY_INFO_DISCARDED 的结果,但是 ppPrinterNotifyInfo 始终为 NULL,我根本没有得到任何结果,但是 FindNextPrinterChangeNotification 成功返回。
Microsoft 提供了有关防火墙的说明,打印机通知可能会被客户端阻止,但我认为这不是我的问题,因为我已经使用禁用的防火墙测试了相同的场景,启用的防火墙结果会有所不同,具体取决于如何我的开发机器正在与打印机通话,而我的 Windows 7 防火墙设置似乎默认允许打印机通信。
长话短说:我没有发现任何关于不同网络打印机的打印机通知有多可靠的信息。一切都取决于打印机驱动程序吗?似乎并非如此,因为如果 Samba 导出打印机或直接使用 http,它会有所不同。根据我的阅读,Windows 7 使用客户端渲染打印作业,然后将作业发送到网络假脱机程序,我可以在本地假脱机程序中看到这些作业很长时间。为什么我也没有收到通知?Samba 和打印机是否按设计使用 Windows Server 共享,不应该发布打印机通知?我找不到任何这样说的信息。
我真的很感激任何可以提供一些启示的文档的帮助或提示。谢谢!
python - 如何将 CUPS 打印机绑定到用户?
以下情况:
- 我们使用 LDAP/GOSA 来管理用户和他们的打印机
- 我使用 perl 脚本从 LDAP 中提取用户数据并将其解析为 yaml 文件(在用户每次登录时)
- 我在 python 脚本中使用解析的信息来配置 cups 打印机(在用户每次登录时)
- python 脚本清理旧配置的打印机并配置新的打印机。为了清洁,我使用 Bash 脚本:
我的问题是,当我切换用户时,所有 CUPS 打印机都会重新配置。是否有将 CUPS 打印机绑定到特定用户并仅清理属于该用户的打印机的功能?
示例:User1 使用打印机 dev1、dev2 和 dev3 登录。现在他切换到与只有 dev1 打印机的 User2 的新会话。现在 dev2 和 dev3 将为两个用户删除,并且在切换回 User1 后 dev2 和 3 不存在。
提前致谢!
问候
斯特凡
编辑:找到答案!当我有时间记录所有内容时,将在下午发布。
EDIT2:答案已发布;)
android - 为 android x86 编译 CUPS
我正在为嵌入式设备编译自定义 android-x86 版本。我需要使用 USB 热敏打印机。在 Ubuntu 上,它可以在 /dev/usb/lp0 上使用杯子开箱即用。我似乎找不到任何关于将 CUPS 移植到 android-x86 构建的说明,而且我对此还不是很熟悉。有没有人有解决方案来使用 android-x86 编译 CUPS 或在 android-x86 中与 /dev/usb/lp0 通信?
printing - 通过 libcups 以编程方式进行双面打印的正确方法是什么?
这是我目前的方法,它不能按预期工作。它只是在所有三种情况下打印单工。
php - 有杯子的PHP API吗?
我需要从我的 PHP Web 应用程序在杯子打印机上进行打印。是否有用于杯子的 PHP API?在我的服务器shell_exec()
中,所有这些功能都被严格禁用。所以我无法使用lpr
. 请指教
vagrant - 流浪端口转发不起作用。主办方无法取用杯子
因此,我正在与 vagrant 合作,并尝试将其用作打印服务器。我安装了杯子。
内部一切正常。我什至可以快速curl
访问我的 localhost:631(我的流浪者内部的杯子端口),一切都应有尽有。
问题是我无法从主机尝试以任何方式访问它。
显然我转发了端口,并且尝试了几个端口。我也尝试过使用 Debian 挤压和 Ubuntu 12.04。这是我现在的Vagrantfile
有任何想法吗?
linux - 杯臂交叉编译错误:未知类型名称'gss_OID'
我正在尝试为 Ezsdk sitara linux 6.0 交叉编译 CUPS,
我跟着
但是在 make 命令上它显示错误。日志的错误部分:
进行交叉编译需要做什么?
python - 如何为openwrt路由器编译pycups?
我正在为我的 tl-wdr4300 编译 pycups。我使用 debian stable 进行编译。
https://pypi.python.org/pypi/pycups
http://wiki.openwrt.org/doc/devel/crosscompile
我得到的第一个错误:
我知道这是个坏主意,但是我编辑了 /usr/include/python2.7/pyport.h 并更改了此条件
第二个错误:
之后,我将 cups、iconv.h 和 python2.7 从 /usr/include 复制到 /home/linuxlover/openwrt/trunk/staging_dir/toolchain-mips_34kc_gcc-4.6-linaro_uClibc-0.9.33.2/usr/include/
最后一个错误:
linux - 使用 libcups 打印具有不同打印选项的多个文件
我在 Linux 上使用 libcups 来打印文件。我想在一个打印请求中打印多个文件,每个文件都有不同的 cups_options_t 。有一个库 API cupsPrintFiles 但根据其接口,它将一个 cups_options_t 应用于每个文件。CUPS API 中是否有任何解决方案。如果 CUPS API 不支持,那么我剩下的唯一其他选项就是为所有文件使用队列,因为我想保持订单并使用 cupsPrintFile。想法。
问候, Farrukh Arshad。