【问题标题】:Batch file that detects when its being copied?检测何时复制的批处理文件?
【发布时间】:2014-08-11 20:25:08
【问题描述】:

请有人帮我创建一个批处理文件来检测它何时被复制。 我很擅长批处理,但我想做的只是在我的批处理程序上放一个安全警告,如下所示:“不要复制此文件,否则它将被删除!”然后当用户尝试复制它时它会自行删除(所以它不能被盗等......)

【问题讨论】:

  • 有什么办法可以阻止某人从批处理文件中简单地编辑您的控件?这不是一个可行的想法。
  • @MikeW:是的,通过批处理将其转换为 exe 转换器会更有意义

标签: security batch-file copy delete-file


【解决方案1】:

正在运行的程序可以锁定文件,这样其他任何东西都无法打开它。我不确定如何在批处理脚本中执行此操作,但我认为它可以通过某种方式锁定自身。但是,如果文件只是坐在那里并且没有其他正在运行的进程将其锁定,那将无法正常工作。

为什么不能使用文件权限来阻止其他人访问该文件?

【讨论】:

    【解决方案2】:

    这并不是说这会阻止任何人读取文件并复制它......

    if not "%computername%#%~df0"=="AKOYA#C:\Users\Stephan\test\4\s.bat" echo this has been copied!! & del %~df0
    

    【讨论】:

    • 好的,谢谢大家。我想我会尝试@Stephans 的想法,然后也许只是尝试更改文件的权限。我实际上是在寻找在文件被复制而不是复制后删除文件的代码。还是谢谢你。
    猜你喜欢
    • 1970-01-01
    • 2012-01-24
    • 1970-01-01
    • 1970-01-01
    • 2022-01-08
    • 2020-04-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多