经常使用无限打印机会,加速老化寿命和墨盒更换速度,如何使用打印机加密来限制其他用户的随机使用,这一直困扰着我,找不到各种方法来满足网络内的需求,经过一些学习后,发现可以使用bat编写来实现加密打印机的想法。

通过计算机服务来实现开启和关闭打印机服务

通过关闭打印机服务后,我们打开word文档看打印机状态,显示未安装打印机,这时候我们无法使用打印。

重新启动打印机服务后,打印机列表显示了出来。

利用记事本编写bat程序,编写一个可执行的bat文件,来控制打印机服务的开启和关闭,从中加入我们需要的加密条件,从而利用密码来管控设置开启和关闭服务。

使用管理员方式运行后顺利运行该程序,但是我们还需要进一步优化流程,例如直接管理员方式运行。

利用命令我们直接略过右键运行的步骤

写完我们再运行一次,输入设定的密码123x,回车成功开启打印机服务,这时候你再试图关闭服务时,按什么键都会使cmd退出,因为这时候系统识别到命令已经运行结束了,如果需要重新关闭(上锁)服务时得重新运行bat文件,随机输入数字方可上锁。

如何使bat变得方便快捷,我尝试了倒计时等各种方式,后来利用一条暂停命令来使我们这个进程能够不退出再加密,上图中按任意键继续实现退出(不关闭服务),下图中按任意键加密实现退出时(关闭打印机服务)。

代码如下:

@echo off

>nul 2>&1 "%SYSTEMROOT%\system32\cacls.exe" "%SYSTEMROOT%\system32\config\system"

if '%errorlevel%' NEQ '0' (

goto UACPrompt

) else ( goto gotAdmin )

:UACPrompt

echo Set UAC = CreateObject^("S;^) > "%temp%\ge;

echo UAC.ShellExecute "%~s0", "", "", "runas", 1 >> "%temp%\ge;

"%temp%\ge;

exit /B

:gotAdmin

if exist "%temp%\ge; ( del "%temp%\ge; )

@echo off

cls

set/p y=请输入密码!:

if "%y%"=="123x" goto n

goto m

:n

net start "print spooler"

echo 按任意键加密& pause>nul

:m

net stop "print spooler"

从繁琐的操作到插入命令使操作变得简便,改良代码使自己想得实现的功能变成现实,这就是利用bat实现加密打印机服务的教程,本教程并不是最好的,但是在使用程度上应该是全网最实用的。

1.《打印机怎么锁印?终于找到答案了利用bat关闭服务来加密打印机》援引自互联网,旨在传递更多网络信息知识,仅代表作者本人观点,与本网站无关,侵删请联系页脚下方联系方式。

2.《打印机怎么锁印?终于找到答案了利用bat关闭服务来加密打印机》仅供读者参考,本网站未对该内容进行证实,对其原创性、真实性、完整性、及时性不作任何保证。

3.文章转载时请保留本站内容来源地址,https://www.lu-xu.com/why/3111046.html