Menú

Mostrar Mensajes

Esta sección te permite ver todos los mensajes escritos por este usuario. Ten en cuenta que sólo puedes ver los mensajes escritos en zonas a las que tienes acceso en este momento.

Mostrar Mensajes Menú

Mensajes - Duning

#1
Programación C/C++ / Temporizador en C
17 Noviembre 2013, 01:11 AM
Hola gente de elhacker, la verdad, hacía tiempo que no me pasaba por aquí, concreatamente desde 4º de la eso, y ahora estoy en la universidad, así que sí... unos 2 años.
En fin venía a preguntar lo que dice en el título, para que quede más claro, intento hacer esto:

Código (cpp) [Seleccionar]
#include<stdio.h>
int main(void){
  printf("1\n");
  //pasan 0,2 segundos
  printf("2\n");
  //pasan 0,2 segundos otra vez
  printf ("3\n);
  //etc
}

A ver si alguien me puede ayudar... gracias!
#2
Pon el código en code...

y otra cosa, creo que las etiquetas están mal... no creo que puedan tener espacios, prueba así

Código (dos) [Seleccionar]

@echo off
:menu
cls
color A
echo **********************************************************
echo ******    PROGRAMA DE INSTALACION  ********
echo 1.- BORRAR ARCHIVOS
echo 2.- AGREGAR ARCHIVOS con atributos
echo 3.- REINICIAR EQUIPO
echo 4.- salir del menu
echo
echo **************   ******************   ********************
echo.
echo.
set /p ver=que desea hacer..?
if %ver%==1 (goto :BORRAR_ARCHIVOS)
if %ver%==2 (goto :AGREGAR_ARCHIVOS)
if %ver%==3 (goto :REINICIAR EQUIPO)
if %ver%==9 (goto :salir)
cd..
cd..
cls
:borrar
color A
echo precione enter para continuar
pause >nul
cd..
cd..
title borrar archivos
color A
:BORRAR_ARCHIVOS
color A
del c:\windows\System32\"mg16.dll" /f /q
del c:\HYW_Data\"hywc.dat" /f /q
echo.
echo precione enter para regresar al menu
pause >nul
goto menu
:AGREGAR_ARCHIVOS
color A
COPY "c:\MCHYW\Lekarstvo hywc.dat" "c:\HYW_Data Hywc.dat"
COPY "c:\MCHYW\Lekarstvo mg16.dll" "c:\MCHYW\Lekarstvo"
echo.
echo.
echo precione enter para regresar al menu
pause >nul
goto menu
:salir
exit.


Falta:
:REINICIAR EQUIPO

No se donde lo querrás poner, pero te digo que no soy ningun experto en batch, porbablemente tenga fallos y tal e.e

Lo unico que cambie fueron las etiquetas y el IF
#3
Cita de: EleKtro H@cker en 31 Julio 2012, 17:14 PM
saludos

Pues sí, había que reiniciar, entoces no me sirve ese método D:

Alguna forma que sirva en XP, Vista 7 (sin instalar aquello) y sin tener que reiniciar?

Luego,
Código (dos) [Seleccionar]
RD "%userprofile%\Escritorio\Meter_el_Jar_aqui"
Tengo que poner "Escritorio", no Desktop si no a mi no me funciona, y en Windows 7 funcionará?

Otro,
Código (dos) [Seleccionar]
REG ADD "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Environment" /v "s1" /d "Slot vacia"

Cada vez que quiero cambiarle el valor, me dice que ya existe, y me pregunta si quiero sobreescribirlo. ¿Como hago para que no lo pregunte, sino que directamete lo sobreescriba sin preguntar? (¿Sería con /Q ?)
#4
Muchísimas gracias por todo ^^

Pero una cosa...

CitarSETX no está instalado en WindowsXP por defecto (En Windows 7 sí). Aquí puedes bajarlo: Windows XP Service Pack 2 Support Tools

Y no hay otro modo que no sea con el SETX para XP?

Enserio tio, muchísimas gracias :D




Cita de: Binary_Death en 31 Julio 2012, 16:41 PM
Si te es necesario mantener el valor de una variable, siempre puedes guardarla como variable de entorno.

Vamos a ver, la ruta del registro es esta:

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Environment


Ahí, como puedes ver, todos los valores son REG_SZ, por tanto, haciendo un:


REG ADD "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Environment" /v "nombre" /d "pepe" /f


Ahora cierra la cmd. Vuelve a abrirla (aunque creo que es necesario reiniciar primero el sistema). Escribe:


echo.%nombre%


Y como ves, el nombre de "pepe" quedó guardado.

De todas formas, estoy seguro de que para cualquier cosa que pretendas hacer, habrá métodos más eficientes.

Voy a probarlo.... wait... xD




Edito:

Cita de: Binary_Death en 31 Julio 2012, 16:41 PM
Si te es necesario mantener el valor de una variable, siempre puedes guardarla como variable de entorno.

Vamos a ver, la ruta del registro es esta:

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Environment


Ahí, como puedes ver, todos los valores son REG_SZ, por tanto, haciendo un:


REG ADD "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Environment" /v "nombre" /d "pepe" /f


Ahora cierra la cmd. Vuelve a abrirla (aunque creo que es necesario reiniciar primero el sistema). Escribe:


echo.%nombre%


Y como ves, el nombre de "pepe" quedó guardado.

De todas formas, estoy seguro de que para cualquier cosa que pretendas hacer, habrá métodos más eficientes.


A ver:

Código (dos) [Seleccionar]
@echo off
REG ADD "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Environment" /v "s1" /d "Slot vacia"
echo %s1%
pause


Debería salir "Slot vacia" no? Pues no sale :C pero cuando intento volverlo a hacer me pregunta si quiero substituir el valor actual de "s1".

Que estoy haciendo mal?
#5
Cita de: EleKtro H@cker en 31 Julio 2012, 02:24 AM
Las variables, logicamente solo tienen efecto en la ejecución del script... Y cuando finaliza la instancia de la CMD, finaliza el almacenamiento de las variables en la memoria.

Hay varias formas de "recordar" eso... Guardando la variable "nombre" en un archivo temporal, O guardandolo en el mismo script (Al final del script), O agregando una variable de entorno al sistema:

Código (dos) [Seleccionar]

@Echo OFF
If defined NOMBRE (Echo Varible NOMBRE = %NOMBRE%)
SETX "NOMBRE" "elhacker.net" >NUL
pause
exit


Saludos


Código (dos) [Seleccionar]
"SETX" no se reconoce como un comando interno o externo,
programa o archivo de lotes ejecutable.
Presione una tecla para continuar . . .


Me salta ese error :C alguna idea? btw estoy en XP

Otra cosa son unos errores que no se por que tengo :C

1.
Código (dos) [Seleccionar]
COPY minecrafts1.jar %appdata%\.minecraft\bin\Jars
Me dice "La sintaxis del comando no es correcta."
Pero aqui dice que es así...
http://www.elhacker.net/ProgramacionBat.html

CitarCOPY [opciones] [origen] [destino]

2.

Código (dos) [Seleccionar]
RD %HOMEPATH%\Escritorio\Meter_el_Jar_aqui

Me dice:

Código (dos) [Seleccionar]
El nombre del directorio no es válido.
El sistema no puede hallar el archivo especificado.
El sistema no puede hallar la ruta especificada.


Esto no lo entiendo para nada, me salen 3 errores por una sola linea de comando, y lo unico que quiero hacer es borrar la carpeta "Meter_el_Jar_aquí" que está ubicada en "%HOMEPATH%\Escritorio\Meter_el_Jar_aqui"

Una ayudita por favor...
#6
Hola....otra vez xD.

Bueno, lo que vengo preguntado es cómo puedo hacer para que el bat pueda leer líneas de un txt (u otro tipo) para utilizarlas como constates una vez cerrado el bat, me explico.

Quiero que alguien venga y:

Código (dos) [Seleccionar]
set /p NOMBRE=
escriba por ejemplo "pepe"

Cierre el bat, lo vuelva a abrir y cuando haga

Código (dos) [Seleccionar]
echo %NOMBRE%
Salga pepe

Quiero esto porque estoy intentado hacer un bat en el que cambias nombres a una serie de cosas. Y cuando re abras el bat, quiero que las recuerde.

Pues sobretodo eso, gracias por adelantado.
#7
Scripting / Re: [Batch] Virulator 1.0c
30 Julio 2012, 22:38 PM
Dios mio pedazo curro xD, pero en las imágenes las tildes no se te ven, eso lo has corregido? porque a mi me pasaba y aqui encontré como :D

http://foro.elhacker.net/scripting/caracteres_especiales_en_batch_espero_les_sirva-t270247.0.html

Y tengo unas dudas que me gustaría consultar contigo que se ve que sabes mucho, podríamos tratarlas por mensajes privados?

Gracias.
#8
Scripting / Re: Duda con el IF...
30 Julio 2012, 19:09 PM
Muchísimas gracias :D
#9
Hola. Intento hacer  que un bat me diga si una carpeta existe, o no. Éste es le código que estaba utilizando:

Código (dos) [Seleccionar]
@echo off
:PRINCIPIO
CD %appdata%\.minecraft\bin
if not exist Jars goto NOHAYJAR else SIHAYJAR
:NOHAYJAR
echo No hay Jars, creando directorio...
MD Jars
pause>nul
goto PRINCIPIO
:SIHAYJAR
echo Si hay Jar
pause>nul


Pero nunca me detecta la carpeta "Jars" y cuando ejecuta el MD me dice que ya existe (que es normal). En que me estoy equivocando?

Gracias