El script por lotes, a.k.a. bat
o cmd
, es bueno: fácil de aprender, fácil de codificar, fácil de usar, fácil de distrubuir. Sin embargo, permite que los programadores se detengan cuando necesitan lograr algo complejo en un script por lotes. Lo más importante es que encuentra un problema de seguridad cuando contiene información confidencial como el nombre de usuario para iniciar sesión, las contraseñas, los códigos de autenticación e incluso su código fuente.
Hice una pequeña investigación sobre la compilación de secuencias de comandos por lotes y el resultado es el siguiente:
- compilador por lotes
- ¿Se puede compilar? Sí.
- ¿Puede ejecutarse? No, incluso con
Windows 95
de compatibilidad. - ¿Cómo compilar? Desconocido debido al problema anterior.
- ¿Es seguro? Desconocido debido al problema anterior.
- compilador de archivos por lotes rápidos
- ¿Se puede compilar? Sí.
- ¿Puede ejecutarse? Sí.
- ¿Cómo compilar? Borland Delphi 6.0 - 7.0
- ¿Es seguro? No, escribirá un script de lote temporal en
%temp%
al que se puede acceder directamente.
- Conversor de BAT a EXE avanzado
- ¿Se puede compilar? Sí.
- ¿Puede ejecutarse? No, incluso con
Windows 95
de compatibilidad. - ¿Cómo compilar? Desconocido debido al problema anterior.
- ¿Es seguro? Desconocido debido al problema anterior.
- Convertidor Bat to Exe
- ¿Se puede compilar? Sí.
- ¿Puede ejecutarse? Sí.
- ¿Cómo compilar? Microsoft Visual C ++ 6.0
- ¿Es seguro? No, escribirá un script de lote temporal en
%temp%
al que se puede acceder directamente.
Conclusión:
Los cuatro compiladores anteriores parecen tener problemas con la compatibilidad y los métodos de compilación. No son fiables y seguros para compilar secuencias de comandos por lotes.
Mejora a realizar:
Mejor: para escribir el script temporal por lotes en RAM en lugar de %temp%
.
Aún mejor: convierta el script por lotes al lenguaje de programación de bajo nivel.
Ideal: optimizar LLPL para la compatibilidad de diferentes Windows.
Por último, aquí está mi pregunta:
¿Hay alguna manera de compilar y asegurar un script por lotes que no esté utilizando el método del segundo y del cuarto software de arriba?
¡Gracias!