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ú

Temas - Saberuneko

#1
Software / YouTube en VLC
21 Abril 2021, 13:04 PM
Como YouTube me tenía harto con los mil pop-ups y ventanitas intermedias para alcanzar cualquier vídeo, estuve mirando alternativas con las que abrir los vídeos cuando recibo un link. (No soy de buscar mucho vídeo en la plataforma, suelo recibir links de gente más que nada).

He descubierto hace poco que con VLC se puede.

Nota: El método a veces falla, si no funciona, copiar este .lua en la carpeta
Program Files\VideoLAN\VLC\lua\playlist
http://raw.githubusercontent.com/videolan/vlc/master/share/lua/playlist/youtube.lua

Una vez hecho esto, es solo abrir VLC, seleccionar la opción de Stream de Red..

Ponerle el enlace al vídeo..


¡Y a disfrutar!

Espero que os sea útil, a mí me ha ahorrado muchos dolores de cabeza últimamente.
Además, desde VLC, no salen anuncios ni pop-ups intrusivos mientras se ve el vídeo, sin necesidad de usar o configurar un adblocker como con los navegadores.

Dejo compartido un ejemplo de parte de las movidas incordiantes que pide hoy día:


Youtube me ha llegado a pedir hasta tarjeta de crédito o DNI para poder ver algunos vídeos, información personal que me niego a dar. VLC ha sido la solución para la mayoría de casos.
#2
Estoy intentando instalar los drivers para una HP Color LaserJet Pro M252 PCL 6

Me bajé la última versión de la web oficial aquí [14.0.15311.432]:
https://support.hp.com/es-es/drivers/selfservice/hp-color-laserjet-pro-m252-series/7089938

Pero no funciona, me da el siguiente error:


Llevo rato largo buscando el fichero que falta [hpbuio140l.inf] en su página, pero nada, ni idea de dónde sacarlo. ¿Alguien sabe dónde lo puedo obtener?

Muchas gracias por adelantado
#3
Estoy intentando añadir un device a mano en Azure mediante PowerShell porque no sincroniza desde un entorno híbrido con AD tradicional.

De momento todo lo demás bien, pero no me acepta nada como parámetro "AlternativeSecurityIds" porque no estoy seguro de qué tipo de valor es el esperado en este comando, más allá de que es un "System.String"

https://docs.microsoft.com/en-us/powershell/module/azuread/new-azureaddevice?view=azureadps-2.0
New-AzureADDevice -AccountEnabled $true -DisplayName $devicename -AlternativeSecurityIds $altsecid -DeviceId $deviceid

Ya probé con el UPN y SID del usuario que usa el dispositivo, entre otras..
He estado buscando documentación pero no encontré ejemplos útiles al respecto, los pocos ejemplos que ví apuntan al UPN o la ID de Microsoft del usuario, las cuales ya he probado y no funciona:

New-AzureADDevice : Cannot bind parameter 'AlternativeSecurityIds'. Cannot convert the "###" value of type "System.String" to type
"Microsoft.Open.AzureAD.Model.AlternativeSecurityId".
At line:1 char:96
+ ... "TEST_PC" -AlternativeSecurityIds "###" -Device ...
+                                               ~~~~~~~~~~~~~~~~~~~
   + CategoryInfo          : InvalidArgument: (:) [New-AzureADDevice], ParameterBindingException
   + FullyQualifiedErrorId : CannotConvertArgumentNoMessage,Microsoft.Open.AzureAD16.PowerShell.NewDevice


¿Alguien me puede guiar un poco por aquí?
#4
Mover carpetas de Usuario en W10
Supongamos que tenemos el sistema operativo en un disco pequeño, y queremos guardar nuestra enorme carpeta de usuario llena de música, imágenes y basurilla en el disco grande.

Creamos la nueva carpeta donde queramos nuestros datos, asegurando que tenemos las carpetitas individuales creadas dentro:
Documentos, Música, Imágenes, etc. (Nota: Se pueden nombrar como uno quiera)

Ahora movemos los directorios a la nueva ubicación. Para ello, abrimos el explorador de archivos, y hacemos lo siguiente en cada uno de los iconos que queramos mover, en este ejemplo "Documentos":


Clicamos en "Propiedades", vamos a la pestaña "Ubicación" y seleccionamos "Mover".


Ahí le ponemos la ruta nueva, cuando pregunte si se quieren mover los archivos a la nueva ubicación, decimos "SI", y así nos moverá todo para que no nos falte. Si la carpeta tiene muchísimos datos, recomiendo moverlo a mano (que es hacer cortar y pegar sin más). Copia más rápido, aunque luego tarda un poquillo en re-indexártelo.

--

Caso de Error propuesto - Carpetas de Biblioteca fusionadas por accidente:
Supongamos que somos corticos como yo, y la liamos, haciendo que dos carpetas apunten a la misma ubicación (por ejemplo, Música e Imágenes apuntan ambas a Imágenes).

Al hacer esto, las carpetas se habrán fusionado, y cambiar la ubicación no arreglará el problema, ya que las dos se reasignarán a la vez.

La solución para esto es entrar al registro en INICIO, tecleando REGEDIT:


Luego navegamos hasta la siguiente entrada, y modificamos los valores relacionados con lo que rompimos:
Equipo\HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\User Shell Folders

Nota, hay que editar dos entradas por carpetita, una tiene un nombre intuitivo, mientras que el otro tiene un código/dirección.

Os dejo un screenshot con el ejemplo, se puede ver el código a la izquierda, y la ruta que les puse a la derecha.


Si por ejemplo, hemos fusionado Imágenes y Música, y la que está mal ubicada es música, buscamos la ruta y la modificamos a mano en las dos entradas, arriba y abajo. En este ejemplo ya está corregido:



Como los códigos de arriba no son intuitivos, os dejo una lista de todos a continuación, el código de la izquierda siempre es el mismo para esos tipos de elemento:

{3B193882-D3AD-4EAB-965A-69829D1FB59F} Saved Pictures
{AB5FB87B-7CE2-4F83-915D-550846C9537B} Camera Roll
{B7BEDE81-DF94-4682-A7D8-57A52620B86F} Screenshots
{F42EE2D3-909F-4907-8871-4C22FC0BF756} Local Documents
{7D83EE9B-2244-4E70-B1F5-5393042AF1E4} Local Downloads
{A0C69A99-21C8-4671-8703-7934162FCF1D} Local Music
{0DDD015D-B06C-45D5-8C4C-F59713854639} Local Pictures
{35286a68-3c57-41a1-bbb1-0eae73d76c95} Local Videos


Después de hacer esto, es cuestión de separar los ficheros a mano si se ha escogido copiarlos por error.
#5
Windows / Dudas para Actualizar de W7 a W10
12 Octubre 2019, 21:48 PM
Buenas,

Dado que el soporte para Windows 7 finalizará pronto, estoy considerando actualizar mi operativo.
Tengo varias dudas al respecto, ya que mi máquina está configurada de una forma un poco peculiar y tengo software que sería muy complicado de reinstalar de cero.

La máquina tiene un disco SSD [C] de 112GB con el sistema operativo, del cual ahora mismo hay unos 30GB libres tras purgar todo lo sobrante. El resto de aplicaciones las instalo en un HDD tradicional de 1TB [D]. Esta configuración la pensé en su momento para tener boot rápido, simple y llanamente. ¿cabrá la actualización de W7 a W10 ahí dentro? Mi primera intención es intentar arrastrar desde la instalación actual, en vez de formatear e instalar limpio.

En caso de que la instalación no entre, supongo que podré clonar el operativo de [C] de ese SSD a uno más grande usando algo como Acronis ¿daría problemas actualizar tras hacer eso?

Por otro lado, mi carpeta de usuario está en el HDD [D], por tanto, separada del disco [C]. Para conseguir esto, básicamente moví la carpeta de sitio en su momento, y creé un enlace simbólico.
¿Dará esto problemas a la hora de actualizar? Temo perder mi perfil, lo cual seguramente traería problemas.

Finalmente, para actualizar, pienso utilizar una licencia OEM, la cual solo permite instalar una vez, en una máquina, si he comprendido bien. Para confirmar que todo va bien antes de consumir la clave de activación, ¿dispongo de un periodo de evaluación sin activar? Recuerdo que W7 te daba 1 o 2 meses antes de dar problemas. En mi caso sería simplemente un par de días para probar que funciona todo, y después activar.

Un Saludo y gracias por adelantado
#6
Hardware / Lectura de Temperaturas en SpeedFan
19 Septiembre 2018, 13:06 PM
Buenas,

Tengo mi PC de vuelta en casa y estoy ojeando las temperaturas tras reparar la máquina, ya que he sustituido el cooler.

Me acabo de dar cuenta que tal vez no las estaba interpretando correctamente en el pasado.

He aquí un screenshot del equipo trabajando sin carga:


Mi duda radica entre las lecturas "TEMP1" y "CORE". No estoy seguro de qué es qué...

Por si sirve de referencia, con carga de trabajo fuerte, las temperaturas eran más o menos las siguientes, estables en los siguientes valores durante tiempo, dando un margen de 1~2 grados arriba-abajo a lo largo del tiempo (no saqué screen)
TEMP1: 60ºC - GPU: 60ºC - CORE: 45ºC

"TEMP1" parece moverse en conjunto con la temperatura de GPU, sospecho que tal vez sea un sensor colocado cercano a la GPU. Hay un pequeño disipador de placa justo en frente de la salida de aire de la misma. (Vamos, que la gráfica sopla el aire directamente sobre ese disipador).

"CORE" a veces da lecturas de 20ºC sin carga. Lo cual me extraña ya que mi cuarto está a 30ºC ahora mismo. ¿Qué valor podría ser el correcto para la CPU?

Un Saludo.
#7
Hardware / Hard Reboot Repentino
28 Agosto 2018, 01:48 AM
He actualizado mi equipo hará unos 6 meses, todo ha ido bien de momento en respecto a temperaturas y rendimiento. Sin embargo, este mes, mi equipo se ha reiniciado repentinamente un par de veces mientras no hacía gran cosa con él (prácticamente nada abierto, casi recién encendido)

Lo que me extraña es que le he metido caña y no ha ocurrido nada. Por temperaturas no parece ser el problema, he mirado y no pasa de 60~70ºC bajo carga alta durante horas seguidas. (En vacío las temperaturas se quedan entre 30ºC~45ºC) Limpié el equipo a fondo hace un par de meses incluyendo cambio de pasta térmica en la CPU. Lo he vuelto a revisar y sigue limpio.

En ambos casos estaba delante del equipo. No había pantallazo azul de ningún tipo, simplemente la pantalla se ponía en negro un par de segundos y el equipo se reinició, tal cual ocurriría si pulsase la tecla de reset. En ambos casos el operativo no booteaba, se quedaba colgado. Mantuve el botón power unos segundos para apagar y luego volví a encender. Tras hacer esto el boot ocurría de forma normal.

Mi hardware es el siguiente:
MB  - ASUS M5A97 EVO ATX AM3 4xDDR3
CPU - AMD AM3 8 CORE FX8320 3.5GHZ
RAM - x2 8GB 1600 MHZ Kingston HyperX
HDD - 1TB SATA 7200
SSD - 120 GB
GPU - MSI Radeon RX 580 Gaming X 8GB GDDR5
PSU - Mars Gaming MPVU750 750W


Tras revisar el visor de eventos, solo me pude encontrar con esto relevante, la fecha y hora corresponden con los reinicios:





¿Qué me recomendáis revisar?

Ya que PSU y GPU han sido los dos componentes que he cambiado hace 6 meses  ¿Cómo podría confirmar si es un problema de la fuente o la gráfica?

EDIT: Me he dado cuenta de que hay un error relacionado con "vboxnetadp" en el visor de eventos. No estoy seguro de que sea la causa del problema, pero considerando que ya no uso VirtualBox, lo he deshabilitado con Autoruns: https://docs.microsoft.com/es-es/sysinternals/downloads/autoruns

Por otro lado, los drivers de la gráfica estaban sin actualizar desde que los instalé hace 6 meses. Los he actualizado a la versión estable más reciente para ver como va la cosa. Es bastante probable que fuese eso, ya que también tenía problemas de lag de imagen de cuando en cuando, los cuales dejaron de ocurrir tras la actualización)
#8
Últimamente muevo muchas conversaciones con muchas transferencias de ficheros a la vez. El nuevo skype muestra las imágenes como "thumbnails", estas previsualizaciones se bajan solas, quieras o no, por cada copia enviada y/o recibida.

Con esto, ocurre que la caché de Skype acaba teniendo decenas de copias de esa imagen, comiendo disco duro, RAM (ya que carga todas las que puede, en mi caso llegó a poner mi PC a usar 15 Gb de los 16 que tiene de memoria), y CPU (cargando todo cada vez que inicias sesión).

La solución es purgar la caché de skype, que se encuentra en la ruta:
%APPDATA%\Skype\<nombre_usuario_skype>\media_messaging\media_cache\*.*

Si se hace tedioso, se puede meter un:
DEL /Q %APPDATA%\Skype\<nombre_usuario_skype>\media_messaging\media_cache\*.*
en un .bat y hacer que se ejecute de forma periódica. (O ejecutarlo manualmente cuando las cosas se vayan poniendo feas)

Suele funcionar sin tener que cerrar skype siquiera. Tras un periodo corto de tiempo, las previsualizaciones también desaparecen.

--
(Desahogo Offtopic)
Me duele ver como Microsoft ha cogido algo que funcionaba y lo ha ido estropeando poco a poco. A este ritmo, voy a acabar usando única y exclusivamente IRC.

Lo que más jode es que este fallo/vulnerabilidad existía ya en MSN messenger. No aprenden.
(Ver el siguiente post para más detalles)
#9


Link de Descarga:
www.moddb.com/games/mechwarrior-4-mercenaries/downloads/mechwarrior-4-mercenaries-0030-mekpak-31

Hacía ya cierto tiempo, este popular juego de Mechs fue dispuesto al público por los propios creadores. Desgraciadamente, acabaron quitando la descarga al año o así para ahorrar en recursos y centrarse en nuevos títulos. Tener copias del mismo o descargarlas no es piratería en este caso, ya que es una versión liberada por ellos.

Volví a encontrarlo, esta versión es compatible con GameRanger, que permite jugar en línea aunque los servidores oficiales del juego ya no existan.

GameRanger:
http://www.gameranger.com/


¡Un saludo y a pasarlo bien!
#10
Diseño Gráfico / Creando una fuente.
5 Febrero 2015, 15:52 PM
Veamos, de forma simple. Yo siempre he realizado mis anotaciones personales con una simbología peculiar. Me gustaría ser capaz de "cifrarlo" de la misma forma tras teclearlo, en vez de tener que hacerlo a mano.

El primer paso, sería crear la fuente. Necesito que sea monospace... Pero no sé ni por dónde empezar. Antaño usé el "Eudcedit.exe", pero no sé cómo mapearlo como una fuente utilizable posteriormente. (Para poder teclearlo con total normalidad). Ví algún editor, pero son todos vectoriales, y a mí me interesaría editar en cuadrícula (como el antiguo Eudcedit), para ir más rápido.

El siguiente paso, que sí podría hacer, es aplicar el patrón de "desordenación" al texto. Eso por código sería un momento con unos cuantos bucles sobre arrays. Ahí me busco la vida sin problema... El caso, ¿cómo podría crearme una fuente como esta?

http://fc03.deviantart.net/fs70/f/2015/036/e/d/nothing_of_interest_here__by_maverik_soldier.jpg
#11
http://codepen.io/HugoGroutel/pen/dJniD

Me parece increíble lo que se puede llegar a hacer sólo con CSS hoy día :B
#12
En algunas ocasiones, los muelles de los pulsadores del ratón se aflojan, por mero desgaste, haciendo que el ratón haga doble click cuando realmente se ha hecho un único click.

Yo tenía dicho problema, y por no ponerme a abrir el ratón o andar comprando uno nuevo cada 6 meses, busqué otro remedio.

Utilizando un software llamado AutoHotkey, le metí un pequeño script que limita los doble click.

AutoHotkey:
http://www.autohotkey.com/


La instalación y configuración es simple. Hay que instalar el software. Al iniciarlo por primera vez, la aplicación preguntará si se quiere abrir un script de ejemplo, se acepta, y nos abrirá un script de ejemplo en un editor.

Éste script se carga automáticamente al ejecutar el programa, así que tan sólo hay que sustituirlo por el que nos interesa, con función de limitar los clicks del ratón:

LButton:: If ( A_TimeSincePriorHotkey < 50 )
SendInput, {Lbutton Down}
return
Lbutton Up::SendInput, {Lbutton Up}

MButton:: If ( A_TimeSincePriorHotkey < 50 )
SendInput, {MButton Down}
return
Mbutton Up::SendInput, {MButton Up}

RButton:: If ( A_TimeSincePriorHotkey < 50 )
Sendinput, {Rbutton Down}
return
Rbutton Up::SendInput, {Rbutton Up}


Una vez hemos sustituído el script, lo guardamos y volvemos a ejecutar la aplicación.
A partir de éste momento, el ratón dejará de hacer doble click, ya que si detecta clicks en un intervalo muy corto (que es lo que sucede con el error mecánico), el segundo click será ignorado.

Ahora, para hacer que el programa arranque con el equipo, para que el arreglo funcione siempre sin tener que arrancar el programa manualmente, hacemos un acceso directo del mismo en la carpeta "Inicio", en la ruta siguiente:

C:\Users\<nombre_usuario>\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup

Esto hará que la aplicación se ejecute al iniciar sesión.
#13
Llevaba unos 5 años intentando encontrar un parche o arreglo para poder jugar éste juego en Windows 7 con hardware de hoy día (bueno, de hace 5 años :B)

He estado enredando un poco y al final encontré remedio para poder jugar a este ancianete de 14 años.

Fuente: EECH Central Installation Guide:
http://eechcentral.simhq.com/index.php?title=Installation_guide




Traducción simple de los pasos:

1.- Instalar desde el CD (o medio digital en caso de haberlo comprado en GoG o similar)
2.- Instalar el Package (eech - all mods)
3.- Instalar pack de Mapas
4.- Instalar pack de Terrenos
5.- Instalar pack de humo y efectos
6.- Parchear a 1.15.2 (de haber hecho lo anterior bien, el juego estaría ahora en la versión 1.15.0 con el humo y efectos a 1.14.0)
7.- Instalar las librerías de OpenAL
8.- A jugar!

Todos estos packs están en el enlace de arriba.

Espero que este artículo sea útil. De tener alguna duda con los parcheos no dudéis en preguntar por aquí.

Un saludo.
#14
Criptografía / Tutorial básico de TrueCrypt.
11 Abril 2014, 21:01 PM
Buenas, aprovecho la ocasión para hacer un pequeño tutorial de TrueCrypt, con dos de las posibilidades que esta aplicación ofrece, cifrar un fichero de tamaño fijo, y cifrar una partición o disco al completo.

Para los que no sepan muy bien para qué sirve esto, una explicación simple, al cifrar nuestros discos, el contenido de los mismos será imposible de leer o consultar para las personas no autorizadas que no dispongan de la clave para descifrarlos (o al menos les resultará muy difícil).

En el caso de TrueCrypt, estamos hablando de cifrado simétrico, en el que utilizamos la misma clave para cifrar y descifrar nuestros ficheros o discos...

Vamos a comenzar con la opción más simple:

A.- Crear un fichero cifrado (contenedor de TrueCrypt):

Lo primero que tenemos que hacer, es crear nuestro volumen, para ello abrimos TrueCrypt y pulsamos "Create Volume".



Tras pulsar éste botón, se nos presentará la siguiente ventana:



La primera opción, que es la que vamos a seleccionar en esta primera parte del tutorial, nos servirá para crear un fichero de un tamaño fijo (establecido por nosotros), en el que podremos guardar nuestros archivos de una forma segura.

Tras seleccionar esta opción, nos preguntará si deseamos crear un volumen estándar o un volumen oculto, comenzaremos con el estándar:



Pulsamos este botoncico y seleccionamos dónde queremos guardar nuestro volumen de TrueCrypt y cómo deseamos llamarlo.



Una vez seleccionada la ruta, ahora tenemos que escoger qué algoritmos de cifrado y de hashing queremos utilizar para nuestro fichero. Debajo de cada algoritmo de cifrado, el programa nos presentará una breve descripción del mismo.

A la hora de seleccionarlos, aconsejaría buscar información sobre los mismos, para escoger el que mejor corresponda a nuestras necesidades.

De momento, como voy a ir por lo simple, tiraremos de AES y RIPEMD-160



Ahora nos toca escoger el tamaño de nuestro volumen.
En este ejemplo estoy haciendo uno pequeñito de 1Mb.
(Es importante tener en cuenta ciertos detalles para ficheros con un tamaño superior a 4 Gb, pero lo detallaré un poco más adelante).



Tras escoger el tamaño, deberemos introducir una clave para cifrar/descifrar nuestro volumen. Como ya nos indica la ventana, es importante que nuestra clave sea robusta. TrueCrypt nos avisará si no introducimos una clave de más de 20 caracteres, que contenga mayúsculas, minúsculas, números y símbolos.



Pequeña pregunta de autoevaluación:
Juzgando por la longitud que se puede ver en esta captura de ejemplo, ¿sería la contraseña lo suficientemente segura?

La respuesta es no, ya que es muy corta. Recordad siempre, mínimo 20 caracteres.

Sigamos.

En la siguiente ventana que nos aparecerá, deberemos mover el ratón de forma aleatoria, los datos recogidos de este movimiento, serán utilizados para la creación de nuestras claves de cifrado. Una vez hayamos mareado lo suficiente el ratón, daremos al botón "Format".



Un detalle, de tener volúmenes mayores a 4Gb, es aconsejable cambiar el "Filesystem" a NTFS. Ya que FAT no admitirá ficheros más grandes que 4Gb.

Después de darle a "Format" el programa se tomará su tiempo en dar formato a nuestro volumen cifrado.

Pasemos a nuestra segunda opción,

B.- Cifrar un Volumen completo con TrueCrypt:

TrueCrypt nos permite cifrar un disco o volumen completo, esto puede resultarnos especialmente útil para mantener algo más a salvo nuestros ficheros confidenciales en caso de robo o extravío del disco o unidad de almacenamiento.

La única diferencia en este caso, sería que a la hora de crear nuestro volumen, seleccionaríamos la segunda opción:



Y en el momento en el que seleccionábamos fichero, en este caso, lo que seleccionaremos será una unidad de disco o una partición, en una ventana tal que así:



En la siguiente parte de este tutorial, explicaré cómo se hace para montar y utilizar nuestro volumen de TrueCrypt.
#15
No puedo dar ni quitar permisos a ningún user en mi base de datos.

He comprobado los permisos de root, y están intactos.

¿Por dónde puedo empezar a mirar?
#16
Lenguajes:
PHP, PL/SQL
Problema:
No consigo que se ejecute ningún procedimiento PL/SQL almacenado desde mi script PHP.
Códigos:

Tablas:
Código (sql) [Seleccionar]
/*GOODS TABLE, WILL CONTAIN ALL GOODS*/
CREATE TABLE GOODS(
ID INT(3) AUTO_INCREMENT,
NAME CHAR(20) UNIQUE,
IMGFILE CHAR(20),
L_PRICE INT(4),
S_PRICE INT(4),
H_PRICE INT(4),
C_PRICE INT(4),
PRIMARY KEY(ID));

/*TRADERS TABLE, WILL CONTAIN ALL USERS AND THEIR DATA*/
CREATE TABLE TRADERS(
ID INT(3) AUTO_INCREMENT,
USERNAME CHAR(20) NOT NULL,
PASSWORD CHAR(20) NOT NULL,
MAIL CHAR(40) NOT NULL,
CREDITS CHAR(20) NOT NULL,
PRIMARY KEY(ID));

/*STOCKS TABLE, WILL CONTAIN EACH USER'S (TRADER) STOCK*/
CREATE TABLE STOCKS(
GOOD_ID INT(3),
TRADER_ID INT(3),
AMMOUNT INT(10),
AVG_BUY INT(4),
FOREIGN KEY(GOOD_ID)
REFERENCES GOODS(ID)
ON DELETE CASCADE,
FOREIGN KEY(TRADER_ID)
REFERENCES TRADERS(ID)
ON DELETE CASCADE);


Procedimiento Almacenado a llamar:
Código (sql) [Seleccionar]
/*THIS PROCEDURE ALLOWS THE TRADERS TO BUY STOCKS*/
CREATE PROCEDURE BUY_STOCK(P_GOOD INT,P_TRADER INT,P_AMMOUNT INT)
BEGIN
DECLARE V_PRICE, V_COST INT;
SELECT C_PRICE INTO V_PRICE
FROM GOODS
WHERE ID = P_GOOD;

SET V_COST = V_PRICE*P_AMMOUNT;

IF HAS_CREDITS(P_TRADER,V_COST) THEN
IF HAS_STOCK(P_GOOD,P_TRADER) THEN
UPDATE STOCKS
SET AMMOUNT = AMMOUNT + P_AMMOUNT
WHERE GOOD_ID = P_GOOD
AND TRADER_ID = P_TRADER;
UPDATE STOCKS
SET AVG_BUY = ((AVG_BUY*(AMMOUNT-P_AMMOUNT))+(V_PRICE*P_AMMOUNT))/AMMOUNT
WHERE GOOD_ID = P_GOOD
AND TRADER_ID = P_TRADER;
ELSE
INSERT INTO STOCKS
VALUES(P_GOOD,P_TRADER,P_AMMOUNT,V_PRICE);
END IF;
UPDATE TRADERS
SET CREDITS = CREDITS - V_COST
WHERE ID = P_TRADER;
END IF;
END;


Código PHP que trata de llamar al procedimiento almacenado:
Código (php) [Seleccionar]
<?php
session_name('trademaster');
session_start();

if($_POST['transaction'] = "Buy")
{

$good $_POST['goodid'];
$id $_SESSION['id'];
$ammount $_SESSION['ammount'];
$db = new PDO("mysql:host=localhost;dbname=trademaster"'trader''********');

$x $db->prepare('CALL BUY_STOCK(:good, :trader, :ammount)');

$x->bindValue(':good'$goodPDO::PARAM_INT);
$x->bindValue(':trader'$idPDO::PARAM_INT);
$x->bindValue(':ammount'$ammountPDO::PARAM_INT);

$x->execute();

unset($db);

header("location:stocks.php");
exit();
}
?>


Error:
PDOStatement::execute(): SQLSTATE[42000]: Syntax error or access violation: 1370 execute command denied to user 'trader'@'localhost' for routine 'trademaster.BUY_STOCK'

Observaciones:
El usuario 'trader'@'localhost' que interactúa con la base de datos tiene los permisos de USAGE, SELECT, INSERT, UPDATE, DELETE y EXECUTE sobre todas las tablas de la base de datos (trademaster.*).

Queries hacia la base de datos con SELECT, INSERT y UPDATE funcionan.

El procedimiento almacenado funciona correctamente, ya lo he probado localmente desde una consola MySQL.

La password del objeto PDO la quité por razones evidentes.

Los valores POST y SESSION se recogen adecuadamente, lo he comprobado.
#17
¿Se puede hacer esta conversión?

Suelo dibujar con tablet en SAI, porque me da mucha precisión de trazo, pero luego no encuentro la manera de pasar el proyecto por capas a GIMP.

Desgraciadamente, SAI no me permite dejar una capa única con fondo transparente, sino que el fondo es blanco, normalmente...

El problema es que luego, al recortar, me quedan unos bordes blancos que no quedan muy bien.

Apenas se nota si se mira sin ampliar, debido a la resolución y a que hice un difuminado en plan brillo por detrás, pero en las imágenes pequeñas, esto puede ser un problema, además de que ésto no solventa el problema para casos en los que no quiera hacer ese brillo...

¿Ideas?
#18
Foro Libre / 4chan Risk - Partida
1 Febrero 2014, 18:15 PM
Para reglas, detalles y dudas, lo trataremos por este topic:
http://foro.elhacker.net/foro_libre/iexcl4chan_risk-t407551.0.html;msg1915322#msg1915322

Este es el mapa en el que estamos jugando (voy actualizándolo cada turno):
http://s26.postimg.org/vbu31gud3/ehn_mundo.png


Lo primero que tenemos que hacer es cada uno escoger donde empezar (colorearé aleatoriamente una región de 5 territorios en la zona aproximada que me digáis), y un color. En cuanto estemos todos preparados, actualizaré la imagen. (Ya sea porque llenamos el cupo de jugadores, o porque pasaron un par de dias desde hoy).

Para no liarnos mucho, decidme el nombre del país donde vais a empezar, y una aproximación de qué zona, (norte, sur, oeste, etc...)

Para daros un ejemplo, yo ya me he colocado en el mapa, como el color Morado, y en la zona sur de Australia.

Consejito, intentad repartiros un poco por el mapa, aparecer pegados sólo suele servir para que uno termine su partida muy rápido, y el otro la comience debilitado por el conflicto temprano.
#19
Foro Libre / Una situación simpática.
1 Febrero 2014, 03:56 AM
Esta clase de cosas son las que suelen pasar cuando se le pide a Saber que baje demasiado el nivel de complejidad de una explicación:

#20
La primera partida va a tener lugar aquí:
http://foro.elhacker.net/foro_libre/4chan_risk_partida-t407967.0.html;msg1916905#msg1916905


Hola, gente.

Resulta que estoy algo aburrido y se me vino una idea a la mente, esta es que podríamos jugar a algo parecido al 4chan Risk en el foro.

¿De qué trata?

El 4chan risk es una especie de versión simplificada del risk, se juega normalmente en 4chan y tiene mapas bastante masivos. El objetivo, principalmente, es eliminar a la mayor cantidad posible de oponentes, ya que, estadísticamente es casi imposible que la partida progrese hacia ninguna parte cuando hay menos de 4 rivales debido a como suelen salir las "tiradas".

¿Cómo se juega?

En 4chan, los posts tienen relacionado un número de post, de dicho número, se cogen las últimas cifras. Ya que aquí no tenemos de eso, podríamos utilizar como sistema que consistiese en utilizar un servicio tal como random.org, o que el anfitrión de partida tirase literalmente 4 dados de 10 caras, el anfitrión de la partida tiraría uno de cada color, para saber perfectamente qué dado va en cada posición a la hora de formar nuestro número de 4 cifras.



Normalmente, la invasiones funcionan de la siguiente manera, las personas van posteando ciertas directivas de invasión, tales como "Atacar la zona de Europa del Norte" o "expandir mi frontera hacia el sur". Cuanto más detallado y creativo, más posibilidades de que el anfitrión realmente sepa hacia dónde quieres expandirte.

Los movimientos de cada región se realizan en el orden de posteo. Por lo tanto, el que postee primero, hace su ataque primero, pero también se arriesga a que el enemigo reaccione después y contraataque. Es parte de la táctica del juego.

Se puede jugar con diplomacia o sin ella, suele ser más efectiva si es secreta, en plan de que los jugadores negocien sus treguas y alianzas por PM. Esto ahorra líos a la hora de procesar los posts con órdenes de movimiento entre mensajes sueltos. Aunque siempre resulta divertido comentar la jugada. :3

El punto gracioso de este juego, es que no se sabe qué resultado va a tener la decisión tomada hasta después de haber posteado la misma, ya que el número de post se recibe tras realizar el mismo. En nuestro caso, será con un generador de números aleatorios o con dados (lo mismo, prácticamente).

Me ofrezco como anfitrión. Dispongo ya de los dados y ofrezco imparcialidad a la hora de jugar, tampoco tendría gracia si se trampease el sistema. Simplemente me apetece jugar con alguien.

Para que veáis un ejemplo de cómo podría ser un mapa, os paso un vídeo que muestra el progreso de una partida de forma muy rápida.

[youtube=640,360]https://www.youtube.com/watch?v=P4cT4t2JSgA[/youtube]

Como no todo el mundo tiene tiempo ni puede darse prisas, jugaríamos de una forma lenta y relajada, actualizando el mapa una vez al día o así.

¿Qué os parece? ¿Os animaríais?
Ya dispongo de mapas más o menos preparados de Estados Unidos, Europa, el Mundo y Tamriel.

Edit: Aquí tenéis el mapa del mundo, preparado para usar.
http://imageshack.com/a/img802/5584/doet.png
#21
Referenciando el siguiente tema:
http://foro.elhacker.net/sugerencias_y_dudas_sobre_el_foro/como_puedo_insertar_imagenes_en_este_foro-t21512.0.html

He probado a poner imágenes en el foro, pero no se ven cuando lo miro sin estar loggeado. ¿Qué puedo hacer?

--

PD: Este topic no va en serio, estoy demostrando lo que puede pasar siguiendo este sistema.

Cita de: CL1O en  3 Enero 2014, 13:59 PM
Se puede crear un nuevo tema, y poner la dirección del tema original al que se hace referencia, o al que se le puede agregar mas cosas...
#22
Hardware / Lee CD y DVD, Graba CD, no graba DVD...
29 Diciembre 2013, 15:53 PM
HL-DT-ST DVDRAM GH22NS50 SATA.

Tuve un percance con la misma, un disco me estalló dentro.
http://foro.elhacker.net/grabadoras/desaconsejo_la_marca_memorex-t404876.0.html;msg1904787#msg1904787


Más detalles. La grabación la estaba haciendo con el Nero 6 a 16x, hasta que el disco estalló y apagué la máquina dándole al botón de la fuente de alimentación.

Tras sacar todos los fragmentos del disco del lector, lo volví a colocar en la máquina y aparentemente funciona, lee bien CD y DVD y graba CD, pero no DVD.

Todo lo hace con normalidad, pero si intento grabar un DVD, el nero se queda colgado y finalmente simplemente saca una ventana de error que dice que no se pudo completar el proceso. Utilizando ImgBurn, el mensaje de error es más detallado, dice lo siguiente:

I/O Error!
Device: [0:1:0] HL-DT-ST DVDRAM GH22NS50 TN03 (E:) (ATA)

ScsiStatus: 0x02
Interpretation: Check Condition

CDB: 2A 00 00 00 00 00 00 00 20 00
Interpretation: Write (10) - Sectors: 0 - 31

Sense Area: 70 00 03 00 00 00 00 0A 32 4D 03 0C 0C 00 00 00 00 00
Interpretation: Write Error


He probado a refrescar los drivers a los estándar llendo al administrador de dispositivos y desinstalándolo, para que Windows tratase de recuperarlo automáticamente.

También he actualizado el Firmware a TN03, (antes tenía TN02). No ha solucionado el problema.

¿Qué más puedo probar? Probar con otra grabadora significaría tener que comprar una nueva, y me gustaría estar seguro de que no es un fallo de configuración/software antes de gastar nada.
#23
Mensajería / Skype me está haciendo DDoS.
16 Diciembre 2013, 23:51 PM
No sé que hacer. Cada vez que me conecto a skype, me vuelve a re-re-reenviar de forma estúpida mensajes de todos mis contactos que recibí incluso hace un mes y ya he leído. (A un ratio de varios cientos por segundo) hasta que me peta totalmente el PC.
#24
Windows / Windows 7 SP1 - Ficheros que desaparecen.
15 Diciembre 2013, 16:46 PM
Comparto una solución a un problema que llevaba teniendo unos días:

Recientemente, me ha empezado a ocurrir que ciertos ficheros generados por programas "desaparecían" sin más, a pesar de que el programa decía claramente que habían sido guardados.

Tras investigar cierto tiempo, encontré que todos estos ficheros iban a parar a un directorio llamado "Virtualstore", que se encuentra en:

[letra_partición]/Users/[nombre_usuario]/AppData/Local

En mi caso sería, por ejemplo:
C:/Users/Saberuneko/AppData/Local/VirtualStore

Aparentemente, Windows hace esto para evitar que los programas interrumpan su actividad al no tener permisos para guardar el fichero en la posición escogida y así no perder la información.

Para solucionar este problema, es tan sencillo como arrancar el programa con privilegios de administrador. (Click derecho>Ejecutar como Administrador)

Esto dará a la aplicación los permisos necesarios para poder guardar el archivo en el lugar apropiado.

Si se confía en la aplicación, también se puede configurar en propiedades (Clic Derecho>Propiedades>Compatibilidad>Ejecutar este programa como administrador) para que se ejecute con permisos siempre.

Fuente: http://www.sevenforums.com/general-discussion/222389-what-virtual-store-folder.html
#25
Software / Desaconsejo la marca "MEMOREX".
14 Diciembre 2013, 17:18 PM
Estaba grabando a 16x un DVD-R de MEMOREX, el caso es que ha reventado y se ha astillado dentro de la grabadora.

Dejo el aviso aquí, y desaconsejo ALTAMENTE esta marca.

(Sólo he intentado grabar con discos de esa marca dos veces, y se ha cargado dos grabadoras distintas, en el caso anterior, el disco se dobló dentro y atascó la grabadora).
#26
Redes / Configurar Switch D-Link DES-1008D
10 Diciembre 2013, 12:47 PM
Tengo un pequeño problema con mi switch. No tiene puerto de consola, y creo que tengo que configurarle algo, porque tengo dos máquinas conectadas al mismo y una tiene red intermitente (30 segundos sí, 30 segundos no, constantemente).

El montaje que tengo en mi casa ahora mismo es más o menos el siguiente:



En la red tira todo bien menos una de las dos máquinas del segundo switch.
No puedo cambiar la distribución por cuestión de cómo están distribuidas las habitaciones de la casa.

No sé por dónde empezar, yo estoy acostumbrado a que tengan un puerto de consola y listo. Pero no es el caso, y no sé ni cómo localizarle la IP al switch este.

(Nota: He probado con 3 cables, no está el problema en el cable, ya que tiran los 3 bien en la máquina que no se desconecta, pero tiran los 3 mal en la que sí).

(Si no recuerdo mal, entre dos switch, el cable debe ser cruzado ¿no? creo que el mío no lo es)...

De tener que cambiarlo, estaría realmente jodido, ya que el cable va por dentro de la pared, atravesando 2 habitaciones...
#27
Windows / El volumen de audio cambia solo.
10 Diciembre 2013, 12:04 PM
Hola, tengo una máquina con Win7 SP1 (está nueva, a estrenar, con una instalación limpia).

Estas son las características:

Board: Dell 0D28YY
Chipset: Intel Q65
Procesador: Intel Core i3 2100 @ 3100 MHz
Memoria: 2 x 2048 DDR3-SDRAM
Disco: Seagate ST3250312AS ATA (250Gb)
Audio: Dell Computer 6 Series Chipset Family High Definition Audio Controller
DVD-R: Toshiba-Samsung DVD+-RW TS-L633J
Tarjeta Red: Intel 82579LM Gigabit Network

Mi problema es que el volumen de los altavoces/auriculares cambia solo de forma constante, poniendose entre 50~60 todo el tiempo (y dejándome sordo). Si lo bajo, sube, si lo subo, baja.

No sé ni por dónde empezar a mirar, ya que esto me parece sumamente extraño.
¿Ideas?
#28
Cada vez que intento editar ficheros de configuración, me genera archivos con un nombre idéntico con "~" al final de el nombre...


¿Qué es? ¿Por qué hace esto?
Esto nunca me ha pasado con Debian ni las versiones viejas de Ubuntu, y la verdad, que me tiene confuso y resulta muy frustrante.
#29
En mi ciclo actual de Administración de Sistemas Informáticos en Red, tenemos una asignatura llamada Empresa e Iniciativa Emprendedora. Esta asignatura cubre más que nada la parte de gestión de una empresa para autónomos y, entre muchas cosas, hay muchos temas sobre economía.

La economía no es mi punto fuerte, y me lleva bastante tiempo hacer los ejercicios. Hace unos días, se nos explicó cómo funciona el sistema de préstamos francés e hicimos ejercicios sobre ello.

Para comprender mejor cómo funcionaba el sistema, decidí hacer una pequeña aplicación en PHP que resuelve el ejercicio de forma automática.

Resulta extremadamente útil para hacer mis propios ejercicios de prácticas y tener la solución para saber si lo he resuelto bien. (Y de paso, repaso PHP, que no deja de ser otra asignatura de mi ciclo)

A continuación os paso un par de screenshots de dicha aplicación:

Formulario:


Ejercicio resuelto tras introducir los datos:


No se ve muy bonita, pero cumple su función, que es calcular la cantidad a devolver por unidad de tiempo (ya sea diaria, mensual o anual), además de realizar una tabla con los valores de amortización periódica y relativa teniendo en cuenta el capital restante a devolver.

Para los que estén interesados en trastear con ello, aquí os dejo el código:

Código (php) [Seleccionar]
<html>
<body>
<form method ="post" action="<?php echo $_SERVER['PHP_SELF'];?>">
C&aacute;lculo de Pr&eacute;stamo Franc&eacute;s<br/>
Cuant&iacute;a Principal Prestada (euros):
<input type="text" name = "co" value = "" /><br/>
Inter&eacute;s (% anual):
<input type="text" name = "i" value = "" /><br/>
Duraci&oacute;n (a&ntilde;os):
<input type="text" name = "n" value = "" /><br/>
Tipo:<br/>
<input type="radio" name = "tipo" value ="1" />
Anual<br/>
<input type="radio" name = "tipo" value ="12" />
Mensual<br/>
<input type="radio" name = "tipo" value ="365" />
Diario<br/>
<input type="submit" name= "calcular" value="ok" />
</form>
<table border = "1">
<?php
if (isset ($_POST["calcular"]))
{
//Volcado de variables desde form
$co $_POST["co"];
$i $_POST["i"];
$n $_POST["n"];
$a $_POST["tipo"];

//Variables de cálculo
$lm $n*$a;
$op1 = ($i/$a)/100;
$op2 pow((1+$op1),$lm);
$op3 $op2-1;
$cn $co*($op1*$op2)/$op3;

echo $cn;

//Iniciando acumuladores
$tar 0;
$cpr $co;
echo "<tr><td>Tiempo</td><td>Pago</td><td>Inter&eacute;s</td><td>Amortizaci&oacute;n</td><td>T. Amortiz</td><td>Cpt. Pend.</td></tr>";
echo "<tr><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td>";
echo "<td>$cpr</td></tr>";

for ($tr=1;$tr<=$lm;$tr++)
{
$pr $cn;
$ir $cpr*$op1;
$ar $pr-$ir;
$tar $tar+$ar;
$cpo $cpr;
$cpr $cpr $ar;

echo "<tr>";
echo "<td>$tr</td>";
echo "<td>$pr</td>";
echo "<td>$ir</td>";
echo "<td>$ar</td>";
echo "<td>$tar</td>";
echo "<td>$cpr</td>";
echo "</tr>";
}
}
?>

</table>
</body>
</html>


Si veis algún bug o error, comentádmelo. Si hay algo que puedo mejorar en mi código, también agradecería críticas constructivas.

Un Saludo.
#30
Seguridad / Busco AV gratuito.
15 Noviembre 2013, 14:24 PM
Vuelvo a estar en el sufrimiento de siempre. La mayoría de AV gratuítos que pruebo apestan.

Oí que hay una versión gratuíta de Comodo, pero ni de coña la pongo. Tuve la de pago en el trabajo, y ese chisme detecta cosas como un "hola mundo" en C++ como amenaza. No es digno de confianza ni por asomo. Me tiraba más tiempo poniendo lo que acababa de compilar en excepciones que codeando.
Avast me da falsos positivos todo el rato, prácticamente todo programa/juego (legit) del 2006 o más antiguo son virus según Avast
Avira me suelta pop-ups que me minimizan los juegos todo el rato, no hay manera de quitarlos.
Desde que instalé AVG, casi todas las aplicaciones que tengo se estrellan al escritorio nada más le da por abrir cualquier ventanita incómoda...

¿Cuál pongo?
¿Pruebo BitDefender?
¿Pruebo con Microsoft Security Essentials?

Estoy por no tener un AV residente y sólo tirar de escaneos semanales con MalwareBytes...
El tema de los AV siempre me tiene tirándome de los pelos.
#31
Seguridad / Problemas con OpenSSL en Windows XP SP3.
11 Noviembre 2013, 19:36 PM
Llevo 2 horas intentando crear una solicitud de certificado con OpenSSL para utilizar en MySQL 5.5 pero no hay manera.

No importa cómo lo intente, no lee el fichero de configuración apropiadamente.



He intentado fijar la ruta con:

set OPENSSL_CONF="C:\OpenSSL-Win32\bin\openssl.cfg"

Y sigue sin tirar. ¿Cómo puedo hacer para tener una instalación de OpenSSL que funcione correctamente?
Ya he probado varias y no tira ninguna ¡están todas mal!

Necesito ayuda, tengo una semana para poner a funcionar esto para hacer una presentación en clase de cómo funciona, pero la profesora se empecina que tiene que ser en Windows.

¿Qué hago? ¿Qué version pruebo?

Estoy tirándome de los pelos...
#32
Inversión de la lectura de las claves en un array bidimensional

Suponiendo el siguiente ejercicio:

Mostrar un conjunto de datos de un array bidimensional en una tabla.

Para este ejercicio, vamos a realizar un "calendario" con los menús del día para una semana.
El array tendrá dos claves. La primera será el día de la semana, y la segunda el componente del menú.

Se debe mostrar en las dos colocaciones posibles:


Normal:



Invertida:



A continuación el código y su explicación por partes:

Código (php) [Seleccionar]

<table border = "1" bgcolor = "9999cc">
<?php
//Cargamos el array con los valores.
$menu=array(
'Lunes'=>array(
'Primer Plato' => 'Lentejas',
'Segundo Plato' => 'Merluza',
'Postre' => 'Flan',
'Precio' => '2'),
'Martes'=>array(
'Primer Plato' => 'Fabada',
'Segundo Plato' => 'Atun',
'Postre' => 'Helado',
'Precio' => '3'),
'Miercoles'=>array(
'Primer Plato' => 'Pote',
'Segundo Plato' => 'Tocino',
'Postre' => 'Yogur',
'Precio' => '2'),
'Jueves'=>array(
'Primer Plato' => 'Sopa',
'Segundo Plato' => 'Empanada',
'Postre' => 'Natillas',
'Precio' => '5'),
'Viernes'=>array(
'Primer Plato' => 'Pasta',
'Segundo Plato' => 'Ensalada',
'Postre' => 'Frijuelos',
'Precio' => '3'));

//Visualizamos en orden. (Platos arriba, Dias al lado)

echo "<tr><td></td>";

foreach($menu['Lunes'] as $plato => $valor)
{
echo "<td>$plato</td>";
}

echo "</tr>";

foreach($menu as $dia => $valor)
{
echo "<tr><td>$dia</td>";
foreach($menu[$dia] as $valor)
{
echo "<td>$valor</td>";
}
echo "</tr>";
}

echo "<tr><td></td></tr>";

//Visualizamos intercambiando. (Dias arriba, Platos al lado)
//Para ello, necesitamos intercambiar los bucles de posición.

echo "<tr><td></td>";
foreach($menu as $clave => $valor)
{
$semana[]=$clave;
echo "<td>$clave</td>";
}
foreach($menu['Lunes'] as $clave => $valor)
{
$datos[]=$clave;
}

echo "</tr>";

foreach($datos as $plato)
{
echo "<tr><td>$plato</td>";
foreach($semana as $dia)
{
echo "<td>{$menu[$dia][$plato]}</td>";
}
echo "</tr>";
}

?>

</table>


Primer paso, almacenamiento de los datos en el array:

$menu[$dia][$plato]

Cargamos el array de la siguiente forma:

Código (php) [Seleccionar]

//Cargamos el array con los valores.
$menu=array(
'Lunes'=>array(
'Primer Plato' => 'Lentejas',
'Segundo Plato' => 'Merluza',
'Postre' => 'Flan',
'Precio' => '2'),
'Martes'=>array(
'Primer Plato' => 'Fabada',
'Segundo Plato' => 'Atun',
'Postre' => 'Helado',
'Precio' => '3'),
'Miercoles'=>array(
'Primer Plato' => 'Pote',
'Segundo Plato' => 'Tocino',
'Postre' => 'Yogur',
'Precio' => '2'),
'Jueves'=>array(
'Primer Plato' => 'Sopa',
'Segundo Plato' => 'Empanada',
'Postre' => 'Natillas',
'Precio' => '5'),
'Viernes'=>array(
'Primer Plato' => 'Pasta',
'Segundo Plato' => 'Ensalada',
'Postre' => 'Frijuelos',
'Precio' => '3'));


Ahora es cuando viene el momento de visualizar los datos en un orden simple, sin invertir los índices. Iré paso a paso.

Primero, abrimos la primera fila de la tabla, y con foreach mostramos los distintos tipos de plato del día, tras hacer esto, cerramos la fila:

Código (php) [Seleccionar]

echo "<tr><td></td>";

foreach($menu['Lunes'] as $plato => $valor)
{
echo "<td>$plato</td>";
}

echo "</tr>";


Para ello, estamos obteniendo los valores de las segundas claves del Lunes.
Donde:
$menu['Lunes'] es el elemento del que recogemos la información.
$plato será el nombre de nuestro plato (2ª clave)
$valor es una variable que recoge el nombre del plato para el Lunes. (No lo utilizaremos todavía).

Nuestra instrucción echo "<td>$plato</td>" pondrá el valor de cada clave en una columna, montando la cabecera de la tabla.

A continuación, rellenamos el resto de la tabla, sin olvidar las claves que serían los días de la semana, para ello utilizaremos dos bucles foreach anidados:

Código (php) [Seleccionar]

foreach($menu as $dia => $valor)
{
echo "<tr><td>$dia</td>";
foreach($menu[$dia] as $valor)
{
echo "<td>$valor</td>";
}
echo "</tr>";
}


Nuestro primer foreach recorre el primer valor del array, que serían los días de la semana.
El segundo bucle, anidado dentro del primero, recorrerá cada plato.

Por lo tanto, el programa irá mostrando los platos para cada día en orden.

Con nuestra primera instrucción echo "<tr><td>$dia</td>"; estamos mostrando el valor de la segunda clave del array, que sería nuestro día de la semana.

La segunda instrucción echo "<td>$valor</td>"; nos muestra el dato dentro de la posición actual del array que estamos recorriendo.

Si ejecutamos nuestro código hasta este punto, obtendremos el siguiente resultado:



--

Bien, ahora es cuando viene la parte complicada. ¿Qué pasa si queremos intercambiar filas y columnas?

Tendríamos que invertir el orden de anidación de nuestros bucles foreach, cosa que no podemos hacer a piñón fijo. Por lo que necesitaremos de un pequeño truco para realizar este recorrido, que es almacenar los valores de nuestras claves en dos arrays:

Código (php) [Seleccionar]

foreach($menu as $clave => $valor)
{
$semana[]=$clave;
echo "<td>$clave</td>";
}
foreach($menu['Lunes'] as $clave => $valor)
{
$datos[]=$clave;
}


Aquí podemos ver cómo se recogen los valores de las claves en los arrays $semana (que contendrá los días de la semana) y $datos (que contendrá los tipos de plato, primero, segundo, postre...).

También aprovechamos el bucle para rellenar la primera fila de nuestra tabla, con los días de la semana con una instrucción echo "<td>$clave</td>";

Y aquí es donde viene el truco:

Código (php) [Seleccionar]

foreach($datos as $plato)
{
echo "<tr><td>$plato</td>";
foreach($semana as $dia)
{
echo "<td>{$menu[$dia][$plato]}</td>";
}
echo "</tr>";
}


Ya que los arrays que contienen una clave única son de una única dimensión, podremos reordenar nuestros bucles y así mostrar el elemendo deseado con la instrucción "echo"<td>{$menu[$dia][$plato]}</td">;

¿Cómo funciona esto?

Sencillo, en este caso ya tenemos las claves, por lo que simplemente podemos tomar los datos del array $menu indicando qué claves estamos leyendo en cada momento.

En nuestro caso, estaremos leyendo los distintos primeros platos de cada día, luego los segundos, más tarde los postres, y finalmente su precio. Permitiéndonos rellenar la tabla con la colocación cambiada, ya que nuestros bucles están anidados al revés que en el caso anterior, con la segunda clave manteniéndose fija mientras la primera va cambiando.

Que nos quedará de la siguiente forma:

#33
Buenas, he encontrado un site con bastantes fixes/tweaks del registro para Windows XP.

Comparto el link con vosotros, no he revisado todos, pero ya he probado algunos y funcionan.

XP Tweaks:
http://www.kellys-korner-xp.com/xp_tweaks.htm

Un saludo.
#34
Seguridad / Mis típicas paranoias.
29 Octubre 2013, 12:49 PM
Buenas, no puedo estar totalmente seguro, pero tengo la sensación de que hay algo raro en mi máquina.
Siempre que la inicio, puedo ver una ventana de cmd aparecer durante 1~2 segundos, en blanco y dirigida a C:\Windows\System32. Justo durante unos segundos. Otra cosa extraña es que al dar la orden de apagado, igual se queda colgado unos 10 segundos con un mensaje que indica que no se pudo cerrar "Task Host Monitor". ¿Es normal eso?

He hecho pasadas con Avast desde el sistema y Malwarebytes desde modo seguro y encontré alguna cosa, limpiaron sin problemas. A la siguiente pasada, ya no encontré nada. Pero esto sigue ocurriendo.

Puede que esté siendo excesivamente paranoico y que realmente esto sea cosa de alguno de mis programas de uso común... Pero tengo razones para pensar que cierta persona en particular tiene interés en vigilar mi máquina.

A continuación paso un log de HijackThis para ver si véis algo raro:
De momento, voy a ponerme a filtrar yo mismo poco a poco a ver si reconozco todas las entradas del log para ver si puedo ir purgando y pasaros una versión más liviana.

Logfile of Trend Micro HijackThis v2.0.4
Scan saved at 12:46:44, on 29/10/2013
Platform: Windows 7 SP1 (WinNT 6.00.3505)
MSIE: Internet Explorer v10.0 (10.00.9200.16720)
Boot mode: Normal

Running processes:
C:\Windows\system32\taskhost.exe
C:\Windows\SYSTEM32\WISPTIS.EXE
C:\Program Files\Common Files\microsoft shared\ink\TabTip.exe
C:\Windows\system32\Dwm.exe
C:\Windows\Explorer.EXE
C:\Program Files\LogMeIn Hamachi\hamachi-2-ui.exe
C:\Program Files\ATI Technologies\ATI.ACE\Core-Static\MOM.exe
C:\Program Files\TortoiseSVN\bin\TSVNCache.exe
C:\Program Files\VMware\VMware Workstation\vmware-tray.exe
C:\Program Files\Common Files\Java\Java Update\jusched.exe
C:\Program Files\AVAST Software\Avast\avastui.exe
C:\Program Files\No-IP\DUC40.exe
C:\Program Files\Vista & XP Virtual Desktops\Virtual Desktops.exe
C:\Program Files\ATI Technologies\ATI.ACE\Core-Static\CCC.exe
C:\Program Files\ATI Technologies\HydraVision\HydraDM.exe
C:\Program Files\Mozilla Firefox\firefox.exe
C:\Program Files\Common Files\Microsoft Shared\Ink\InputPersonalization.exe
C:\Windows\system32\wuauclt.exe
C:\Program Files\Mozilla Firefox\plugin-container.exe
C:\Windows\system32\Macromed\Flash\FlashPlayerPlugin_11_9_900_117.exe
C:\Windows\system32\Macromed\Flash\FlashPlayerPlugin_11_9_900_117.exe
C:\Users\Saberuneko\Downloads\HijackThis.exe

R1 - HKCU\Software\Microsoft\Internet Explorer\Main,Default_Page_URL = http://www.medion.com
R1 - HKCU\Software\Microsoft\Internet Explorer\Main,Search Page = http://go.microsoft.com/fwlink/?LinkId=54896
R1 - HKLM\Software\Microsoft\Internet Explorer\Main,Default_Page_URL = http://go.microsoft.com/fwlink/p/?LinkId=255141
R1 - HKLM\Software\Microsoft\Internet Explorer\Main,Default_Search_URL = http://go.microsoft.com/fwlink/?LinkId=54896
R1 - HKLM\Software\Microsoft\Internet Explorer\Main,Search Page = http://go.microsoft.com/fwlink/?LinkId=54896
R0 - HKLM\Software\Microsoft\Internet Explorer\Main,Start Page = http://go.microsoft.com/fwlink/p/?LinkId=255141
R0 - HKLM\Software\Microsoft\Internet Explorer\Search,SearchAssistant =
R0 - HKLM\Software\Microsoft\Internet Explorer\Search,CustomizeSearch =
R1 - HKCU\Software\Microsoft\Windows\CurrentVersion\Internet Settings,ProxyOverride = local
R0 - HKCU\Software\Microsoft\Internet Explorer\Toolbar,LinksFolderName =
O2 - BHO: HP Print Enhancer - {0347C33E-8762-4905-BF09-768834316C61} - C:\Program Files\HP\Digital Imaging\Smart Web Printing\hpswp_printenhancer.dll
O2 - BHO: (no name) - {5C255C8A-E604-49b4-9D64-90988571CECB} - (no file)
O2 - BHO: Java(tm) Plug-In SSV Helper - {761497BB-D6F0-462C-B6EB-D4DAF1D92D43} - C:\Program Files\Java\jre7\bin\ssv.dll
O2 - BHO: avast! Online Security - {8E5E2654-AD2D-48bf-AC2D-D17F00898D06} - C:\Program Files\AVAST Software\Avast\aswWebRepIE.dll
O2 - BHO: Aplicación auxiliar de inicio de sesión de Windows Live ID - {9030D464-4C02-4ABF-8ECC-5164760863C6} - C:\Program Files\Common Files\Microsoft Shared\Windows Live\WindowsLiveLogin.dll
O2 - BHO: (no name) - {C90DBB52-46E0-4E65-92BC-799ADEE54C86} - C:\PROGRA~1\Flash2X\FLASHP~1\FLASHP~1.DLL
O2 - BHO: Bing Bar Helper - {d2ce3e00-f94a-4740-988e-03dc2f38c34f} - C:\Program Files\Microsoft\BingBar\7.1.391.0\BingExt.dll
O2 - BHO: Java(tm) Plug-In 2 SSV Helper - {DBC80044-A445-435b-BC74-9C25C1C588A9} - C:\Program Files\Java\jre7\bin\jp2ssv.dll
O2 - BHO: HP Smart BHO Class - {FFFFFFFF-CF4E-4F2B-BDC2-0E72E116A856} - C:\Program Files\HP\Digital Imaging\Smart Web Printing\hpswp_BHO.dll
O3 - Toolbar: (no name) - {32099AAC-C132-4136-9E9A-4E364A424E17} - (no file)
O3 - Toolbar: Bing Bar - {8dcb7100-df86-4384-8842-8fa844297b3f} - "C:\Program Files\Microsoft\BingBar\7.1.391.0\BingExt.dll" (file missing)
O3 - Toolbar: avast! Online Security - {8E5E2654-AD2D-48bf-AC2D-D17F00898D06} - C:\Program Files\AVAST Software\Avast\aswWebRepIE.dll
O4 - HKLM\..\Run: [StartCCC] "C:\Program Files\ATI Technologies\ATI.ACE\Core-Static\CLIStart.exe" MSRun
O4 - HKLM\..\Run: [AMD AVT] Cmd.exe /c start "AMD Accelerated Video Transcoding device initialization" /min "C:\Program Files\AMD AVT\bin\kdbsync.exe" aml
O4 - HKLM\..\Run: [Adobe ARM] "C:\Program Files\Common Files\Adobe\ARM\1.0\AdobeARM.exe"
O4 - HKLM\..\Run: [LogMeIn Hamachi Ui] "C:\Program Files\LogMeIn Hamachi\hamachi-2-ui.exe" --auto-start
O4 - HKLM\..\Run: [vmware-tray.exe] "C:\Program Files\VMware\VMware Workstation\vmware-tray.exe"
O4 - HKLM\..\Run: [vmware-tray] C:\Program Files\VMware\VMware Workstation\vmware-tray.exe
O4 - HKLM\..\Run: [SunJavaUpdateSched] "C:\Program Files\Common Files\Java\Java Update\jusched.exe"
O4 - HKLM\..\Run: [AvastUI.exe] "C:\Program Files\AVAST Software\Avast\AvastUI.exe" /nogui
O4 - HKCU\..\Run: [NoIPDUCv4] "C:\Program Files\No-IP\DUC40.exe" /minimize
O4 - HKCU\..\Run: [HydraVisionDesktopManager] "C:\Program Files\ATI Technologies\HydraVision\HydraDM.exe"
O4 - HKUS\S-1-5-19\..\Run: [Sidebar] %ProgramFiles%\Windows Sidebar\Sidebar.exe /autoRun (User 'SERVICIO LOCAL')
O4 - HKUS\S-1-5-19\..\RunOnce: [mctadmin] C:\Windows\System32\mctadmin.exe (User 'SERVICIO LOCAL')
O4 - HKUS\S-1-5-20\..\Run: [Sidebar] %ProgramFiles%\Windows Sidebar\Sidebar.exe /autoRun (User 'Servicio de red')
O4 - HKUS\S-1-5-20\..\RunOnce: [mctadmin] C:\Windows\System32\mctadmin.exe (User 'Servicio de red')
O4 - Startup: Vista & XP Virtual Desktops.lnk = ?
O4 - Global Startup: Stardock MyColors.lnk = C:\Program Files\Stardock\MyColors\SDDelayedLaunch.exe
O8 - Extra context menu item: E&xport to Microsoft Excel - res://C:\PROGRA~1\MICROS~3\Office12\EXCEL.EXE/3000
O8 - Extra context menu item: E&xportar a Microsoft Excel - res://C:\PROGRA~1\MICROS~3\Office12\EXCEL.EXE/3000
O8 - Extra context menu item: Free YouTube to MP3 Converter - C:\Users\Saberuneko\AppData\Roaming\DVDVideoSoftIEHelpers\freeyoutubetomp3converter.htm
O9 - Extra button: eBay - Der weltweite Online-Marktplatz - {0B65DCC9-1740-43dc-B19C-4F309FB6A6CA} - http://rover.ebay.com/rover/1/1185-90953-17534-1/4 (file missing)
O9 - Extra 'Tools' menuitem: eBay - {0B65DCC9-1740-43dc-B19C-4F309FB6A6CA} - http://rover.ebay.com/rover/1/1185-90953-17534-1/4 (file missing)
O9 - Extra button: Agregar entrada - {219C3416-8CB2-491a-A3C7-D9FCDDC9D600} - C:\Program Files\Windows Live\Writer\WriterBrowserExtension.dll
O9 - Extra 'Tools' menuitem: &Agregar entrada en Windows Live Writer - {219C3416-8CB2-491a-A3C7-D9FCDDC9D600} - C:\Program Files\Windows Live\Writer\WriterBrowserExtension.dll
O9 - Extra button: Enviar a OneNote - {2670000A-7350-4f3c-8081-5663EE0C6C49} - C:\PROGRA~1\MICROS~3\Office12\ONBttnIE.dll
O9 - Extra 'Tools' menuitem: &Enviar a OneNote - {2670000A-7350-4f3c-8081-5663EE0C6C49} - C:\PROGRA~1\MICROS~3\Office12\ONBttnIE.dll
O9 - Extra button: Research - {92780B25-18CC-41C8-B9BE-3C9C571A8263} - C:\PROGRA~1\MICROS~3\Office12\REFIEBAR.DLL
O9 - Extra button: Mostrar u ocultar HP Smart Web Printing - {DDE87865-83C5-48c4-8357-2F5B1AA84522} - C:\Program Files\HP\Digital Imaging\Smart Web Printing\hpswp_BHO.dll
O9 - Extra button: Translate this web page with Babylon - {F72841F0-4EF1-4df5-BCE5-B3AC8ACF5478} - C:\Program Files\Babylon\Babylon-Pro\Utils\BabylonIEPI.dll (file missing)
O9 - Extra 'Tools' menuitem: Translate this web page with Babylon - {F72841F0-4EF1-4df5-BCE5-B3AC8ACF5478} - C:\Program Files\Babylon\Babylon-Pro\Utils\BabylonIEPI.dll (file missing)
O9 - Extra button: eBay - Der weltweite Online-Marktplatz - {0B65DCC9-1740-43dc-B19C-4F309FB6A6CA} - http://rover.ebay.com/rover/1/1185-90953-17534-1/4 (file missing) (HKCU)
O9 - Extra 'Tools' menuitem: eBay - {0B65DCC9-1740-43dc-B19C-4F309FB6A6CA} - http://rover.ebay.com/rover/1/1185-90953-17534-1/4 (file missing) (HKCU)
O10 - Unknown file in Winsock LSP: c:\program files\common files\microsoft shared\windows live\wlidnsp.dll
O10 - Unknown file in Winsock LSP: c:\program files\common files\microsoft shared\windows live\wlidnsp.dll
O10 - Unknown file in Winsock LSP: c:\windows\system32\vsocklib.dll
O10 - Unknown file in Winsock LSP: c:\windows\system32\vsocklib.dll
O11 - Options group: [ACCELERATED_GRAPHICS] Accelerated graphics
O15 - Trusted Zone: *.clonewarsadventures.com
O15 - Trusted Zone: *.freerealms.com
O15 - Trusted Zone: *.soe.com
O15 - Trusted Zone: *.sony.com
O17 - HKLM\System\CCS\Services\Tcpip\..\{67FB100F-3005-486A-B1B8-15E17700C83C}: NameServer = 8.8.8.8,8.8.4.4
O18 - Protocol: skype4com - {FFC8B962-9B40-4DFF-9458-1830C7DD7F5D} - C:\PROGRA~1\COMMON~1\Skype\SKYPE4~1.DLL
O23 - Service: Adobe Acrobat Update Service (AdobeARMservice) - Adobe Systems Incorporated - C:\Program Files\Common Files\Adobe\ARM\1.0\armsvc.exe
O23 - Service: @%SystemRoot%\system32\aelupsvc.dll,-1 (AeLookupSvc) - Unknown owner - C:\Windows\system32\svchost.exe
O23 - Service: @%SystemRoot%\system32\Alg.exe,-112 (ALG) - Unknown owner - C:\Windows\System32\alg.exe
O23 - Service: AMD External Events Utility - AMD - C:\Windows\system32\atiesrxx.exe
O23 - Service: @%systemroot%\system32\appidsvc.dll,-100 (AppIDSvc) - Unknown owner - C:\Windows\system32\svchost.exe
O23 - Service: @%systemroot%\system32\appinfo.dll,-100 (Appinfo) - Unknown owner - C:\Windows\system32\svchost.exe
O23 - Service: @%SystemRoot%\system32\audiosrv.dll,-204 (AudioEndpointBuilder) - Unknown owner - C:\Windows\System32\svchost.exe
O23 - Service: @%SystemRoot%\system32\audiosrv.dll,-200 (Audiosrv) - Unknown owner - C:\Windows\System32\svchost.exe
O23 - Service: avast! Antivirus - AVAST Software - C:\Program Files\AVAST Software\Avast\AvastSvc.exe
O23 - Service: @%SystemRoot%\system32\AxInstSV.dll,-103 (AxInstSV) - Unknown owner - C:\Windows\system32\svchost.exe
O23 - Service: @%SystemRoot%\system32\bdesvc.dll,-100 (BDESVC) - Unknown owner - C:\Windows\System32\svchost.exe
O23 - Service: @%SystemRoot%\system32\bfe.dll,-1001 (BFE) - Unknown owner - C:\Windows\system32\svchost.exe
O23 - Service: @%SystemRoot%\system32\qmgr.dll,-1000 (BITS) - Unknown owner - C:\Windows\System32\svchost.exe
O23 - Service: @%systemroot%\system32\browser.dll,-100 (Browser) - Unknown owner - C:\Windows\System32\svchost.exe
O23 - Service: @%SystemRoot%\System32\certprop.dll,-11 (CertPropSvc) - Unknown owner - C:\Windows\system32\svchost.exe
O23 - Service: @%SystemRoot%\system32\cryptsvc.dll,-1001 (CryptSvc) - Unknown owner - C:\Windows\system32\svchost.exe
O23 - Service: @oleres.dll,-5012 (DcomLaunch) - Unknown owner - C:\Windows\system32\svchost.exe
O23 - Service: @%SystemRoot%\system32\defragsvc.dll,-101 (defragsvc) - Unknown owner - C:\Windows\system32\svchost.exe
O23 - Service: @%SystemRoot%\system32\dhcpcore.dll,-100 (Dhcp) - Unknown owner - C:\Windows\system32\svchost.exe
O23 - Service: @%SystemRoot%\System32\dnsapi.dll,-101 (Dnscache) - Unknown owner - C:\Windows\system32\svchost.exe
O23 - Service: @%systemroot%\system32\dot3svc.dll,-1102 (dot3svc) - Unknown owner - C:\Windows\system32\svchost.exe
O23 - Service: @%systemroot%\system32\dps.dll,-500 (DPS) - Unknown owner - C:\Windows\System32\svchost.exe
O23 - Service: @%systemroot%\system32\eapsvc.dll,-1 (EapHost) - Unknown owner - C:\Windows\System32\svchost.exe
O23 - Service: @%SystemRoot%\ehome\ehrecvr.exe,-101 (ehRecvr) - Unknown owner - C:\Windows\ehome\ehRecvr.exe
O23 - Service: @%SystemRoot%\ehome\ehsched.exe,-101 (ehSched) - Unknown owner - C:\Windows\ehome\ehsched.exe
O23 - Service: @%SystemRoot%\system32\wevtsvc.dll,-200 (eventlog) - Unknown owner - C:\Windows\System32\svchost.exe
O23 - Service: @comres.dll,-2450 (EventSystem) - Unknown owner - C:\Windows\system32\svchost.exe
O23 - Service: @%systemroot%\system32\fdPHost.dll,-100 (fdPHost) - Unknown owner - C:\Windows\system32\svchost.exe
O23 - Service: @%systemroot%\system32\fdrespub.dll,-100 (FDResPub) - Unknown owner - C:\Windows\system32\svchost.exe
O23 - Service: @%systemroot%\system32\FntCache.dll,-100 (FontCache) - Unknown owner - C:\Windows\system32\svchost.exe
O23 - Service: @gpapi.dll,-112 (gpsvc) - Unknown owner - C:\Windows\system32\svchost.exe
O23 - Service: Servicio Google Update (gupdate1cb0564659c9e24) (gupdate1cb0564659c9e24) - Unknown owner - C:\Program Files\Google\Update\GoogleUpdate.exe
O23 - Service: Servicio de Google Update (gupdatem) (gupdatem) - Unknown owner - C:\Program Files\Google\Update\GoogleUpdate.exe
O23 - Service: LogMeIn Hamachi Tunneling Engine (Hamachi2Svc) - LogMeIn Inc. - C:\Program Files\LogMeIn Hamachi\hamachi-2.exe
O23 - Service: @%SystemRoot%\System32\hidserv.dll,-101 (hidserv) - Unknown owner - C:\Windows\system32\svchost.exe
O23 - Service: @%SystemRoot%\system32\kmsvc.dll,-6 (hkmsvc) - Unknown owner - C:\Windows\System32\svchost.exe
O23 - Service: @%SystemRoot%\System32\ListSvc.dll,-100 (HomeGroupListener) - Unknown owner - C:\Windows\System32\svchost.exe
O23 - Service: @%SystemRoot%\System32\provsvc.dll,-100 (HomeGroupProvider) - Unknown owner - C:\Windows\System32\svchost.exe
O23 - Service: @%SystemRoot%\system32\ikeext.dll,-501 (IKEEXT) - Unknown owner - C:\Windows\system32\svchost.exe
O23 - Service: @%systemroot%\system32\IPBusEnum.dll,-102 (IPBusEnum) - Unknown owner - C:\Windows\system32\svchost.exe
O23 - Service: @%SystemRoot%\system32\iphlpsvc.dll,-500 (iphlpsvc) - Unknown owner - C:\Windows\System32\svchost.exe
O23 - Service: @comres.dll,-2946 (KtmRm) - Unknown owner - C:\Windows\System32\svchost.exe
O23 - Service: @%systemroot%\system32\srvsvc.dll,-100 (LanmanServer) - Unknown owner - C:\Windows\system32\svchost.exe
O23 - Service: @%systemroot%\system32\wkssvc.dll,-100 (LanmanWorkstation) - Unknown owner - C:\Windows\System32\svchost.exe
O23 - Service: @%SystemRoot%\system32\lltdres.dll,-1 (lltdsvc) - Unknown owner - C:\Windows\System32\svchost.exe
O23 - Service: @%SystemRoot%\system32\lmhsvc.dll,-101 (lmhosts) - Unknown owner - C:\Windows\system32\svchost.exe
O23 - Service: LMIGuardianSvc - LogMeIn, Inc. - C:\Program Files\LogMeIn Hamachi\LMIGuardianSvc.exe
O23 - Service: @%systemroot%\system32\mmcss.dll,-100 (MMCSS) - Unknown owner - C:\Windows\system32\svchost.exe
O23 - Service: Mozilla Maintenance Service (MozillaMaintenance) - Mozilla Foundation - C:\Program Files\Mozilla Maintenance Service\maintenanceservice.exe
O23 - Service: @%SystemRoot%\system32\FirewallAPI.dll,-23090 (MpsSvc) - Unknown owner - C:\Windows\system32\svchost.exe
O23 - Service: @comres.dll,-2797 (MSDTC) - Unknown owner - C:\Windows\System32\msdtc.exe
O23 - Service: @%SystemRoot%\system32\iscsidsc.dll,-5000 (MSiSCSI) - Unknown owner - C:\Windows\system32\svchost.exe
O23 - Service: @%SystemRoot%\system32\msimsg.dll,-27 (msiserver) - Unknown owner - C:\Windows\system32\msiexec.exe
O23 - Service: @%SystemRoot%\system32\qagentrt.dll,-6 (napagent) - Unknown owner - C:\Windows\System32\svchost.exe
O23 - Service: Net Driver HPZ12 - Unknown owner - C:\Windows\System32\svchost.exe
O23 - Service: @%SystemRoot%\system32\netman.dll,-109 (Netman) - Unknown owner - C:\Windows\System32\svchost.exe
O23 - Service: @%SystemRoot%\system32\netprofm.dll,-202 (netprofm) - Unknown owner - C:\Windows\System32\svchost.exe
O23 - Service: @%SystemRoot%\System32\nlasvc.dll,-1 (NlaSvc) - Unknown owner - C:\Windows\System32\svchost.exe
O23 - Service: NO-IP DUC v4 (NoIPDUCService4) - Unknown owner - C:\Program Files\No-IP\ducservice.exe
O23 - Service: @%SystemRoot%\system32\nsisvc.dll,-200 (nsi) - Unknown owner - C:\Windows\system32\svchost.exe
O23 - Service: @%SystemRoot%\system32\pnrpsvc.dll,-8004 (p2pimsvc) - Unknown owner - C:\Windows\System32\svchost.exe
O23 - Service: @%SystemRoot%\system32\p2psvc.dll,-8006 (p2psvc) - Unknown owner - C:\Windows\System32\svchost.exe
O23 - Service: @%SystemRoot%\system32\pcasvc.dll,-1 (PcaSvc) - Unknown owner - C:\Windows\system32\svchost.exe
O23 - Service: @%systemroot%\system32\pla.dll,-500 (pla) - Unknown owner - C:\Windows\System32\svchost.exe
O23 - Service: @%SystemRoot%\system32\umpnpmgr.dll,-100 (PlugPlay) - Unknown owner - C:\Windows\system32\svchost.exe
O23 - Service: Pml Driver HPZ12 - Unknown owner - C:\Windows\System32\svchost.exe
O23 - Service: @%SystemRoot%\system32\pnrpauto.dll,-8002 (PNRPAutoReg) - Unknown owner - C:\Windows\System32\svchost.exe
O23 - Service: @%SystemRoot%\system32\pnrpsvc.dll,-8000 (PNRPsvc) - Unknown owner - C:\Windows\System32\svchost.exe
O23 - Service: @%SystemRoot%\System32\polstore.dll,-5010 (PolicyAgent) - Unknown owner - C:\Windows\system32\svchost.exe
O23 - Service: @%SystemRoot%\system32\umpo.dll,-100 (Power) - Unknown owner - C:\Windows\system32\svchost.exe
O23 - Service: @%systemroot%\system32\profsvc.dll,-300 (ProfSvc) - Unknown owner - C:\Windows\system32\svchost.exe
O23 - Service: @%SystemRoot%\system32\qwave.dll,-1 (QWAVE) - Unknown owner - C:\Windows\system32\svchost.exe
O23 - Service: @%Systemroot%\system32\rasauto.dll,-200 (RasAuto) - Unknown owner - C:\Windows\System32\svchost.exe
O23 - Service: @%Systemroot%\system32\rasmans.dll,-200 (RasMan) - Unknown owner - C:\Windows\System32\svchost.exe
O23 - Service: @regsvc.dll,-1 (RemoteRegistry) - Unknown owner - C:\Windows\system32\svchost.exe
O23 - Service: Remote Packet Capture Protocol v.0 (experimental) (rpcapd) - CACE Technologies, Inc. - C:\Program Files\WinPcap\rpcapd.exe
O23 - Service: @%windir%\system32\RpcEpMap.dll,-1001 (RpcEptMapper) - Unknown owner - C:\Windows\system32\svchost.exe
O23 - Service: @%systemroot%\system32\Locator.exe,-2 (RpcLocator) - Unknown owner - C:\Windows\system32\locator.exe
O23 - Service: @oleres.dll,-5010 (RpcSs) - Unknown owner - C:\Windows\system32\svchost.exe
O23 - Service: @%SystemRoot%\System32\SCardSvr.dll,-1 (SCardSvr) - Unknown owner - C:\Windows\system32\svchost.exe
O23 - Service: @%SystemRoot%\system32\schedsvc.dll,-100 (Schedule) - Unknown owner - C:\Windows\system32\svchost.exe
O23 - Service: @%SystemRoot%\System32\certprop.dll,-13 (SCPolicySvc) - Unknown owner - C:\Windows\system32\svchost.exe
O23 - Service: @%SystemRoot%\system32\sdrsvc.dll,-107 (SDRSVC) - Unknown owner - C:\Windows\system32\svchost.exe
O23 - Service: @%SystemRoot%\system32\seclogon.dll,-7001 (seclogon) - Unknown owner - C:\Windows\system32\svchost.exe
O23 - Service: @%SystemRoot%\system32\Sens.dll,-200 (SENS) - Unknown owner - C:\Windows\system32\svchost.exe
O23 - Service: @%SystemRoot%\System32\sensrsvc.dll,-1000 (SensrSvc) - Unknown owner - C:\Windows\system32\svchost.exe
O23 - Service: @%SystemRoot%\System32\SessEnv.dll,-1026 (SessionEnv) - Unknown owner - C:\Windows\System32\svchost.exe
O23 - Service: @%SystemRoot%\system32\ipnathlp.dll,-106 (SharedAccess) - Unknown owner - C:\Windows\System32\svchost.exe
O23 - Service: @%SystemRoot%\System32\shsvcs.dll,-12288 (ShellHWDetection) - Unknown owner - C:\Windows\System32\svchost.exe
O23 - Service: Skype Updater (SkypeUpdate) - Skype Technologies - C:\Program Files\Skype\Updater\Updater.exe
O23 - Service: @%SystemRoot%\system32\snmptrap.exe,-3 (SNMPTRAP) - Unknown owner - C:\Windows\System32\snmptrap.exe
O23 - Service: Cola de impresión (Spooler) - Unknown owner - C:\Windows\System32\spoolsv.exe
O23 - Service: @%SystemRoot%\system32\sppsvc.exe,-101 (sppsvc) - Unknown owner - C:\Windows\system32\sppsvc.exe
O23 - Service: @%SystemRoot%\system32\sppuinotify.dll,-103 (sppuinotify) - Unknown owner - C:\Windows\system32\svchost.exe
O23 - Service: @%systemroot%\system32\ssdpsrv.dll,-100 (SSDPSRV) - Unknown owner - C:\Windows\system32\svchost.exe
O23 - Service: @%SystemRoot%\system32\sstpsvc.dll,-200 (SstpSvc) - Unknown owner - C:\Windows\system32\svchost.exe
O23 - Service: Steam Client Service - Valve Corporation - C:\Program Files\Common Files\Steam\SteamService.exe
O23 - Service: @%SystemRoot%\system32\wiaservc.dll,-9 (StiSvc) - Unknown owner - C:\Windows\system32\svchost.exe
O23 - Service: @%SystemRoot%\System32\swprv.dll,-103 (swprv) - Unknown owner - C:\Windows\System32\svchost.exe
O23 - Service: @%SystemRoot%\system32\sysmain.dll,-1000 (SysMain) - Unknown owner - C:\Windows\system32\svchost.exe
O23 - Service: @%SystemRoot%\system32\TabSvc.dll,-100 (TabletInputService) - Unknown owner - C:\Windows\System32\svchost.exe
O23 - Service: @%SystemRoot%\system32\tapisrv.dll,-10100 (TapiSrv) - Unknown owner - C:\Windows\System32\svchost.exe
O23 - Service: @%SystemRoot%\system32\tbssvc.dll,-100 (TBS) - Unknown owner - C:\Windows\System32\svchost.exe
O23 - Service: @%SystemRoot%\System32\termsrv.dll,-268 (TermService) - Unknown owner - C:\Windows\System32\svchost.exe
O23 - Service: @%SystemRoot%\System32\themeservice.dll,-8192 (Themes) - Unknown owner - C:\Windows\System32\svchost.exe
O23 - Service: @%systemroot%\system32\mmcss.dll,-102 (THREADORDER) - Unknown owner - C:\Windows\system32\svchost.exe
O23 - Service: @%SystemRoot%\system32\trkwks.dll,-1 (TrkWks) - Unknown owner - C:\Windows\System32\svchost.exe
O23 - Service: @%SystemRoot%\servicing\TrustedInstaller.exe,-100 (TrustedInstaller) - Unknown owner - C:\Windows\servicing\TrustedInstaller.exe
O23 - Service: @%SystemRoot%\system32\ui0detect.exe,-101 (UI0Detect) - Unknown owner - C:\Windows\system32\UI0Detect.exe
O23 - Service: @%systemroot%\system32\upnphost.dll,-213 (upnphost) - Unknown owner - C:\Windows\system32\svchost.exe
O23 - Service: @%SystemRoot%\system32\dwm.exe,-2000 (UxSms) - Unknown owner - C:\Windows\System32\svchost.exe
O23 - Service: @%SystemRoot%\system32\vds.exe,-100 (vds) - Unknown owner - C:\Windows\System32\vds.exe
O23 - Service: VMware Authorization Service (VMAuthdService) - VMware, Inc. - C:\Program Files\VMware\VMware Workstation\vmware-authd.exe
O23 - Service: VMware DHCP Service (VMnetDHCP) - VMware, Inc. - C:\Windows\system32\vmnetdhcp.exe
O23 - Service: VMware USB Arbitration Service (VMUSBArbService) - VMware, Inc. - C:\Program Files\Common Files\VMware\USB\vmware-usbarbitrator.exe
O23 - Service: VMware NAT Service - VMware, Inc. - C:\Windows\system32\vmnat.exe
O23 - Service: VMware Workstation Server (VMwareHostd) - Unknown owner - C:\Program Files\VMware\VMware Workstation\vmware-hostd.exe
O23 - Service: @%systemroot%\system32\vssvc.exe,-102 (VSS) - Unknown owner - C:\Windows\system32\vssvc.exe
O23 - Service: @%SystemRoot%\system32\w32time.dll,-200 (W32Time) - Unknown owner - C:\Windows\system32\svchost.exe
O23 - Service: @%systemroot%\system32\wbengine.exe,-104 (wbengine) - Unknown owner - C:\Windows\system32\wbengine.exe
O23 - Service: @%SystemRoot%\system32\wcncsvc.dll,-3 (wcncsvc) - Unknown owner - C:\Windows\System32\svchost.exe
O23 - Service: @%SystemRoot%\system32\WcsPlugInService.dll,-200 (WcsPlugInService) - Unknown owner - C:\Windows\system32\svchost.exe
O23 - Service: @%systemroot%\system32\wdi.dll,-502 (WdiServiceHost) - Unknown owner - C:\Windows\System32\svchost.exe
O23 - Service: @%systemroot%\system32\wdi.dll,-500 (WdiSystemHost) - Unknown owner - C:\Windows\System32\svchost.exe
O23 - Service: @%systemroot%\system32\webclnt.dll,-100 (WebClient) - Unknown owner - C:\Windows\system32\svchost.exe
O23 - Service: @%SystemRoot%\system32\wecsvc.dll,-200 (Wecsvc) - Unknown owner - C:\Windows\system32\svchost.exe
O23 - Service: @%SystemRoot%\System32\wercplsupport.dll,-101 (wercplsupport) - Unknown owner - C:\Windows\System32\svchost.exe
O23 - Service: @%SystemRoot%\System32\wersvc.dll,-100 (WerSvc) - Unknown owner - C:\Windows\System32\svchost.exe
O23 - Service: @%ProgramFiles%\Windows Defender\MsMpRes.dll,-103 (WinDefend) - Unknown owner - C:\Windows\System32\svchost.exe
O23 - Service: Stardock WindowBlinds (WindowBlinds) - Stardock Corporation - C:\Program Files\Stardock\MyColors\VistaSrv.exe
O23 - Service: @%SystemRoot%\system32\winhttp.dll,-100 (WinHttpAutoProxySvc) - Unknown owner - C:\Windows\system32\svchost.exe
O23 - Service: @%Systemroot%\system32\wbem\wmisvc.dll,-205 (Winmgmt) - Unknown owner - C:\Windows\system32\svchost.exe
O23 - Service: @%Systemroot%\system32\wsmsvc.dll,-101 (WinRM) - Unknown owner - C:\Windows\System32\svchost.exe
O23 - Service: @%SystemRoot%\System32\wlansvc.dll,-257 (Wlansvc) - Unknown owner - C:\Windows\system32\svchost.exe
O23 - Service: @%Systemroot%\system32\wbem\wmiapsrv.exe,-110 (wmiApSrv) - Unknown owner - C:\Windows\system32\wbem\WmiApSrv.exe
O23 - Service: @%PROGRAMFILES%\Windows Media Player\wmpnetwk.exe,-101 (WMPNetworkSvc) - Unknown owner - C:\Program Files\Windows Media Player\wmpnetwk.exe
O23 - Service: @%SystemRoot%\system32\wpdbusenum.dll,-100 (WPDBusEnum) - Unknown owner - C:\Windows\system32\svchost.exe
O23 - Service: @%SystemRoot%\System32\wscsvc.dll,-200 (wscsvc) - Unknown owner - C:\Windows\System32\svchost.exe
O23 - Service: WTService - Unknown owner - C:\Windows\system32\atwtusb.exe
O23 - Service: @%systemroot%\system32\wuaueng.dll,-105 (wuauserv) - Unknown owner - C:\Windows\system32\svchost.exe
O23 - Service: @%SystemRoot%\system32\wudfsvc.dll,-1000 (wudfsvc) - Unknown owner - C:\Windows\system32\svchost.exe
O23 - Service: @%SystemRoot%\System32\wwansvc.dll,-257 (WwanSvc) - Unknown owner - C:\Windows\system32\svchost.exe

--
End of file - 25003 bytes
#35
TUTORIAL: Cómo acceder a un Windows 7 con contraseña de usuario sin utilizar software externo:

Hola amigos. Hoy vamos a aprender a saltarnos y resetear la contraseña de windows 7 sin usar ningún software o dispositivo externo tal como un pendrive o CD/DVD (¡Como podéis leer! ¡no hacen falta cosas como el Hiren's!). Y tampoco vamos a necesitar ningun privilegio de administración previo en la máquina víctima para realizar este proceso.

Muchos de vosotros habréis oído esto antes, pero creo que estaría bien repetirlo para la gente que no sabe sobre ello todavía.

Cuando estamos en la pantalla de login de Windows, podemos pulsar la tecla shift 5 veces para activar sticky keys al menos que esté deshabilitado. Nuestro objetivo es explotar esta vulnerabilidad para obtener un acceso no autorizado a la máquina de la víctima. Esto nos llevaría unos minutos, así que sólo se puede intentar si se dispone de tiempo suficiente.

Vamos con el proceso:

Activamos la máquina de la víctima y comprobamos que haya una contraseña que saltarse. Sería una pérdida de tiempo en el caso de que hiciésemos todo esto en un equipo que no tiene contraseña.

Una vez comprobado, vamos a reiniciar la máquina. Cuando el logo animado de windows aparezca en pantalla, forzad a la máquina a que se apague manteniendo el botón de apagado. Esto debería permitirnos entrar en la pantalla de "Windows Error Recovery" la siguiente vez que encendamos.

Ahora deberíamos de tener dos opciones disponibles:

Launch Startup Repair (Reccomended)
Start Windows Normally.


Escoged el Startup Repair. Esto os llevará a otra pantalla donde Windows cargará archivos para la recuperación.

Tras cargarlos, os llevará a otra pantalla donde windows intentará encontrar problemas relacionados con el arranque. Tenéis que ser pacientes y dejar que realice esta tarea sin interrupciones. Tardará un rato hasta que acabe. A mitad de proceso, preguntará si queréis utilizar la restauración de sistema para restablecer la máquina a un estado anterior. Debéis pulsar "Cancelar" cuando pregunte esto. Después de esto, continuará el proceso, intentando reparar la máquina.

Después de unos minutos, un cuadro de diálogo aparecerá mostrando que el arranque no pudo haber sido arreglado automáticamente. Y preguntará si queréis enviar la información a Microsoft o no.

Antes de escoger ninguna de estas opciones. Haced click en "Ver detalles", presente debajo de estas opciones. El cuadro de diálogo aumentará de tamaño mostrando información extra. Encima de estos detalles, encontrarás un link para leer las declaraciones de privacidad en línea, y otro para hacerlo offline. Picad en el offline.

Esto hará que el documento se abra en una página de notepad.exe.

A partir de este punto:

Clic en Archivo
Escoger Abrir, permitir la visualización de todos los archivos (*.*) en vez de archivos de texto (*.txt)
Ir hasta System32 usando el navegador del notepad (C:\Windows\System32 normalmente).

Renombrad sethc.exe a sethc1.exe (para hacer un backup).
Renombrad cmd.exe a sethc.exe

Cuando pulsemos shift 5 veces para activar sticky keys, lo que se ejecuta es sethc.exe, que ahora en nuestro caso es cmd.exe, por lo que al utilizar este atajo de teclado, estaremos ejecutando cmd.exe (renombrado) en vez de el verdadero sethc.exe.

Sigamos con lo que estábamos haciendo. Una vez renombrados cmd.exe y el sethc.exe originales, cerramos todo y apagamos la máquina sin enviar nada a Microsoft.

Encendemos la máquina, y pulsamos shift 5 veces. Si sticky keys y su atajo estaban habilitados en la máquina, se nos abrirá cmd.

Tecleamos net user y pulsamos enter para ver un listado de los usuarios que usan la máquina si no estamos seguros.

Ahora teclear net user Guest * y pulsar enter. Se te pedirá una contraseña y confirmarla. Esta será la nueva contraseña para entrar a la máquina.

Tras hacer esto. Teclead exit y pulsad enter para cerrar cmd.

Voilá! Ya tenemos una cuenta funcional en la máquina.
#36
Hardware / Esquemas simples de conectores.
24 Octubre 2013, 15:44 PM
He estado traspasando dos placas, intercambiándolas de caja, y siempre me resultó bastante incómodo sacar fotos a los conectores, principalmente los de caja, que si no van de una pieza tienden a revolverse y liarse, y se acaban montando al revés... encontré esto, que es muy útil para evitar ese problema:

Conectores de USB, Sonido y botones frontales:


Siempre me lío cuando tengo que poner una clavija RJ-45, por lo que esto también me ha sido muy útil últimamente:

Conector RJ-45 y su cableado:



Esto ya es más típico, pero viene bien tenerlo a mano...

Conector de Fuente de Alimentación, de 20 y 24 pines:



Un Saludo.

PD: En el tema clásico, las imágenes no cargan, mientras que en el nuevo sí. No sé por qué...
#37
Software / Virtualbox: E_NOINTERFACE (0x80004002)
17 Octubre 2013, 03:44 AM
Llevo una hora intentando instalar VirtualBox en mi máquina.

El SO de mi máquina es Windows 7 SP1, 32-bit.

Detalles adicionales del hardware de mi equipo a continuación:

MotherBoard : MEDIONPC MS-7366
Chipset : nVidia nForce 630i
Procesador : Intel Pentium E5400 @ 2700 MHz
RAM: 4096  MB (2 x 2048 DDR2-SDRAM )
Gráfica: ATI Radeon HD 4650 1024MB DDR2 PCIE
Disco Duro: Seagate ST350041 2AS SATA Disk Device (500GB)
DVD-Rom: HL-DT-ST DVDRAM GH22NS50 SATA
Tarjeta de Red: Nvidia MCP73 Ethernet


Tras terminar la instalación e intentar ejecutar VirtualBox, aparece siguiente error:

CitarFallo al crear el objeto COM de VirtualBox.
La aplicación se cerrará.

Receptor RC:     E_NOINTERFACE (0x80004002)

Lo primero que encontré fueron comentarios sobre que la instalación no funciona adecuadamente si no se instala con privilegios de administrador, así que así lo hice.

Tras repetirse el problema y buscar más, encontré otro comentario que indicaba que el fallo también puede darse si la aplicación no se ejecuta como administrador, el error persiste aunque así lo haga.

Otra posible solución que leí para solucionar el problema era la eliminación del directorio:

C:/Users/[nombredeusuario]/.Virtualbox

Y tras cargarse el directorio realizar una reparación de la instalación.

He probado esto y tampoco me ha funcionado. Así que intenté también desinstalando, eliminando directorios, pasando CCleaner sobre el registro del sistema y volviendo a instalar y ejecutar como administrador. El problema persiste.

Sigo buscando una solución al problema.

Si alguien conoce el problema y me puede echar una mano estaría muy agradecido.

Un saludo.
#38
Juegos y Consolas / Busco juegos de logística.
13 Octubre 2013, 20:27 PM
Los juegos de este tipo son de mis favoritos, pero no los veo mucho por ahí, y los que hay no siempre suelen estar realmente centrados en eso.

Estoy buscando juegos de esta clase y se me ocurrió que me podríais hacer recomendaciones. Os pondré ejemplos de lo que busco, para ver si me podéis comentar sobre títulos similares:

Industry Giant 2:
http://en.wikipedia.org/wiki/Industry_Giant_II

Transport Tycoon:
http://www.openttd.org/en/

Port Royale 2:
http://es.wikipedia.org/wiki/Port_Royale_2:_Imperio_y_Piratas

StarKnights:
http://starknights.com/

Lo que más me interesa es que para producir unos bienes finales en el juego, (ya sea para venderlos o equipamiento para montar en tus unidades), haya que pasar por diversas fases de producción que requieran distintos materiales.

Os paso un pequeño esquema, sacado de StarKnights, de lo que me refiero con esto:



Básicamente, busco un juego donde monte de forma estratégica, cadenas de extracción, transporte, conversión y producción. (Cabe decir que esto excluye cosas como terraria o minecraft, son buenos juegos, pero no son estratégicos. Yo busco estrategia)

He estado buscando entre juegos más actuales (ya que todos los ejemplos que estoy dando tienen pila de años de antigüedad, pero las cadenas logísticas y el nivel de complejidad son bastante pobres...

¿Sugerencias?
#39
Seguridad / Programa de control parental.
23 Septiembre 2013, 23:17 PM
Hola, aquí me tenéis con una duda bastante peculiar.

Sabéis que estoy totalmente en contra de los controles parentales, pero necesito recomendaciones sobre programas de control parental.

Mi madre se las ha arreglado para cargarse 3 ordenadores de casa descargándose basura llena de malware, y esto, no sólo jode las máquinas, sino que también atasca mi red, ya que sus descargas se comen todo el ancho de banda.

Me gustaría que me recomendaseis un programa de control parental que tenga las siguientes características (para windows 7):

Descarga de archivos (desde cualquier medio posible, tal como navegador, torrent, etc)
(Para descargar desde navegador, solicite una clave que sólo yo sabré).
Filtrado selectivo de páginas web.
Bloqueo total del panel de control y cuentas de usuario.

Ahora mismo no me vienen más cosas a la mente, pero necesito que el sistema sea irrompible. (A menos que tire de martillo o algo por el estilo).

¿Qué me aconsejáis?
#40
Software / ¿Por qué es whatsapp tan popular?
11 Septiembre 2013, 15:57 PM
Whatsapp, ¿qué tiene de bueno?

Pues aquí, ya que no aguanto más. Pongo mi crítica sobre esta sobrevalorada aplicación móvil.
Y levanto mi duda ¿Por qué es tan popular?

Hace cierto tiempo que adquirí un smartphone, una de mis primeras acciones fue instalar whatsapp, registré mi número y logeé en mi nueva cuenta. La pesadilla estaba a punto de empezar.

Mi primera experiencia, contacté a uno de mis amigos cercanos y chateé con el un rato. Cuando me fijé, tropecientas personas, algunas de otras ciudades o incluso sitios verdaderamente remotos, como Australia, que por alguna razón tenían mi número, empezaron a contactarme sin mi consentimiento.

No tenía interés alguno en contactar con cierta gente por ese medio, ya que para eso tenía skype en mi PC...

Qué sorpresa fue la mía cuando veo que no puedo desactivar la aplicación, no tenía opción de cerrado en aquella versión. Acto seguido, mi siguiente movimiento fue finalizar el proceso en el administrador de aplicaciones de mi dispositivo... para encontrarme con que la aplicación se volvía a iniciar ella sola sin mi consentimiento.

Ya de mala gana, volví a la aplicación para revisar qué narices estaba pasando por ahí... Para encontrarme con que me estaban pasando imágenes de pornografía muy extrañas, y mi cliente de whatsapp las estaba aceptando automáticamente y descargándomelas directamente a mi memoria!

Mi dispositivo, un Samsung Galaxy de los primeros, no tiene gran capacidad, y se me saturó de ***** en 5 minutos.

Entonces fue cuando dije "vamos a deshabilitar esta descarga automática".

Tras mirar en las opciones durante un buen rato, sólo he podido encontrar como configurar un par de sonidos y un par de colores. Nada más.

Deduje que algo estaba haciendo mal, así que fuí a mi PC, e investigué en su sitio oficial, sólo para encontrarme con que la aplicación tenía la opción de deshabilitar estas transmisiones automáticas de archivos, pero que la opción se había quitado porque ellos "consideraban" que no consumía gran cantidad de datos.

Así pues, tras media hora de intentar evitar que mi móvil se petase con archivos basura y unos 200 Mb de mi tarifa de datos ya consumidos en 30 minutos... Terminé por desinstalar la aplicación.

Poco después, la gente me contactaba preguntando por qué no les respondía en whatsapp. Así que tenía que dar de baja mi aplicación.

De nuevo, voy a investigar al sitio oficial... Y me encuentro con la maravillosa sorpresa, la única manera posible de darse de baja es a través de su aplicación! Ellos no se responsabilizan de darte de baja aunque lo pidas.

Bien, pues intento instalar la aplicación, que ahora pesa unos mágicos 10 Mb (tanto como el Skype para móvil que uso actualmente) y no tengo espacio suficiente, ya que mi dispositivo no tiene gran capacidad.

Me veo desinstalando aplicaciones de mi dispositivo sólo por dar de baja mi cuenta.

Lo que no comprendo es por qué tiene whatsapp tanto éxito cuando:

1.- La atención al cliente es pésima. Contacté con ellos varias veces, y no recibí ni una respuesta.
2.- La aplicación es tan pobre y pesa tanto. He encontrado alternativas, como skype para móvil, que tienen mucho más control sobre quién te contacta y cómo lo hace y pesan LO MISMO.
3.- Es de pago. ¿Encima tengo que pagar por esto? ¡Otros servicios dan más y son gratuitos!

Muy mal, whatsapp, muy mal... Sólo les deseo una dolorosa bancarrota.

Pero sigo preguntándome, y es lo que quiero saber. ¡¿Por qué tan popular?!
#41
Software / Fuentes deformadas en Firefox.
21 Agosto 2013, 15:28 PM
He visto el caso de que en algunos ordenadores un poco antiguos, recientemente se han dado problemas de que firefox muestra las cosas deformadas si la ventana es de un tamaño inferior a la pantalla completa, haciendo el texto bastante ilegible en muchos casos.

Ejemplo:
http://img196.imageshack.us/img196/5153/5ntt.jpg

Tras buscar un poco, he encontrado una solución y la comparto.
Seguir los siguientes pasos:

  • Abrir Firefox
  • Pulsar Alt e ir a Herramientas>Opciones
  • Deshabilitar la aceleración de hardware en Avanzado>General


Puede que la navegación tire un poco más lenta, pero el problema de las deformaciones desaparece.

Fuente: http://foro.noticias3d.com/vbulletin/showthread.php?t=416928
#42
No entiendo por qué todos los problemas que tengo son de recalentamientos, esta vez es mi router. Podría freír un huevo encima del mismo.

Es un Comtrend C-5361. Antes no le pasaba esto, pero ahora se recalienta y se desactiva a ratos, por lo que pierdo la conexión de una forma muy molesta e intermitente.

¿Qué puedo hacer con él para que vuelva a funcionar correctamente?
#43
Desarrollo Web / Atascado con XSL
3 Junio 2013, 23:22 PM
[Estoy corto de tiempo, tengo hasta el 10-Junio]
(Nos han mandado esto a última hora)...


Nuestro profesor nos ha mandado hacer un proyecto, en el que damos formato a los datos de un XML con XSL.

Para la maquetación nos ha dicho que no debemos usar tablas, sino utilizar CSS. Cosa todavía no había intentado...

¿Cómo aplico una hoja de estilo a un XSL?

He probado con ponerlo en el header, tal como se haría en HTML, pero me da errores.
Error de lectura XML: mal formado
Ubicación: .../clima.xsl
Número de línea 6, columna 13


Tal que así:

Código (xml) [Seleccionar]
<head>
<link rel=StyleSheet href="style.css" type="text/css">
</head>


--

Este es el XML dado:
Código (xml) [Seleccionar]
<?xml version="1.0" encoding="ISO-8859-15" ?>
<?xml-stylesheet type="text/xsl" href="clima.xsl"?>
<root id="33044" version="1.0" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="http://www.aemet.es/xsd/localidades.xsd">
<origen>
<productor>Agencia Estatal de Meteorología - AEMET. Gobierno de España</productor>
<web>http://www.aemet.es</web>
<enlace>http://www.aemet.es/es/eltiempo/prediccion/municipios?l=33044</enlace>
<language>es</language>
<copyright>&#169; AEMET. Autorizado el uso de la información y su reproducción citando a AEMET como autora de la misma.</copyright>
<nota_legal>http://www.aemet.es/es/nota_legal</nota_legal>
</origen>
<elaborado>2013-06-03T09:05:03</elaborado>
<nombre>Oviedo</nombre>
<provincia>Asturias</provincia>
<prediccion>
<dia fecha="2013-06-03">
<prob_precipitacion periodo="00-12">0</prob_precipitacion>
<prob_precipitacion periodo="12-24">0</prob_precipitacion>
<prob_precipitacion periodo="00-06">0</prob_precipitacion>
<prob_precipitacion periodo="06-12">0</prob_precipitacion>
<prob_precipitacion periodo="12-18">0</prob_precipitacion>
<prob_precipitacion periodo="18-24">0</prob_precipitacion>
<cota_nieve_prov periodo="00-12"></cota_nieve_prov>
<cota_nieve_prov periodo="12-24"></cota_nieve_prov>
<cota_nieve_prov periodo="00-06"></cota_nieve_prov>
<cota_nieve_prov periodo="06-12"></cota_nieve_prov>
<cota_nieve_prov periodo="12-18"></cota_nieve_prov>
<cota_nieve_prov periodo="18-24"></cota_nieve_prov>
<estado_cielo periodo="00-12" descripcion="Poco nuboso">12</estado_cielo>
<estado_cielo periodo="12-24" descripcion="Poco nuboso">12</estado_cielo>
<estado_cielo periodo="00-06" descripcion="Despejado">11n</estado_cielo>
<estado_cielo periodo="06-12" descripcion="Poco nuboso">12</estado_cielo>
<estado_cielo periodo="12-18" descripcion="Poco nuboso">12</estado_cielo>
<estado_cielo periodo="18-24" descripcion="Poco nuboso">12</estado_cielo>
<viento periodo="00-12">
<direccion>NE</direccion>
<velocidad>20</velocidad>
</viento>
<viento periodo="12-24">
<direccion>E</direccion>
<velocidad>20</velocidad>
</viento>
<viento periodo="00-06">
<direccion>C</direccion>
<velocidad>0</velocidad>
</viento>
<viento periodo="06-12">
<direccion>NE</direccion>
<velocidad>20</velocidad>
</viento>
<viento periodo="12-18">
<direccion>E</direccion>
<velocidad>20</velocidad>
</viento>
<viento periodo="18-24">
<direccion>E</direccion>
<velocidad>5</velocidad>
</viento>
<racha_max periodo="00-12"></racha_max>
<racha_max periodo="12-24">45</racha_max>
<racha_max periodo="00-06"></racha_max>
<racha_max periodo="06-12"></racha_max>
<racha_max periodo="12-18">40</racha_max>
<racha_max periodo="18-24"></racha_max>
<temperatura>
<maxima>18</maxima>
<minima>8</minima>
<dato hora="06">8</dato>
<dato hora="12">16</dato>
<dato hora="18">16</dato>
<dato hora="24">11</dato>
</temperatura>
<sens_termica>
<maxima>18</maxima>
<minima>8</minima>
<dato hora="06">8</dato>
<dato hora="12">16</dato>
<dato hora="18">16</dato>
<dato hora="24">11</dato>
</sens_termica>
<humedad_relativa>
<maxima>90</maxima>
<minima>60</minima>
<dato hora="06">80</dato>
<dato hora="12">65</dato>
<dato hora="18">60</dato>
<dato hora="24">90</dato>
</humedad_relativa>
<uv_max>7</uv_max>
</dia>
<dia fecha="2013-06-04">
<prob_precipitacion periodo="00-12">0</prob_precipitacion>
<prob_precipitacion periodo="12-24">0</prob_precipitacion>
<prob_precipitacion periodo="00-06">0</prob_precipitacion>
<prob_precipitacion periodo="06-12">0</prob_precipitacion>
<prob_precipitacion periodo="12-18">0</prob_precipitacion>
<prob_precipitacion periodo="18-24">0</prob_precipitacion>
<cota_nieve_prov periodo="00-12"></cota_nieve_prov>
<cota_nieve_prov periodo="12-24"></cota_nieve_prov>
<cota_nieve_prov periodo="00-06"></cota_nieve_prov>
<cota_nieve_prov periodo="06-12"></cota_nieve_prov>
<cota_nieve_prov periodo="12-18"></cota_nieve_prov>
<cota_nieve_prov periodo="18-24"></cota_nieve_prov>
<estado_cielo periodo="00-12" descripcion="Despejado">11</estado_cielo>
<estado_cielo periodo="12-24" descripcion="Despejado">11</estado_cielo>
<estado_cielo periodo="00-06" descripcion="Despejado">11n</estado_cielo>
<estado_cielo periodo="06-12" descripcion="Despejado">11</estado_cielo>
<estado_cielo periodo="12-18" descripcion="Despejado">11</estado_cielo>
<estado_cielo periodo="18-24" descripcion="Despejado">11</estado_cielo>
<viento periodo="00-12">
<direccion>NE</direccion>
<velocidad>15</velocidad>
</viento>
<viento periodo="12-24">
<direccion>NE</direccion>
<velocidad>15</velocidad>
</viento>
<viento periodo="00-06">
<direccion>C</direccion>
<velocidad>0</velocidad>
</viento>
<viento periodo="06-12">
<direccion>NE</direccion>
<velocidad>15</velocidad>
</viento>
<viento periodo="12-18">
<direccion>NE</direccion>
<velocidad>15</velocidad>
</viento>
<viento periodo="18-24">
<direccion>C</direccion>
<velocidad>0</velocidad>
</viento>
<racha_max periodo="00-12"></racha_max>
<racha_max periodo="12-24"></racha_max>
<racha_max periodo="00-06"></racha_max>
<racha_max periodo="06-12"></racha_max>
<racha_max periodo="12-18"></racha_max>
<racha_max periodo="18-24"></racha_max>
<temperatura>
<maxima>19</maxima>
<minima>9</minima>
<dato hora="06">9</dato>
<dato hora="12">18</dato>
<dato hora="18">17</dato>
<dato hora="24">13</dato>
</temperatura>
<sens_termica>
<maxima>19</maxima>
<minima>9</minima>
<dato hora="06">9</dato>
<dato hora="12">18</dato>
<dato hora="18">17</dato>
<dato hora="24">13</dato>
</sens_termica>
<humedad_relativa>
<maxima>100</maxima>
<minima>55</minima>
<dato hora="06">100</dato>
<dato hora="12">60</dato>
<dato hora="18">55</dato>
<dato hora="24">80</dato>
</humedad_relativa>
<uv_max>7</uv_max>
</dia>
<dia fecha="2013-06-05">
<prob_precipitacion periodo="00-12">5</prob_precipitacion>
<prob_precipitacion periodo="12-24">15</prob_precipitacion>
<cota_nieve_prov periodo="00-12"></cota_nieve_prov>
<cota_nieve_prov periodo="12-24"></cota_nieve_prov>
<estado_cielo periodo="00-12" descripcion="Despejado">11</estado_cielo>
<estado_cielo periodo="12-24" descripcion="Intervalos nubosos">13</estado_cielo>
<viento periodo="00-12">
<direccion>NE</direccion>
<velocidad>15</velocidad>
</viento>
<viento periodo="12-24">
<direccion>NE</direccion>
<velocidad>15</velocidad>
</viento>
<racha_max periodo="00-12"></racha_max>
<racha_max periodo="12-24"></racha_max>
<temperatura>
<maxima>21</maxima>
<minima>11</minima>
</temperatura>
<sens_termica>
<maxima>21</maxima>
<minima>11</minima>
</sens_termica>
<humedad_relativa>
<maxima>85</maxima>
<minima>60</minima>
</humedad_relativa>
<uv_max>7</uv_max>
</dia>
<dia fecha="2013-06-06">
<prob_precipitacion periodo="00-12">35</prob_precipitacion>
<prob_precipitacion periodo="12-24">70</prob_precipitacion>
<cota_nieve_prov periodo="00-12"></cota_nieve_prov>
<cota_nieve_prov periodo="12-24">2400</cota_nieve_prov>
<estado_cielo periodo="00-12" descripcion="Intervalos nubosos">13</estado_cielo>
<estado_cielo periodo="12-24" descripcion="Muy nuboso con tormenta">53</estado_cielo>
<viento periodo="00-12">
<direccion>C</direccion>
<velocidad>0</velocidad>
</viento>
<viento periodo="12-24">
<direccion>NO</direccion>
<velocidad>5</velocidad>
</viento>
<racha_max periodo="00-12"></racha_max>
<racha_max periodo="12-24"></racha_max>
<temperatura>
<maxima>19</maxima>
<minima>12</minima>
</temperatura>
<sens_termica>
<maxima>19</maxima>
<minima>12</minima>
</sens_termica>
<humedad_relativa>
<maxima>90</maxima>
<minima>55</minima>
</humedad_relativa>
<uv_max>7</uv_max>
</dia>
<dia fecha="2013-06-07">
<prob_precipitacion>90</prob_precipitacion>
<cota_nieve_prov>2200</cota_nieve_prov>
<estado_cielo descripcion="Muy nuboso con tormenta">53</estado_cielo>
<viento>
<direccion>C</direccion>
<velocidad>0</velocidad>
</viento>
<racha_max></racha_max>
<temperatura>
<maxima>16</maxima>
<minima>10</minima>
</temperatura>
<sens_termica>
<maxima>16</maxima>
<minima>10</minima>
</sens_termica>
<humedad_relativa>
<maxima>95</maxima>
<minima>75</minima>
</humedad_relativa>
<uv_max>7</uv_max>
</dia>
<dia fecha="2013-06-08">
<prob_precipitacion>95</prob_precipitacion>
<cota_nieve_prov>2200</cota_nieve_prov>
<estado_cielo descripcion="Muy nuboso con tormenta">53</estado_cielo>
<viento>
<direccion>NO</direccion>
<velocidad>10</velocidad>
</viento>
<racha_max></racha_max>
<temperatura>
<maxima>15</maxima>
<minima>9</minima>
</temperatura>
<sens_termica>
<maxima>15</maxima>
<minima>9</minima>
</sens_termica>
<humedad_relativa>
<maxima>100</maxima>
<minima>80</minima>
</humedad_relativa>
</dia>
<dia fecha="2013-06-09">
<prob_precipitacion>80</prob_precipitacion>
<cota_nieve_prov>2500</cota_nieve_prov>
<estado_cielo descripcion="Muy nuboso con tormenta">53</estado_cielo>
<viento>
<direccion>N</direccion>
<velocidad>10</velocidad>
</viento>
<racha_max></racha_max>
<temperatura>
<maxima>16</maxima>
<minima>9</minima>
</temperatura>
<sens_termica>
<maxima>16</maxima>
<minima>8</minima>
</sens_termica>
<humedad_relativa>
<maxima>100</maxima>
<minima>85</minima>
</humedad_relativa>
</dia>
</prediccion>
</root>


--

Antes de meter nada más intenté meter la hoja de estilo, pero no pude.
De momento sólo tengo esto, en lo que leo un dato para probar que enlazan XSL con XML, el dato aparece, pero en cuanto intento enchufar la hoja de estilo, casca todo...

Código (xml) [Seleccionar]
<?xml version="1.0" encoding="ISO-8859-1"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:template match="/">
<html>
<head>
<link rel=StyleSheet href="style.css" type="text/css">
</head>
<body>
<div class = "caja">
<div class = "titulo">
Prediccion Meteorologica para los proximos 3 dias
</div>
<div class = "cuadro">
<div class = "texto">
Localidad: <xsl:value-of select="root/nombre"/>

</div>
</div>
</div>
</body>
</html>

</xsl:template>
</xsl:stylesheet>
#44
Bases de Datos / Algunos ejemplos de PL/SQL
3 Junio 2013, 20:34 PM
Me ha dado por compartir algunos ejemplos de nivel simple que pueden resultar útiles para ser tomados como referencia en algunos casos:

Para estos ejemplos, en ocasiones utilizaremos las siguientes tablas:
CREATE TABLE EMPLE(
EMP_NO NUMERIC(4) NOT NULL,
NOMBRE VARCHAR2(35),
FECHA_ALTA DATE NOT NULL,
OFICIO NUMERIC(15),
SALARIO NUMERIC(6),
COMISION NUMERIC(6),
DEP_NO NUMERIC(2) NOT NULL);

CREATE TABLE DEPART(
DEP_NO NUMERIC(2),
NOMBRE VARCHAR2(25),
LOCALIDAD VARCHAR2(30));


Mostrar el número de empleados en la tabla EMPLE utilizando un bloque anónimo:

DECLARE
V_NUM NUMBER;
BEGIN
SELECT COUNT(EMP_NO)
INTO V_NUM
FROM EMPLE;

DBMS_OUTPUT.PUT_LINE('NUMERO DE EMPLEADOS: ' V_NUM);
END;
/


Mostrar la fecha del sistema con formato personalizado:
(Utilización de las funciones TO_CHAR y el valor SYSDATE de la tabla DUAL).

DECLARE
OP VARCHAR2(100);
BEGIN
SELECT TO_CHAR(SYSDATE, '"EL DIA " DD "DE " MONTH "DE " YYYY "A LAS "  HH24 "Y " MI "CON " SS')
INTO OP
FROM DUAL;

DBMS_OUTPUT.PUT_LINE(OP);
END;
/


Concatenación de dos cadenas pasadas como parámetro a un procedimiento:

CREATE OR REPLACE PROCEDURE EJ1 (PAR1 IN VARCHAR2, PAR2 IN VARCHAR2)
DECLARE
RES VARCHAR2(40);
BEGIN
RES:= UPPER(PAR1)||UPPER(PAR2);
DBMS_OUTPUT.PUT_LINE(RES);
END;
/


Procedimiento que divide dos números pasados como parámetros:
(Ejemplo de uso de EXCEPTION al dividir entre cero).

CREATE OR REPLACE PROCEDURE EJ3(NUM1 NUMBER, NUM2 NUMBER)
IS
RES NUMBER;
BEGIN
RES:=NUM1/NUM2;
DBMS_OUTPUT.PUT_LINE(RES);
EXCEPTION
WHEN ZERO_DIVIDE THEN
DBMS_OUTPUT.PUT_LINE('NO SE PUEDE DIVIDIR POR CERO');
WHEN OTHERS THEN
DBMS_OUTPUT.PUT_LINE('ERROR INESPERADO');
END;
/


Mostrar los datos de un empleado a partir de su número. Saltará una exception en caso de que el número indicado no exista:

CREATE OR REPLACE PROCEDURE EJ4(NUM1 NUMBER)
IS
  APE EMPLE.APELLIDO%TYPE;
  SAL EMPLE.SALARIO%TYPE;
  FEC EMPLE.FECHA_ALT%TYPE;
BEGIN
SELECT APELLIDO, SALARIO, FECHA_ALT
INTO APE, SAL, FEC
FROM EMPLE
WHERE EMP_NO LIKE NUM1;
DBMS_OUTPUT.PUT_LINE(APE || ' ' || SAL || ' ' || FEC);
EXCEPTION
WHEN NO_DATA_FOUND THEN
DBMS_OUTPUT.PUT_LINE('NO EXISTE EL EMP_NO');
WHEN OTHERS THEN
DBMS_OUTPUT.PUT_LINE('ERROR');
END;
/


Función que devuelve el número de años completos entre dos fechas.
(Uso de las funciones TRUNC, ABS y TO_DATE y MONTHS_BETWEEN)

CREATE OR REPLACE FUNCTION EJ9(D1 VARCHAR2, D2 VARCHAR2)
RETURN NUMBER
IS
  DD1 DATE;
  DD2 DATE;
RES NUMBER;
BEGIN
  DD1 := TO_DATE(D1);
  DD2 := TO_DATE(D2);
RES := ABS(MONTHS_BETWEEN(DD1, DD2)/12);
RETURN TRUNC(RES,0);
END;
/


Calcular los trienios entre dos fechas, utilizando la función anterior:
(Cómo utilizar una función dentro de otra)

CREATE OR REPLACE FUNCTION TRIENIOS(FECHA1 DATE, FECHA2 DATE)
RETURN NUMBER
AS
V_TRIENIOS NUMBER(6);
BEGIN
V_TRIENIOS :=TRUNC(ANOS_DIF(FECHA1,FECHA2)/3);
RETURN V_TRIENIOS;
END;


Ejemplo de función recursiva, cálculo del factorial de un número pasado como parámetro de la función:

CREATE FUNCTION FACTORIAL (V_NUM NUMBER)
RETURN NUMBER
IS
BEGIN
IF (V_NUM<=1) THEN
RETURN 1;
ELSE
RETURN V_NUM*FACTORIAL(V_NUM-1);
END IF;
END;


Convertir un número a día correspondiente de la semana.
(Ejemplo muy básico de una estructura tipo CASE).

CREATE OR REPLACE FUNCTION DIASCASE(NUM NUMBER)
RETURN VARCHAR2
AS
BEGIN
CASE NUM
WHEN '1' THEN
RETURN 'LUNES';
WHEN '2' THEN
RETURN 'MARTES';
WHEN '3' THEN
RETURN 'MIERCOLES';
WHEN '4' THEN
RETURN 'JUEVES';
WHEN '5' THEN
RETURN 'VIERNES';
WHEN '6' THEN
RETURN 'SABADO';
WHEN '7' THEN
RETURN 'DOMINGO';
ELSE
    RETURN 'NUMERO ERRONEO';
END CASE;
END;
/


Procedimiento que escribe los números de 1 a 10:
(Ejemplo simple de la utilización de LOOP).

CREATE OR REPLACE PROCEDURE CONTAR1()
IS

VAR NUMERIC := 0;

BEGIN

LOOP
VAR := VAR + 1;
DBMS_OUTPUT.PUT_LINE(VAR);
EXIT WHEN VAR = 10;
END LOOP;
END;
/


Contar desde un máximo hasta un mínimo, con un cierto salto, los tres valores son parámetros:

CREATE OR REPLACE PROCEDURE CONTAR4(MN NUMERIC, MX NUMERIC, JP NUMERIC)
IS
VAR NUMERIC := MN;
BEGIN
DBMS_OUTPUT.PUT_LINE('DESDE ' || MN || ' HASTA ' || MX || ' CON SALTO ' || JP);
LOOP
DBMS_OUTPUT.PUT_LINE(VAR);
VAR := VAR + JP;
EXIT WHEN VAR > MX;
END LOOP;
END;
/


Contar desde un número hasta cero, en este caso con un bucle for:

CREATE OR REPLACE PROCEDURE CONTAR(N NUMBER)
IS
  C NUMBER;
BEGIN
  C := N;
IF N BETWEEN 1 AND 10 THEN
FOR C IN REVERSE 0..N
LOOP
DBMS_OUTPUT.PUT_LINE(C);
END LOOP;
ELSE
DBMS_OUTPUT.PUT_LINE('NUMERO FUERA DE RANGO (1-10)');
END IF;
END;
/


Invertir una cadena introducida como parámetro:
(Uso de función SUBSTR)

CREATE OR REPLACE PROCEDURE REVS2(WD VARCHAR2)
IS
C NUMBER;
L NUMBER;
RS_OUT VARCHAR2(20);
BEGIN
C := 0;
L := LENGTH(WD);
FOR C IN REVERSE 1..L
LOOP
RS_OUT := RS_OUT || SUBSTR(WD, C, 1);
END LOOP;
DBMS_OUTPUT.PUT_LINE(RS_OUT);
END;
/
#45
Hola, tengo una duda que llevo tiempo y tiempo barajando.

Mi Gráfica es una ATI Radeon HD 4650 1024MB DDR2 PCIE

Este PC lo pillé premontado hace unos 4~5 años.
La duda que tengo, respecto a los requisitos de hoy en día... ¿se empieza a quedar esta un poco atrás?

Siempre juego las cosas con los gráficos al mínimo... Lo que no sé es si llegará el momento en el que tenga que cambiar de gráfica porque la configuración mínima será demasiado incluso para esta.

¿Debería considerar un cambio?

Por el resto, el PC es tal que así:

MotherBoard : MEDIONPC MS-7366
Chipset : nVidia nForce 630i
Procesador : Intel Pentium E5400 @ 2700 MHz
RAM: 4096  MB (2 x 2048 DDR2-SDRAM )
Gráfica: ATI Radeon HD 4650 1024MB DDR2 PCIE
Disco Duro: Seagate ST350041 2AS SATA Disk Device (500GB)
DVD-Rom: HL-DT-ST DVDRAM GH22NS50 SATA
Tarjeta de Red: Nvidia MCP73 Ethernet

Sé que si amplio, una fuente mejor la necesito (a parte que no anda muy fina de todas formas). ¿Necesitaría mejorar algo más antes de meterle más gráfica? (¿Algún componente que pueda hacer de cuello de botella?)

Mi presupuesto es bastante limitado así que consideremos que no planeo gastar mucho más de 100€ en actualizarme.

Sé que no se puede hacer magia si no hay dinero, pero supongo que algo mejor que lo que tengo actualmente lo podría encontrar a precios bajos...