如何防止在 tmp 中编译批处理文件存储源?

How to prevent a compiled batch file store source in tmp?

我需要一个批处理文件编译器,它不会在 %tmp% 中保留源代码,所以不能那样破解。如果没有可以做到这一点的编译器,有没有办法阻止它?我试过 AbyssMedia QBFC,但它只会隐藏文件。

我同意Hackoo:这做不到。

批处理文件是 Windows 命令脚本。就像所有的脚本只是一个文本文件一样,批处理文件也需要一个解释器来执行,它是 Windows 命令处理器 cmd.exe 适用于所有版本的 Windows NT(NT4、2K、XP、Vista , ...).

所有 bat-to-exe 转换器只是将压缩甚至未压缩的批处理文件嵌入到可执行文件中。创建的可执行文件将批处理文件提取到临时文件的目录中,并将其作为进程执行,导致被解释为 cmd.exe

因此,所有这些 bat-to-exe 工具所做的事情也可以通过 WinRAR 通过创建自解压文件来完成RAR 存档在执行时自动将批处理文件(和其他添加的文件)提取到临时文件目录并执行最后一行删除自身的批处理文件。

换句话说,bat-to-exe 工具在我看来是完全没用的工具。 SomethingDark 是对的:bat-to-exe 转换器是垃圾。