![]() |
añadir bat a un ejecutable de delphi
Hola a todos, se puede añadir un fichero bat a un ejecutable de delphi para poder llamar a ese bat desde un botón. (no quiero que el archivo bat esté grabado en el disco duro) muchas gracias.
|
Hola,
Por poderse hacer, se puede hacer, como un recurso, por ejemplo, de la misma forma que podrías añadir un archivo de texto, tal y como se muestra en este hilo. Sin embargo, hasta donde yo llego, tendrás que extraer el archivo para luego ejecutarlo, no podrás ejecutarlo "desde dentro" del ejecutable. Lo que sí que tal vez podrías hacer es utilizar el propio Delphi, no un archivo BAT, para llevar a cabo lo que necesites. |
Yo haría esto:
Que es lo mismo que ejecutar secuencialmente las siguientes ordenes: Código:
dir \ > reporte.txt Lo otro que haría es igual de sencillo sin la necesidad de urguetear los recursos de la aplicacion;
Claro que en este ultimo ejemplo puedes llamar directamente al batch y oculto como el primer ejemplo; y cabe la pena hacer notar que el mismo batch se elmina. (del %0) Suerte |
Otra opción más:
Un memo oculto (o un StringList, vamos, lo que quieras). En cada línea pones una orden, después solo tienes que hacer un shellExecute de cada línea.
Saludos |
Al menos en teoría (propia) puedes ejecutar cualquier comando tipo MS-DOS acudiendo a la API de windows por lo que utilizar directamente BATs para lo que sea sale sobrando. Además usando la API tienes un poco más de control sobre errores y demás cosas que pueden suceder. Más aún cuando comentas que no quieres que haya rastro del BAT. Lo más sencillo es ver que comandos quieres ejecutar en el susodicho BAT y ejecutar sus equivalentes en Delphi.
|
Muchas Gracias a todos por las ideas, lo que quiero hacer realmente es hacer un programita para enviar mensajes por una red. La idea del bat era para ver si al final se ejecutaba correctamente el comando (net send ). Si no se ejecutaba correctamente creaba un archivo de error. ¿Alguien sabe si hay alguna manera de saber si ese comando en la consola ha terminado correctamente?. Muchas gracias de nuevo.
|
Código:
net send 192.168.1.66 "net send message" |
La franja horaria es GMT +2. Ahora son las 12:26:29. |
Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi