V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
Damn
V2EX  ›  问与答

WPS 是怎么限制打印机类型的呢?

  •  
  •   Damn · 2024-03-11 19:03:03 +08:00 · 1569 次点击
    这是一个创建于 367 天前的主题,其中的信息可能已经有所发展或是发生改变。


    开发者文档很是简陋,没有任何描述。
    第 1 条附言  ·  2024-03-12 21:18:40 +08:00
    找到了两种解决方案:
    1.安装 Universal Document Converter ,此为收费软件,生成的虚拟打印机天然不带 PDF 字眼。
    2.修改注册表关键值,“制作”不带 PDF 字眼的虚拟打印机,具体方法可见 23#。
    结帖。
    23 条回复    2024-03-12 21:13:37 +08:00
    learnshare
        1
    learnshare  
       2024-03-11 19:04:01 +08:00
    输出为 PDF 再打印?
    Damn
        2
    Damn  
    OP
       2024-03-11 19:07:28 +08:00
    有的时候就是有保存为 PDF 的需求,但是 PDF 打印机被识别出来并禁用了。
    连 Ctrl+P 都禁用了。
    感觉是 wps 发明的 js 宏的功能,但是开发者文档过于简陋没有找到证据。
    Winner007
        3
    Winner007  
       2024-03-11 21:51:11 +08:00
    这是要会员才能保存 PDF ?这么会玩的吗
    PrinceofInj
        4
    PrinceofInj  
       2024-03-11 21:53:58 +08:00
    自己做了一个打印的对话框吧。没有使用系统原生的。
    kkk9
        5
    kkk9  
       2024-03-11 22:08:20 +08:00
    https://github.com/clawsoftware/clawPDF

    基于此项目二次开发即可,编译前把一些关键参数伪装成 HP 打印机即可😁
    Raynard
        6
    Raynard  
       2024-03-11 22:16:15 +08:00
    office 365 ,拼车一年才 40 把。。。不比 wps 好用多了?
    Damn
        7
    Damn  
    OP
       2024-03-11 22:24:21 +08:00
    @Winner007 并不是,OA 加载项禁用的。
    @kkk9 驱动签名不好解决啊。。
    @Raynard OA 只能用这玩意。
    ysc3839
        8
    ysc3839  
       2024-03-11 23:37:05 +08:00 via Android
    打印到 XPS 能用吗?
    ltkun
        9
    ltkun  
       2024-03-11 23:39:09 +08:00 via Android
    @Raynard 说反了 wps 好用的多 各种小工具
    Routeros
        10
    Routeros  
       2024-03-11 23:48:03 +08:00

    不是很懂为啥你的会限制类型。
    不是直接打印的吗?
    wbwm
        11
    wbwm  
       2024-03-12 08:56:47 +08:00


    刚才特地下载一个安装了一下,没限制啊?
    Damn
        12
    Damn  
    OP
       2024-03-12 09:22:28 +08:00 via iPhone
    @Routeros
    @wbwm 请看 7#
    @ysc3839 不能,经过一番研究,目前找到一个方法,用物理打印机的驱动做一个管道(虚拟 PDF 打印机做管道一样被识别),后端把 PCL 转成 PDF ,缺点是生成的 PDF 没有办法选择复制,体积也大,没有达到生成 PDF 的预期。。
    eroko
        13
    eroko  
       2024-03-12 09:34:59 +08:00
    你得确定一下这个是文档限制还是你们的 wps 是定制版限制了 PDF 打印。正常来说 WPS 自己也是有 PDF 打印功能的。
    Damn
        14
    Damn  
    OP
       2024-03-12 09:36:32 +08:00 via iPhone
    @eroko 是定制版,但只有在开 OA 文档时才出现这种情况,正常编辑本地文档的时候没有限制。
    eroko
        15
    eroko  
       2024-03-12 10:06:43 +08:00
    @Damn WPS 应该有一个 OEM 什么的文件夹,里面有 OEM 相关的配置文件,你可以在这里面找找。
    Damn
        16
    Damn  
    OP
       2024-03-12 11:53:47 +08:00
    oem.ini 里面没有特别的信息。
    我比较确定是文档加载项带来的限制。
    打开 OA 文档的时候 ribbon 工具栏会出现这个。


    同时 Ctrl+P 被禁用,文档右侧出现工具栏。


    点 JS 调试会有相关记录。
    Damn
        17
    Damn  
    OP
       2024-03-12 11:54:48 +08:00
    @eroko 参考楼上,正常编辑本地文档的时候,如 10#、11#一样,是没有限制的。
    ysc3839
        18
    ysc3839  
       2024-03-12 12:19:49 +08:00 via Android
    @Damn 看一下 js 代码?
    Damn
        19
    Damn  
    OP
       2024-03-12 16:54:47 +08:00
    @ysc3839
    本地找到了这些 js 的副本,尝试修改这些 js ,但发现每次打开文档都是加载的在线版。
    看起来找一个名字不带 PDF 这三个字母的虚拟打印机就可以破解了。
    Damn
        20
    Damn  
    OP
       2024-03-12 16:55:26 +08:00
    @ysc3839 那么就成了一个 XY 问题,那里去找一个名字里不带 PDF 的虚拟 PDF 打印机呢?
    ysc3839
        21
    ysc3839  
       2024-03-12 17:57:28 +08:00 via Android
    @Damn 不能直接执行 js 代码绕过吗?
    ysc3839
        22
    ysc3839  
       2024-03-12 17:58:25 +08:00 via Android
    @Damn 意思是不修改 js 本身,而是额外执行代码去影响原有逻辑,类似浏览器的 User Script
    Damn
        23
    Damn  
    OP
       2024-03-12 21:13:37 +08:00   ❤️ 1
    @ysc3839 找到了检测逻辑,修改注册表关键键值即可。
    记录一下结帖。

    HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Print\Printers
    推测有:Printer Driver 、driverName

    HKLM\SYSTEM\CurrentControlSet\Control\Print\Environments\Windows x64\Drivers\Version-3 (或者 4 )
    重命名键,与上一步修改的值对应起来即可

    未进一步测试是否有多余步骤。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   5564 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 24ms · UTC 08:39 · PVG 16:39 · LAX 01:39 · JFK 04:39
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.