Foro de elhacker.net

Programación => Programación C/C++ => Mensaje iniciado por: k0ws en 15 Mayo 2011, 19:16 pm



Título: [Duda] Llamar a argumentos de otro exe desde C.
Publicado por: k0ws en 15 Mayo 2011, 19:16 pm
Bueno,mi duda es la siguiente,si yo tengo esto:

Código:
#include<stdio.h>
#include<stdlib.h>
int main(){
char cad[20];
printf("Introduce el argumento: ");
scanf("%s",cad);
system("taskkill /f /im %s",cad)
return 0;
}

¿Porque no funciona,cual es el fallo?

-Saludos y Gracias-


Título: Re: [Duda] Llamar a argumentos de otro exe desde C.
Publicado por: Queta en 15 Mayo 2011, 21:18 pm
No puedes pasar el parámetro de esta manera (http://www.cplusplus.com/reference/clibrary/cstdlib/system/ (http://www.cplusplus.com/reference/clibrary/cstdlib/system/)). Prueba con:

Código
  1. #include<stdio.h>
  2. #include<stdlib.h>
  3.  
  4. int main()
  5. {
  6. char cadena[20];
  7. char temporal[100];
  8.  
  9. printf("Introduce el argumento: ");
  10.  
  11. scanf("%s", cadena);
  12.  
  13. sprintf(temporal, "taskkill /f /im %s", cadena);
  14.  
  15. system(temporal);
  16.  
  17. return 0;
  18. }



Título: Re: [Duda] Llamar a argumentos de otro exe desde C.
Publicado por: k0ws en 15 Mayo 2011, 21:47 pm
Mil Gracias,funciona perfectamente  :D.

Con numeros,¿seria asi no?

Código:
#include<stdio.h>
#include<stdlib.h>
 
int main()
{
int num;
char temporal[100];
 
printf("Introduce el argumento: ");
 
scanf("%d", &num);
 
sprintf(temporal, "taskkill /f /im  %d", num);
 
system(temporal);
 
return 0;
}

-Saludos-


Título: Re: [Duda] Llamar a argumentos de otro exe desde C.
Publicado por: Queta en 15 Mayo 2011, 21:52 pm
De nada. A ver, si quieres números también puedes utilizar el código que te dí ya que un número es un carácter. El problema del tuyo es que no reservas suficiente memoria (prueba de escribir: 12345678901, y en vez de taskkill utiliza echo, para ver si el input es el mismo que el output) además de que con una cadena de caracteres puedes jugar con números y letras.