elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: ¿Eres nuevo? ¿Tienes dudas acerca del funcionamiento de la comunidad? Lee las Reglas Generales


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación C/C++ (Moderadores: Eternal Idol, Littlehorse, K-YreX)
| | |-+  [?] ERRORLEVEL
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: [?] ERRORLEVEL  (Leído 2,586 veces)
branon32

Desconectado Desconectado

Mensajes: 29


Hello World


Ver Perfil
[?] ERRORLEVEL
« en: 6 Diciembre 2018, 19:02 pm »

Hola buenas
Estoy haciendo un programa en c++ para un archivo bat y necesito pasarle variables al archivo por lotes, como hago para establecer %ERRORLEVEL%??


Hace mucho que busco información pero no encuentro nada  :-[


« Última modificación: 6 Diciembre 2018, 21:37 pm por branon32 » En línea

sit tibi terra levis
AlbertoBSD
Programador y
Moderador Global
***
Desconectado Desconectado

Mensajes: 3.705


🏴 Libertad!!!!!


Ver Perfil WWW
Re: [?] ERRORLEVEL
« Respuesta #1 en: 6 Diciembre 2018, 19:17 pm »

Código
  1. int main() {
  2. return 20; //El valor que retornes de la funcion principal es el indicado para el ERRORLEVEL, generalemnte siempre es return 0; cuando todo salio bien
  3. }
  4.  




« Última modificación: 6 Diciembre 2018, 19:26 pm por AlbertoBSD » En línea

branon32

Desconectado Desconectado

Mensajes: 29


Hello World


Ver Perfil
Re: [?] ERRORLEVEL
« Respuesta #2 en: 6 Diciembre 2018, 21:15 pm »

No está funcionando

array.exe
Código
  1. int main(){
  2. return 20;
  3. }
  4.  

main.bat
Código
  1. @echo off
  2.  
  3. array
  4. echo %ERRORLEVEL%
  5.  
  6.  

En lugar de devolver 20 devuelve -1073741819  :-X
« Última modificación: 6 Diciembre 2018, 21:36 pm por branon32 » En línea

sit tibi terra levis
AlbertoBSD
Programador y
Moderador Global
***
Desconectado Desconectado

Mensajes: 3.705


🏴 Libertad!!!!!


Ver Perfil WWW
Re: [?] ERRORLEVEL
« Respuesta #3 en: 6 Diciembre 2018, 23:01 pm »

Posiblemente tu programa no este terminando de manera correcta, posiblemente tienes algun bufferoverflow y el programa termina de forma inesperada y sin control de error. ejemplo

PROGAMA TOTALMENTE MAL:

Código
  1. #include<string.h>
  2.  
  3. void funcion() {
  4. char arreglo[20];
  5. memset(arreglo,'A',100); //BUFFER OVERFLOW !!
  6. }
  7.  
  8. int main() {
  9. funcion();
  10. return 1;
  11. }
  12.  

Ejemplo llamando a la funcion vulnerable.



Ejemplo SIN llamar a la funcion vulnerable




El programa anterior es totalemente vulnerable APROPOSITO, termina en la funcion(), sin volver a la funcion principal.

Revisa tu codigo posiblemente tienes un  BUG, si manejas memoria dinamica asegurate de no estar trabajando sobre apuntadores ya liberados, si trabajas con funciones como strcpy o similares segurate de cambiarlas por sus metodos seguros,

Asegurate de no salirte de los Limites del arreglo, algo muy comun es que si tienes un arreglo[10], y en el codigo realizas algo como for (i= 0; i <= 10, i++), en este caso estarias escribiendo UN SOLO byte fuera de la direccion del arreglo lo cual causaria un error de buffer overflow conocido como OFF by ONE



Saludos
En línea

branon32

Desconectado Desconectado

Mensajes: 29


Hello World


Ver Perfil
Re: [?] ERRORLEVEL
« Respuesta #4 en: 6 Diciembre 2018, 23:06 pm »

El código que uso es el que puse arriba
Int main y return 20  :-\
En línea

sit tibi terra levis
AlbertoBSD
Programador y
Moderador Global
***
Desconectado Desconectado

Mensajes: 3.705


🏴 Libertad!!!!!


Ver Perfil WWW
Re: [?] ERRORLEVEL
« Respuesta #5 en: 6 Diciembre 2018, 23:08 pm »

No puede ser posible, algo esta mal.

  • No estes ejecutando el ejecutable que compilaste. Intenta borrar el exe y compilar de nuevo.
  • Puede ser algun problema de compilador que estes usando.
En línea

branon32

Desconectado Desconectado

Mensajes: 29


Hello World


Ver Perfil
Re: [?] ERRORLEVEL
« Respuesta #6 en: 6 Diciembre 2018, 23:19 pm »

Esto es lo que tengo, y estoy utilizando CodeBlocks 13.12

Código
  1. #include <iostream>
  2. #include <stdlib.h>
  3. #include <stdio.h>
  4. #include <windows.h>
  5.  
  6. int main(int argc,char *argv[])
  7. {
  8.    //const char* str = argv[1];
  9.    //char pout = str[atoi(argv[2])];
  10.    //printf("hola");
  11.    return 20;
  12. }
En línea

sit tibi terra levis
Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
ERRORLEVEL ( .bat ) « 1 2 »
Scripting
MK-Ultra 16 37,385 Último mensaje 23 Marzo 2019, 10:16 am
por ferbenor
(Soclucionado) [BATCH] Ayuda con este batch! (%ERRORLEVEL%)
Scripting
SuperDraco 5 14,628 Último mensaje 23 Enero 2011, 15:23 pm
por SuperDraco
[Batch] Como usar %Errorlevel%?
Scripting
z3nth10n 2 4,391 Último mensaje 11 Junio 2012, 20:31 pm
por z3nth10n
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines