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 - WaAYa HaCK

#251
Cita de: JaAViEr :) en  3 Julio 2011, 08:02 AM
Y con python :o ?
Código (python) [Seleccionar]

# -*- coding: utf-8 -*-
archivo=open("ARCHIVO","r")
for i in archivo:
  print i.replace("CARACTER EN CUESTION","")


Disculpa, pero no funciona. Suponiendo que tienes un archivo "tuarchivo.txt", y que quieres reemplazar los "?" por "!", debería ser algo así:
Código (python) [Seleccionar]
s = open("tuarchivo.txt").read()
s = s.replace('?','!')
f = open("tuarchivo.txt",'w')
f.write(s)
f.close()


Así sí funcionaría.
Saludos!
#252
Exacto, es tan simple como agregar una tarea programada que ejecute un .bat:

tarea.bat
Wscript.exe "C:\comprobar.vbs"

comprobar.vbs
Código (vb) [Seleccionar]
set objshell = createobject("wscript.shell")
objshell.run "C:\apagar.bat", vbhide


apagar.bat
Código (dos) [Seleccionar]

@echo off
Title=Foro.ElHacker.Net
setlocal enabledelayedexpansion

REM By PiToLoKo
REM Foro.ElHacker.Net


:Bucle
Set Reproductores=3
ping localhost -n 900 >nul

Set Reproductor=mpc.exe & Call :Verify
Set Reproductor=mpc-hc.exe & Call :Verify
Set Reproductor=kmplayer.exe & Call :Verify

If !Reproductores! EQU 0 (
echo Reinicio en proceso...
shutdown -s -t 30
goto :bucle
) ELSE (
shutdown -a >nul 2>&1
echo Reinicio cancelado, El reproductor de video se esta ejecutando.
ping localhost -n 5 >nul
cls
goto :bucle
)


:Verify
tasklist /fi "IMAGENAME eq %reproductor%" | findstr ".exe" >nul

IF %ERRORLEVEL% GEQ 1 (
Set /a Reproductores-=1
goto:eof
) else (
goto:eof
)




Sólo hacen falta esos 3 elementos:

tarea.bat ejecuta un VBS.
comprobar.vbs ejecuta el apagar.bat, oculto.
apagar.bat se queda ejecutándose oculto todo el rato, comprobando si hay algún reproductor activo. Si no, apaga.

Ahora, lo que puedes hacer es hacer que se ejecute automáticamente "tarea.bat":

Agregándolo al Registro:
reg ADD "HKCU\Software\Microsoft\Windows\CurrentVersion\Run /v tarea /d "C:\tarea.bat"

Con schtasks:
schtasks /create /SC ONLOGON /TN "Tarea" /TR "C:\tarea.bat"



Esto es el resumen de todo lo que ha dicho pitoloko . Con los 3 elementos y agregando el primero de ellos al Registro o a Tareas Programadas, no deberías tener ningún problema. Por cierto, cómo haces para detectar si el PC está inactivo?

PD: pitoloko, sé que ERRORLEVEL es una variable, pero a mí me dio error cuando puse:
if %ERRORLEVEL%==1 ...
y tuve que poner:
if ERRORLEVEL 1 ...

Ahora, no sé por qué no me funcionó.

Saludos!
#253
WarZone / Re: Ayuda plis sobre Molto Facil
2 Julio 2011, 23:31 PM
Habéis buscado en todo el código?  :rolleyes:
#254
Creo que podría hacerse con un goto:
Código (dos) [Seleccionar]

@echo off
tasklist /fi "IMAGENAME eq wmplayer.exe" | find /i "wmplayer.exe"
if ERRORLEVEL 2 echo. >nul
if ERRORLEVEL 1 goto otro
:otro
tasklist /fi "IMAGENAME eq kmplayer.exe" | find /i "kmplayer.exe"
if ERRORLEVEL 2 echo. >nul
if ERRORLEVEL 1 shutdown -s -t -c "No estas viendo ningun video"
ping localhost -n 5 >nul


Así, si no encuentra el primer proceso ejecutándose, va a mirar si está el otro proceso que le indicaste.

Puedes hacer así para todos los reproductores.

Saludos!
#255
No tienes permisos para el archivo en XP? Eso significa que no eres Administrador, que el archivo está corrupto o que pasa algo raro. Prueba a ejecutarlo como Administrador y vuelve a bajarte el archivo.
#256
Debes usar W7 o Vista, verdad? Con XP no pasa.
No te deja ejecutarlo, ni cuando eres Administrador? Entonces deberás abrirlo como SYSTEM o saltarte la UAC. En el foro hay muchos tutoriales sobre las dos cosas.

Saludos!
#257
 ;-) ;-) Genial aporte!

Se me ocurren muchas cosas...  :rolleyes:

Gracias!  :D
#258
De acuerdo.  :)
#259
Bueno, creo que lo conseguí.
Sí, se puede hacer con un batch, con el proceso tasklist:

Código (dos) [Seleccionar]
@echo off
tasklist /fi "IMAGENAME eq wmplayer.exe" | find /i "wmplayer.exe"
if ERRORLEVEL 2 echo. >nul
if ERRORLEVEL 1 shutdown -s -t 30 -c "No estas viendo ningun video"
ping localhost -n 5 >nul


Te debería funcionar:
tasklist /fi "IMAGENAME eq wmplayer.exe" | find /i "wmplayer.exe"
Esta línea filtra los procesos y encuentra el wmplayer.exe (cámbialo por lo que necesites)

if ERRORLEVEL 2 echo. >nul
No hagas nada si lo encuentras...

if ERRORLEVEL 1 shutdown -s -t 30 -c "No estas viendo ningun video"
Si no lo encuentras, apágate!

Saludos!
#260
Básicamente es porque un montón de saltos en el código de un programa puede resultar muy engorroso de leer. Si haces un code con 86 goto's, el que lea el código se va a volver loco.

Saludos!