标题: [文件操作] 批处理如何限制特定用户或硬件码使用? [打印本页]
作者: shaokui123 时间: 2023-7-4 11:59 标题: 批处理如何限制特定用户或硬件码使用?
公司内为本部门做了个批处理程序,但是别的部门也随意复制使用。
想取计算机用户名或者电脑某个硬件码进行检测,符合的运行,没有的禁止运行。
也尝试转换exe,但是太繁琐,因为都是小白,所以暂不考虑加密什么的(论坛里加密很多可以套用)
请高手帮忙
作者: czjt1234 时间: 2023-7-4 13:30
假如你的批处理是1.bat
执行cmd命令- echo bathome.net>1.bat:hide.txt
复制代码
在1.bat开头加上- set /p s=<1.bat:hide.txt
- if "%s%" neq "bathome.net" exit
复制代码
然后把1.bar用winrar压缩打包,记得勾选 高级 - 保存文件流数据
这样你解压后的1.bat是可以运行的
复制后的1.bat是运行不了的
仅对付小白哦
还有如果你的同事来论坛问,要不要回答他?
作者: shaokui123 时间: 2023-7-4 13:38
回复 2# czjt1234
大佬,执行cmd命令是不是切换到1.bat目录下?
作者: Batcher 时间: 2023-7-4 13:59
回复 1# shaokui123
这样可以获取计算机名和用户名- @echo off
- echo %computername%
- echo %username%
- pause
复制代码
下一步需要你来说一下根据什么规则来判断
作者: shaokui123 时间: 2023-7-4 14:16
回复 4# Batcher
比如只允许计算机名zhangsan、lisi、wangerma,或主板序号123/456/789运行,别的拒绝
作者: czjt1234 时间: 2023-7-4 15:08
回复 3# shaokui123
你把 1.bat 改成 d:\1.bat 也一样
作者: shaokui123 时间: 2023-7-4 15:12
回复 2# czjt1234
这样你解压后的1.bat是可以运行的
复制后的1.bat是运行不了的
大佬,这两句话意思是我本地电脑解压可以用这个bat,别人压缩包复制过去解压后是用不了的?
作者: czjt1234 时间: 2023-7-4 16:08
回复 7# shaokui123
只要是压缩包解压的,都可以运行
复制压缩包后解压的,也可以运行
复制批处理的,不能运行
作者: mzzyb 时间: 2023-7-4 16:33
回复 shaokui123
这样可以获取计算机名和用户名下一步需要你来说一下根据什么规则来判断
Batcher 发表于 2023-7-4 13:59
1你先用这位大佬的方法获取到当前计算机名,然后对比你内容里的计算机名,再判断执不执行,
2为了不被别人修改代码,可以用软件,把bat转换成exe文件,也可以设置执行密码
作者: shaokui123 时间: 2023-7-4 17:30
回复 9# mzzyb
小白一个不会写代码。。。
转换exe我会,但是繁琐并且还能被提取不安全
作者: Batcher 时间: 2023-7-4 22:07
回复 1# shaokui123
参考:https://mp.weixin.qq.com/s/sO0Z-C9Lz8jy3LFw99GDig
作者: mzzyb 时间: 2023-7-5 09:17
6666,老大直接给你出个教程|~~~
作者: mzzyb 时间: 2023-7-5 17:17
本帖最后由 mzzyb 于 2023-7-5 17:22 编辑
回复 mzzyb
小白一个不会写代码。。。
转换exe我会,但是繁琐并且还能被提取不安全
shaokui123 发表于 2023-7-4 17:30
转换成exe怎么会被提取,你可以把bat代码不显示的执行,因为转换成exe了,一般情况下没办法串改和修改bat文件内容。
看了老大的判断介绍,最符合你的要求的就是用if语句了,把计算机名写死在bat里,让后再转换成exe,帮你写功能的人也没办法~~
如果有需要,你告诉我能运行的那几台电脑的计算机名,我写给你,你再判断后执行的那块写上你想要的命令代码~~~
写在最后,看了老大结尾的需求读取主板序列号~~再用这个最为判定依据,这样就算重装系统了,只要你没换主板硬件,你写的bat也不受影响~~~
欢迎光临 批处理之家 (http://www.bathome.net/) |
Powered by Discuz! 7.2 |