|
5901
|
Sistemas Operativos / Windows / Re: mi pc anada muy lento
|
en: 26 Enero 2015, 23:12 pm
|
-lo del disco duro no entiendo bien, ni se cuantos tengo, supongo que tengo solo uno Pues mal empezamos si no conoces los dispositivos de tu propio PC... y detrener los servicios que mencionas , aunque no se mucho de estas coass, ni menos cuales son necesarios o innecesaarios, si eso recomiendas no creo que afecte en nada el funcionamiento normal del pc verdad? Los servicios que mencioné están relacionados con el uso del Fax, el Windows Media PLayer, la búsqueda de archivos (que ya te comentaron el propósito de ese servicio), y el escritorio virtual de Windows. Mientras no uses nada de eso entonces puedes deshabilitarlos sin preocupaciones. Pero todas esas cosas como la "limpieza del SO" son pequeñas mejoras de rendimiento y la mejora será ínfima, no esperes que el SO vuelva a estabilizarse por hacer esas pequeñas mejoras mientras el problema real persista, es decir, el proceso conflictivo que te chupa los recursos con operaciones I/O masivas, y como ya dije, en mi opinión hay un 99% probabilidad de que sea culpa del Smartsecurity, desinstálalo ya. Saludos
|
|
|
5903
|
Foros Generales / Sugerencias y dudas sobre el Foro / Re: Insertar imagen
|
en: 26 Enero 2015, 22:23 pm
|
El foro no dispone de una opción para adjuntar imágenes, debes subir la imagen manualmente a un hosting y luego insertar la url cómo ha comentado el compañero @Simorg. O puedes utilizar http://i.elhacker.net para hospedar tus imágenes.
Otra opción más cómoda sería utilizar mi aplicación de escritorio, Imgur Uploader.Net, para subir la imagen automaticamente a Imgur, ¿cómo?, pues arrastras una imagen al programa, y cuando se haya subido pulsas en el botón del portapapeles donde pone " BBCode Normal", y pegas lo que se ha copiado, aquí. [SOURCE] Imgur Uploader.Net v1.1NOTA: PARA USAR ESTE PROGRAMA ES NECESARIO REGISTRARSE EN LA WEB DE IMGUR PARA OBTENER LAS IDS NECESARIAS DEL USO DE LA API.https://api.imgur.com/#register Saludos
|
|
|
5904
|
Foros Generales / Dudas Generales / Configurar Httack para descargar una página con login
|
en: 25 Enero 2015, 22:25 pm
|
Hola Estoy registrado en esta página: http://www.cgwallpapers.com, la url para los miembros es http://www.cgwallpapers.com/members/, y la url de login es http://www.cgwallpapers.com/login.php, aunque bueno... se puede loguear a la página desde cualquier parte. Me gustaría aprender a utilizar Httrack Website Copier para descargar las imágenes de esa página. He leido y segudio los pasos que se mencionan aquí: AuthenticationCatchURL tutorialHow to Configure HTTrack for a Website With Password ProtectionAsí pues, esta es la url en el Httrack: http://www.cgwallpapers.com/members/?>postfile:C:\CGWallpapers\cgwallpapers\hts-post1 También probé añadiendole el pass: http://user:pass@www.cgwallpapers.com/members/?>postfile:C:\CGWallpapers\cgwallpapers\hts-post1 Está es la respuesta de la petición post: GET /members/ HTTP/1.1 Host: www.cgwallpapers.com User-Agent: Mozilla/5.0 (Windows NT 6.3; WOW64; rv:31.0) Gecko/20100101 Firefox/31.0 Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8 Accept-Language: es-ES,es;q=0.8,en-US;q=0.5,en;q=0.3 Accept-Encoding: gzip, deflate Cookie: c_country=ES; c_resolutie=1600x900; _ga=GA1.2.1209608777.1422206135; __atuvc=13%7C4; PHPSESSID=censurado; c_prevnumber=1; c_email=censurado; c_wachtwoord=censurado; _gat=1 Connection: keep-alive El spider lo he configurado para que no siga ninguna regla, y he modificado otras opciones del Httrack (probando muchas configuraciones sin éxito), en fin, debería descargarme TODO. Pero por más que lo intento, esto es lo que sucede, parece como si detectase y parsease las urls de los wallpapers, pero sin llegar a descargar NINGUNO: ¿Alguien me ayuda a configurar Httrack para descargar los wallpapers de esa web?Saludos!
|
|
|
5906
|
Programación / .NET (C#, VB.NET, ASP) / Re: graficar en C#
|
en: 25 Enero 2015, 15:48 pm
|
Buenas No me queda claro lo que intentas conseguir, pero: 1) Si vas a dibujar sobre un control, debes hacerlo en el evento OnPaint (subclaseando el control), de lo contrario te verás envuelto en problemas de Flickering u otro tipo de problemas. 2) Estás instanciando objetos los cuales no estás liberando sus recursos de la memoria al terminar de usarlos. 3) El método Thread.Sleep sirve para detener la ejecución del thread actual durante el periodo especificado, es decir, tal y como lo usas lo que hace es colgar tu aplicación. 4) Un objeto de tipo Bitmap no necesita ser casteado/convertido a un objeto de tipo Image, ya que un Bitmap hereda de un Image. Como ya he mencionado, no se que intentas conseguir, y deberías pintar en el evento OnPaint, pero con esto te puedes hacer una idea más o menos, haciéndolo de forma asíncrona: VB.NET: Imports System.Threading.Tasks Imports System.Threading Public Class Form1 Dim drawTask As task Private Sub Button1_Click(sender As Object, e As EventArgs) _ Handles Button1.Click drawTask = Task.Factory.StartNew(Sub() Me.DrawAsync() End Sub) End Sub Private Sub DrawAsync() Dim bmp As Bitmap If PictureBox1.InvokeRequired Then PictureBox1.Invoke(Sub() bmp = New Bitmap(PictureBox1.Width, PictureBox1.Height) PictureBox1.Image = bmp PictureBox1.SizeMode = PictureBoxSizeMode.AutoSize End Sub) Else bmp = New Bitmap(PictureBox1.Width, PictureBox1.Height) PictureBox1.Image = bmp PictureBox1.SizeMode = PictureBoxSizeMode.AutoSize End If Using g As Graphics = Graphics.FromImage(bmp) Using pen As New Pen(Color.Blue, width:=1) g.DrawLine(pen, New Point(0, 290 - 0), New Point(50, 290 - 50)) Thread.Sleep(200) g.DrawLine(pen, New Point(50, 90 - 50), New Point(50, 290 - 100)) Thread.Sleep(500) End Using End Using bmp.Dispose() End Sub End Class
C#: using Microsoft.VisualBasic; using System; using System.Collections; using System.Collections.Generic; using System.Data; using System.Diagnostics; using System.Threading.Tasks; using System.Threading; public class Form1 { task drawTask; private void Button1_Click(object sender, EventArgs e) { drawTask = Task.Factory.StartNew(() => { this.DrawAsync(); }); } private void DrawAsync() { Bitmap bmp; if (PictureBox1.InvokeRequired) { PictureBox1.Invoke(() => { bmp = new Bitmap (PictureBox1 .Width, PictureBox1 .Height); PictureBox1.Image = bmp; PictureBox1.SizeMode = PictureBoxSizeMode.AutoSize; }); } else { bmp = new Bitmap (PictureBox1 .Width, PictureBox1 .Height); PictureBox1.Image = bmp; PictureBox1.SizeMode = PictureBoxSizeMode.AutoSize; } using (Graphics g = Graphics.FromImage(bmp)) { using (Pen pen = new Pen (Color .Blue, width : 1)) { g .DrawLine(pen, new Point (0, 290 - 0), new Point (50, 290 - 50)); Thread.Sleep(200); g .DrawLine(pen, new Point (50, 90 - 50), new Point (50, 290 - 100)); Thread.Sleep(500); } } bmp.Dispose(); } } //======================================================= //Service provided by Telerik (www.telerik.com) //=======================================================
Saludos
|
|
|
5907
|
Programación / Scripting / Re: ayuda con dos programas .bat
|
en: 25 Enero 2015, 15:03 pm
|
Aquí estás comparando """" con "", por lo tanto nunca irá a la etiqueta fin: :inicio
Debes expandir la variable de argumento para eliminar las comillas dobles adicionales. en el primero: "nos preguntará por el texto del fichero, creándolo con Copy " esto es lo que no me queda claro... Supongo que el ejercicio se refiere a hacerlo de la siguiente manera: :CreateText Echo:Presiona CTRL+Z para terminar.
Saludos
|
|
|
5908
|
Programación / .NET (C#, VB.NET, ASP) / Re: Programación de Archivos en C#
|
en: 25 Enero 2015, 14:45 pm
|
En el método Read no deberías comprobar si la linea está vacía, ya que el método Write finaliza al detectar una linea vacía. He hecho otras modificaciones: VB.Net: Module Module1 ''' <summary> ''' Defines the entry point of the application. ''' </summary> Public Sub Main() ListaEnlazada.Write() ListaEnlazada.Read() ListaEnlazada.Wait() End Sub End Module
+ Imports System.IO Imports System.Text Public NotInheritable Class ListaEnlazada Shared ReadOnly filepath As String = Path.Combine(Path.GetTempPath, "frases.txt") Public Shared Sub Write() Console.WriteLine(String.Format("Escriba palabras que se guardaran en un archivo llamado '{0}'", Path.GetFileName(filepath))) Dim inputText As String Using sw As New StreamWriter(filepath, append:=False, encoding:=Encoding.Default) inputText = Console.ReadLine() Do Until String.IsNullOrEmpty(inputText) sw.WriteLine(inputText) inputText = Console.ReadLine() Loop End Using End Sub Public Shared Sub Read() ' NOTA: ' Puedes simplificar todo este bloque en una sola instrucción: ' Console.Write(File.ReadAllText(filepath, encoding:=Encoding.Default)) Using sr As New StreamReader(filepath, encoding:=Encoding.Default) Do Until sr.EndOfStream Console.WriteLine(sr.ReadLine()) Loop End Using End Sub Public Shared Sub Wait() Console.WriteLine("Oprima una tecla para continuar...") Console.ReadKey() End Sub End Class
C#: using System; using System.Collections.Generic; using System.Linq; namespace ConsoleApplication1 { class Program { /// <summary> /// Defines the entry point of the application. /// </summary> static void Main(string[] args) { ListaEnlazada.Write(); ListaEnlazada.Read(); ListaEnlazada.Wait(); } } }
+ using Microsoft.VisualBasic; using System; using System.Collections; using System.Collections.Generic; using System.Data; using System.Diagnostics; using System.IO; using System.Text; public sealed class ListaEnlazada { static readonly string filepath = Path.Combine(Path.GetTempPath, "frases.txt"); public static void Write() { Console.WriteLine(string.Format("Escriba palabras que se guardaran en un archivo llamado '{0}'", Path.GetFileName(filepath))); string inputText = null; using (StreamWriter sw = new StreamWriter (filepath, append : false, encoding : Encoding .Default)) { inputText = Console.ReadLine(); while (!(string.IsNullOrEmpty(inputText))) { sw.WriteLine(inputText); inputText = Console.ReadLine(); } } } public static void Read() { // NOTA: // Puedes simplificar todo este bloque en una sola instrucción: // Console.Write(File.ReadAllText(filepath, encoding: Encoding.Default)); using (StreamReader sr = new StreamReader (filepath, encoding : Encoding .Default)) { while (!(sr.EndOfStream)) { Console.WriteLine(sr.ReadLine()); } } } public static void Wait() { Console.WriteLine("Oprima una tecla para continuar..."); Console.ReadKey(); } } //======================================================= //Service provided by Telerik (www.telerik.com) //=======================================================
Saludos
|
|
|
5909
|
Sistemas Operativos / Windows / Re: mi pc anada muy lento
|
en: 25 Enero 2015, 01:52 am
|
la ruta del programa bsr.exe es C:\Program Files (x86)\CyberLink\Shared files no se paraa que es. Está relacionado con algún producto de la compañia CyberLink, como PowerDVD, Power Media Player, etc, pero si está en esa carpeta entonces más bien será algún servicio en segundo plano que seguramente realiza un consumo de recursos innecesarios, quizás sería mejor para ti prevenir su ejecución para no empeorar más el rendimiento de tu PC.
Desmarca la casilla de "heuristica avanzada", de formma permanentemente, al menos mientras tu PC esté en el estado actual. ¿Que si es una característica necesaria?, bueno, es un extra de seguridad, siempre viene bien, pero tiene sus inconvenientes (vuelve lento al SO), tu decides. ese malwarebytes es el que usas? esta seguro que deberia cambiar mi antivirus? Si, es el que yo utilizo, o mejor dicho es mi AV principal, ya que lo uso junto a otros programas relacionados que no requieren instalación. Yo me lo cambiaría, si, por el AV que sea menos NOD32 (y digo esto despues de haberlo usado unos 5 años continuamente como AV principal), pero dejando a un lado mis preferencias y mi odio por el consumo de recursos de ESET, creo que como mínimo debes downgradearte el producto, no porque sea peor usar SmartSecurity, sino porque la situación lo requiere, ya que estás usando una suite de seguridad con más características (que yo considero innecesarias) y eso consume más recursos que si solamente utilizases el NOD32. así que simplemente podrías desinstalarte el Smartsecurity e instalar el antivirus ESET NOD32, seguro que notarás una mejora (por leve que sea) del rendmiento. De todas formas creo que estamos desviando el tema, no se trata de que AV usar, se trata de si es el AV el que está provocando ese colapso de I/O en tu PC, y eso es algo que puedes averiguar desinstalándote el SmartSecurity y viendo si despues de eso te sigue funcionando lento tras reiniciar el PC, ¡así de simple! , si ves que estaba equivocado, lo vuelves a instalar. EDITO: Se me olvidaba comentar que aparentemente no tienes ningún escaneo de archivos programado. EDITO 2: Si te ves capacitado con los suficientes conocimientos entonces también deberías administrar los servicios que se ejecutan al inicio de Windows, para desactivar los innecesarios (ej: Fax, Windows Media Player, Hyper-V, Indexación, ¿CyberLink-PowerDVD?, etc), ya que cuantos más servicios mayor será el consumo de recursos, escribe en consola: Otra cosa que deberías hacer es asegurarte de que tu disco duro principal tiene un espacio libre mayor del 20% (por la fragmentación de los archivos). Y realizar una limpieza con CCLeaner. Son muhas cosas más las que podrías optimizar aparte, pero bueno, creo que es suficiente. Saludos!
|
|
|
5910
|
Programación / .NET (C#, VB.NET, ASP) / Re: Problema con el control webbrowser
|
en: 25 Enero 2015, 01:15 am
|
Sinceramente, jamás vi este tipo de comportamiento en una aplicación, de todas formas hay varios bugs conocidos sobre la pérdida de foco de un WebBrowser (los cuales Microsoft no ha arreglado en años, ni pensará en hacerlo), y esto parece ser más o menos algo similar, ya que el WebBrowser se activa automaticamente o hace que el form se reactive tras minimizarlo, creo que quizás has descubierto o re-descubierto un bug con el WebBrowser que se da en circunstancias muy específicas (las cuales desconozco), de alguna manera esa url tambien debe estar involucrada, ¿pero cómo?, ¡no lo se!. Bueno, tras investigar un poco el código he averiguado varias cosas sin sentido 1) La propiedad Dock del WebBrowser es lo que entra en conflicto con el Form, mientras el valor de la propiedad Dock sea Fill, el form se reactivará al minimizarlo, y no sirve de nada insertar el WebBrowser en un panel, o añadir márgenes en el Form (superponer o sobreponer el webbrowser), ni nada similar. 2) Así pues, si no quieres que la ventana del form se auto-restaure, primero debes desactivar el Docking del WebBrowser (cambiarlo de Fill a None), y viceversa al restaurar la ventana del Form, (de None a Fill) pero he aquí otro problema que también has descubierto, no sirve de nada suscribirse a los eventos Size/Resize del Form (ni tampoco del WebBrowser) para intentar hacer esas modificaciones. 3) El problema desaparece si instancias el Form en tiempo de ejecución, en vez de añadir el control en tiempo de diseño. Esa sería una solución. ( Ambos WebBrowsers usando el mismo docking, pero el problema desaparece, ¡no tiene sentido! ) Al final he optado por procesar los mensajes de la ventana usando el procedimiento WndProc, pero vaya mi sorpresa fue descubrir que ¡modificar el Docking del webbrowser justo al procesar el mensaje de minimizado tampoco tiene ningún efecto! (mientras que si lo haces antes, si que surge efecto). Pero por suerte, descubrí que era suficiente con modificar la visibilidad del WebBrowser, aunque solo tiene efecto si la modificas al procesar los mensajes de la ventana del Form. Solución: Public Class Form1 Dim WithEvents wb As WebBrowser = Me.WebBrowser1 Public Enum WindowsMessages As Integer ' MSDN Documentation: ' https://msdn.microsoft.com/en-us/library/windows/desktop/ms646360%28v=vs.85%29.aspx ''' <summary> ''' A window receives this message when the user chooses the maximize button, minimize button, restore button, or close button. ''' </summary> WM_SYSCOMMAND = &H112I End Enum Public Enum wParams As Integer ' MSDN Documentation: ' https://msdn.microsoft.com/en-us/library/windows/desktop/ms646360%28v=vs.85%29.aspx ''' <summary> ''' Minimizes the window. ''' </summary> SC_MINIMIZE = &HF020I ''' <summary> ''' Restores the window to its normal position and size. ''' </summary> SC_RESTORE = &HF120I End Enum Private Sub Form1_Load(sender As Object, e As EventArgs) Handles Me.Load ' MyBase.Controls.Add(Me.wb) With Me.wb .Dock = DockStyle.Fill .Navigate("http://144.76.33.166:443/?0,2,0,15,0&nn=hello") End With End Sub ''' <summary> ''' Invokes the default window procedure associated with this window to process messages. ''' </summary> ''' <param name="m"> ''' A <see cref="T:System.Windows.Forms.Message"/> that is associated with the current Windows message. ''' </param> Protected Overrides Sub WndProc(ByRef m As Message) If m.Msg = WindowsMessages.WM_SYSCOMMAND Then Select Case m.WParam.ToInt32 Case wParams.SC_MINIMIZE Me.wb.Visible = False Case wParams.SC_RESTORE Me.wb.Visible = True Case Else ' Do Nothing End Select End If ' Return Message to base message handler. MyBase.WndProc(m) End Sub End Class
Saludos
|
|
|
|
|
|
|