FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
|
Herramientas | Buscar en Tema | Desplegado |
#1
|
||||
|
||||
una mas, capturar el resultado del system()
ho,a como estan...
esta nueva pregutna es para saber si puedo guardar en una variable el resultado de los comandos que ejecuto desde system(); para ser mas claro supongamos que uso al presionar un boton: Cita:
bueno lo que quiero saber es que si el resultado de ese dir, osea el listado de directorios que muestra puede ser alamacenado en una variable o algo asi... Gracias |
#2
|
||||
|
||||
Esto lo puedes abordar "redireccionando"... por ejemplo abre la consola y pega ésto:
Código:
dir %systemroot%\*.* /s /b > %temp%\filelist.txt¬epad %temp%\filelist.txt Tambien puedes revisar ésto. Saludos |
#3
|
||||
|
||||
#4
|
||||
|
||||
ya habia pensado en lo del TXT pero me parecio interesnte preguntar acerca de metodos alternativos...
Muhas gracias, aunqeu no soy muy bueno en delphi esto me ayuda a comprender y aprender un poco mas del enguaje voy a mirar y muchas gracias de nuevo . |
#5
|
||||
|
||||
hola...
encontre "GetDosOutput" pero no encontre como utilizarla en c++ Builder... tambien utilize: system( "taskkill /M taskmgr.exe > %tmp%//kill.txt" ); y funciona bien pero me muestra la consola, cosa que no deseo.... despues utilize: ShellExecute(0, "open", "taskkill","/IM taskmgr.exe", "%SystemDir%//System32", SW_HIDE); no se como capturar el resultado, es ceri no se donde poner "> %tmp%//kill.txt" ya que es un comando mas. despues intente con: WinExec( "taskkill /M taskmgr.exe > %tmp%//kill.txt", SW_HIDE) modifique SW_HIDE por SW_NORMAL para poder ver el resultado y me decia que los parametros eran incorrectos... entonces mi pregunta es como hago esto con shellexecute o WinExec para que funcione ya que estos dos me dejan esconder la consola de commandos Gracias. Última edición por Negriz fecha: 12-11-2008 a las 01:10:41. |
#6
|
||||
|
||||
Crea un archivo que se llame consoleoutput.pas
En él escribe:
Añádelo a tu proyecto Builder y compílalo por separado. Generará un archivo llamado consoleoutput.hpp, es la cabecera de las dos funciones. Incluye esa cabecera en las unidades .cpp donde quieras usar las funciones, y compila. Saludos. |
#7
|
||||
|
||||
no sabia que eso se podia hacer...
mira funciona bien lo que me digiste, me crea el hpp pero hay un prblema, la funcion ExecuteDOSCommnad no pueed ejecutar mas de un comando, ejemplo help>c:/a.txt produce una excepcion y la funcion GetDosOutput no funciona con ningun cmando... Que puedo hacer.? |
#8
|
||||
|
||||
Esas funciones devuelven un Sring, de forma que no te hace falta redireccionar el flujo a un archivo de texto, que creo era la idea original. Tu programa lee directamente el resultado en una cadena:
Código:
AnsiString Help = ExecuteDOSCommand("help"); Para cada comando, una llamada nueva. Tiene ciertas limitaciones y se puede mejorar.... ExecuteDOSCommand Sólo ejecuta comandos del Sistema Operativo, y no precisa de la ruta completa del comando. GetDosOutput requiere la ruta completa del proceso a ejecutar. Es utlizada por ExecuteDOSCommand para llamar al comando requerido. Saludos. |
#9
|
||||
|
||||
Muchas Gracias... :D:D:D
Entiendo, (no puedo creer que no la haya pillado ) no tengo que usar GetDosCommand
muchas gracias por la ayuda. |
|
|
Temas Similares | ||||
Tema | Autor | Foro | Respuestas | Último mensaje |
Out of system resources | Khronos | Varios | 7 | 11-07-2008 12:54:20 |
Out of system resources | johurgi | Varios | 5 | 04-06-2008 15:54:34 |
System Gym | novato03 | Varios | 7 | 22-10-2007 22:07:06 |
Como capturar el resultado de una consulta SQL | Jose Manuel | SQL | 9 | 15-10-2005 12:40:37 |
driver not known to system? | maruenda | Varios | 0 | 25-03-2004 15:25:30 |
|