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

 

 


Tema destacado: Recuerda que debes registrarte en el foro para poder participar (preguntar y responder)


  Mostrar Mensajes
Páginas: 1 ... 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 [64] 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80
631  Foros Generales / Dudas Generales / Si cuelgas algo, hay error, eliminas y lo quieres volver a colgar ya no puedes en: 6 Julio 2015, 21:50 pm
Hola
Me he dado cuenta que hay algunas páginas en la que si cuelgas algo, lo eliminas porque has detectado algún error y luego lo corriges y lo quieres volver a colgar, ya no puedes.

Me ha pasado en Yahoo y Youtube.

Colgué un video, detecté un error. Eliminé el vídeo. Corregí el error  y volví a intentar colgar el vídeo pero no hubo manera.

En los artículos de de Yahoo noticias, hay comentarios. Escribes uno, lo eliminas porque encuentras un error, pero si lo quieres volver a colgar ya no puedes.

¿Por qué?

Lo del vídeo me ha fastidiado mucho porque me ha costado mucho hacerlo

632  Programación / .NET (C#, VB.NET, ASP) / Re: Obtener porcentaje de descarga desde un módulo en: 3 Julio 2015, 14:18 pm
 ;D
La verdad es que en muchos casos en .NET no tengo ni idea de lo que hago, solo se que esto o lo otro funciona o hace esto o  aquello. En fin que hace lo que yo quiero.

Voy a aclarar algunos puntos.
A. No soy programador, solo aficionado. No trabajo para ninguna empresa ni tengo intención de ello, ni creo que pueda.

B. Acabo de empezar con VB.NET hace como un par de meses o tres, más o menos. Empecé tonteando un poco para adaptarme al entorno, del cual solo he usado seguramente como el 2% de lo que tiene.

C. No soy "programador" de escuela, ni de libro, es decir, no estudio la teoría, aprendo de forma empírica. Quiero hacer algo y busco la forma. Muchas veces es a base de prueba y error. Por supuesto entiendo conceptos como array, bucles, funciones, eventos, etc. y leo definiciones, que muchas veces tengo que decirlo no las entiendo. Por ejemplo, hace unos días pregunté sobre el operador XOR porque por la definición del MSDN no entendía ni papa. Pero afortunadamente dos usuarios respondieron de forma fantástica y pude entenderlo.

D.
Código
  1. ¿Ese es el código completo que estás utilizando?

Me gusta programar por bloques, algo así como una conexión en red pero de código. No me gusta mezclarlo todo, porque en el momento que se me ocurre algo y quiero hacer una modificación, puede resultar o bien que  la modificación produzca un error que me obliga a modificar todo  o empezar casi desde el principio por incompatibilidad o bien haya pasado tanto tiempo desde que revisé el código que ya no recuerdo ni lo que hice y no se lo que hacía esto o aquello, sobre todo con códigos muy grandes.
También facilita y agiliza la creación  de programas pues solo tengo que hacer un copia y pega. Tengo cientos de plantillas de código simple y ejemplos sólo de VB, los cuales hacen lo básico y lo importante. Por supuesto son modificables y ajustables  a la necesidades del programa.
Y por supuesto mi me memoria es pésima, cuando dejo de usar algo se me olvida, y es muy práctico tener un código de ejemplo para cuando lo necesite.

El código que he puesto NO es el programa que estoy haciendo, tan sólo quiero hacer como he dicho un bloque de código independiente que me va a servir para el programa o para futuros programas.  Tan sólo quiero:

Form1 (o cualquier otro, o módulo)
▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
-Llama a la función y la URL
-Recibir información de descarga mientras se produce
-Opción cancelar
▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
               ▲
                •
                •
                •
               ▼
Bloque de código aparte
▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
- Función de descarga con la URL  
- Obtener información de descarga
▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀

Por lo tanto como ejemplo y como base, tan solo necesito un label el cual va a recibir la información del porcentaje, todo lo demás es irrelevante.

A veces encuentro en la red, que gente pone ejemplos supercomplejos, casi programas completos, con variables incomprensibles,  por ejemplo como usar un Listview, y en lugar de decir para crear columnas, tal, para introducir filas, tal, para esto tal. Pues te ponen un entramado inconprensible que tienes que ir desglosando. Lo cual dificulta el aprendizaje de aquellos que están aprendiendo y solo buscan algo muy concreto. Además, no todos somos unos gurús de la informática. Esto me ha pasado especialmente, buscando información sobre GDI, que siempre aparecen ejemplo de programas completos y bastante complejos. Hace poco modifiqué un programa de Leandro (no se qué) que semitransparenta un Form de modo que se vean nítidamente los controlos y demás pero el fondo del form sea semitransparente. Pero tengo que decir que no comprendo el código completo. Tuve que modificarlo porque su código degradaba el form en dos colores sin opción o propiedad 'set' para cambiar dichos colores o ponerlo todo a un solo color. También hace poco también puse un ejemplo muy sencillo para convertir una imagen en blanco y negro con GDI. Poniendo lo básico, sin florituras.
 
Estas cosas:
AddHandler, Task, WithEvents, RaiseEvent ,IsNullOrWhiteSpace, InvokeRequired

todavía no se como van, es nuevo para mí, tendré que mirar uno por uno para poder entender el código y conseguir lo que busco.

Intentaré conseguir lo más básico y simple posible y luego lo colgaré.

Sl2



 

633  Programación / .NET (C#, VB.NET, ASP) / Re: Obtener porcentaje de descarga desde un módulo en: 2 Julio 2015, 20:38 pm
Eres un maestro

Lo que busco es tan simple como esto, y te juro que el label se queda en blanco, la verdad que no lo entiendo

Código
  1. Public Class Form1
  2.  
  3.    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
  4.        Dim ns As New modDownloadURL
  5.        ns.DownLoadFileInBackground2("http://3.bp.blogspot.com/-08K8K-44ouk/VYg40YxJvxI/AAAAAAAAARw/wrLQDfGDW-8/s1600/OKIK2.gif", _
  6. "E:\jk.gif")
  7.        Label1.Text = ns.getProgress
  8.    End Sub
  9. End Class
  10.  
  11. Class modDownloadURL
  12.    Public Progress As Object
  13.    Private Sub DownloadProgressCallback(ByVal sender As Object, _
  14. ByVal e As System.Net.DownloadProgressChangedEventArgs)
  15.        Dim intBytes As Double = Double.Parse(e.BytesReceived.ToString()) 'Bytes recibidos
  16.        Dim AllBytes As Double = Double.Parse(e.TotalBytesToReceive.ToString()) 'Total bytes recibidos
  17.        Dim percentage As Double = intBytes / AllBytes * 100
  18.        Progress = (e.ProgressPercentage & (" %"))
  19.    End Sub
  20.    Private Sub Client_DownloadCompleted(ByVal sender As Object, _
  21. ByVal e As System.ComponentModel.AsyncCompletedEventArgs)
  22.        MessageBox.Show("Descarga completada")
  23.    End Sub
  24.  
  25.    Public Sub DownLoadFileInBackground2(ByVal address As String, _
  26. ByVal strDirFile As String)
  27.        Dim Client As System.Net.WebClient = New System.Net.WebClient()
  28.        AddHandler Client.DownloadProgressChanged, AddressOf DownloadProgressCallback
  29.        AddHandler Client.DownloadFileCompleted, AddressOf Client_DownloadCompleted
  30.        Dim uri As Uri = New Uri(address)
  31.        Client.DownloadFileAsync(uri, strDirFile)
  32.    End Sub
  33.    ReadOnly Property getProgress() As String
  34.        Get
  35.            Return Progress
  36.        End Get
  37.    End Property
  38.  
  39. End Class

Me ha gustado tu opción de cancelar, también buscaba eso...
634  Programación / .NET (C#, VB.NET, ASP) / Re: Obtener porcentaje de descarga desde un módulo en: 2 Julio 2015, 00:32 am
Hola
Gracias por el código, funciona bien, pero no he conseguido que haga lo siguiente, ni aún añadiendo el opcional. Quizás es que no lo utilizo bien.

Lo que yo quería era pasar el porcentaje  a la variable Progress, para luego desde el Form capturar la información de esa variable y mostrarlo en un Label mientras se produce la descarta y en tiempo real, desde el evento Click. Pero pasa que  el label se queda en blanco. Tan solo muestra la información cuando hago esto, desde el módulo. Sustituyendo directamente la variable Progress por el control Label

Código
  1. Private Sub DownloadProgressCallback(ByVal sender As Object, ByVal e As DownloadProgressChangedEventArgs)
  2.        Dim intBytes As Double = Double.Parse(e.BytesReceived.ToString()) 'Bytes recibidos
  3.        Dim AllBytes As Double = Double.Parse(e.TotalBytesToReceive.ToString()) 'Total bytes recibidos
  4.        Dim percentage As Double = intBytes / AllBytes * 100
  5.       Form1.Label1.text = CStr(e.ProgressPercentage & (" %"))
  6.    End Sub

Con tu código quedaría así:

Código
  1.    Private Sub WC_DownloadProgressChanged(ByVal sender As Object, ByVal e As DownloadProgressChangedEventArgs) Handles wc.DownloadProgressChanged
  2.        If Not e.ProgressPercentage = 100 Then
  3.            Form1.Label1.Text = String.Format("Progress: {0}", ((e.BytesReceived / e.TotalBytesToReceive) * 100.0R).ToString(format:="00.00 \%"))
  4.        End If
  5.    End Sub

Pero lo extraño es que la el porcentaje se para en 94%, 89%, etc. Nunca en 100%, aunque el archivo se descargue por completo. He usado el url de un archivo pequeño (el de mi avatar, el gif).

Queda corregido sustituyendo 100 por 101
Código
  1. Not e.ProgressPercentage = 101

Probaré mañana, si puedo, creando un módulo de clase. Con la propiedad Get, creo que debería funcionar.

La idea es crear una función de código independiente y aparte sin tener que estar modificando dicho código para que devuelva la información de descarga a un determinado control.

Sl2
635  Programación / .NET (C#, VB.NET, ASP) / Obtener porcentaje de descarga desde un módulo en: 1 Julio 2015, 19:18 pm
Hola,

Pues aquí otra nueva duda.

No me gusta cargar demasiado de código el Form1, así que suelo poner las funciones por separado en módulos, o en módulos de clases.  El caso es que tengo un código de descarga de archivos desde un módulo y no consigo mostrar el proceso de descarga desde él.

Código
  1. Imports System.Net
  2. Module modDownloadURL
  3.    Public Progress As String
  4.    Private Sub DownloadProgressCallback(ByVal sender As Object, ByVal e As DownloadProgressChangedEventArgs)
  5.        Dim intBytes As Double = Double.Parse(e.BytesReceived.ToString()) 'Bytes recibidos
  6.        Dim AllBytes As Double = Double.Parse(e.TotalBytesToReceive.ToString()) 'Total bytes recibidos
  7.        Dim percentage As Double = intBytes / AllBytes * 100
  8.        Progress = CStr(e.ProgressPercentage & (" %"))
  9.    End Sub
  10.    Private Sub Client_DownloadCompleted(ByVal sender As Object, ByVal e As System.ComponentModel.AsyncCompletedEventArgs)
  11.        MessageBox.Show("Descarga completada")
  12.    End Sub
  13.  
  14.    Public Sub DownLoadFileInBackground2(ByVal address As String, ByVal strDirFile As String)
  15.        Dim Client As WebClient = New WebClient()
  16.        AddHandler Client.DownloadProgressChanged, AddressOf DownloadProgressCallback
  17.        AddHandler Client.DownloadFileCompleted, AddressOf client_DownloadCompleted
  18.        Dim uri As Uri = New Uri(address)
  19.        Client.DownloadFileAsync(uri, strDirFile)
  20.    End Sub
  21. End Module
  22.  

El porcentaje se carga en la variable string Progress  , y desde un botón en el formulario llamo a DownLoadFileInBackground2(url, [Dir+Namefile]) para descargar el archivo

Gracias

636  Sistemas Operativos / GNU/Linux / Re: Dónde se supone que está el enlace de descarga de esta app para Ubuntu en: 1 Julio 2015, 17:22 pm
Gracias Gh057,

Pero ahora, ¿como instalo Gdebi, sin Gdebi?

bueno, seguramente soy yo y no Ubuntu... A ver si alguien me puede ofrecer alguna alternativa que no sea Ubuntu, otro SO Linux, en el que pueda instalar sin problemas aunque sea desde la terminal, sin conexión a la red y no tenga que ir buscando programas que sean exclusivamente para mi SO, ni tenga problemas de dependencias. En fin, reguramente es mucho pedir.

Lo de la terminal, bueno siempre me falla, que si no hay esto, que sin no está eso otro, que si falta tal o cual, en fin.

Sl2
637  Sistemas Operativos / GNU/Linux / Re: Dónde se supone que está el enlace de descarga de esta app para Ubuntu en: 1 Julio 2015, 15:21 pm
Lo encontré aquí:

http://ftp.ch.debian.org

Ahora falta que funcione.

Per por el tamaño de los paquetes, me da que no van a instalar un porra, pues seguro que son enlaces para instalarse con conexión a la red.  :¬¬

638  Sistemas Operativos / GNU/Linux / Re: Dónde se supone que está el enlace de descarga de esta app para Ubuntu en: 1 Julio 2015, 15:04 pm


Te lleva a apt://kalzium , que abre automáticamente el Software Centre de Ubuntu..

Saludos



Hola, gracias.

Es que como estaba escribiendo arriba mientras tu colgabas la respuesta, detecta el sistema desde el que he entrado en la web y a mi no me sale porque he entrado desde windows

No se quien ha hecho la web, pero me parece una tontería

lo malo de Ubuntu es que te obliga si o sí a tener conexión a la red
639  Sistemas Operativos / GNU/Linux / Dónde se supone que está el enlace de descarga de esta app para Ubuntu en: 1 Julio 2015, 15:00 pm
https://apps.ubuntu.com/cat/applications/saucy/kalzium/

Que timo de página :(



Presupongo que la Web detecta si tienes instalado Ubuntu o no si no es así te pone el enlace para bajerte Ubuntu.

Pero es que precisamente tengo instalada Ubuntu en un PC sin conexión en otro lugar.
640  Programación / .NET (C#, VB.NET, ASP) / Re: Cuál es la lógica del operador XOR en: 29 Junio 2015, 19:27 pm
Huy lindo ejemplo... XD trataré de ampliarlo:

si A es 5 (base 10) -> 101 (2)
si B es 6 (base 10) -> 110 (2)

entonces si A = A XOR B
101
110
----
011 (lo almacenas en A)

idem si B = A XOR B
011
110
----
101 (lo almacenas en B)

ahora bien, si haces nuevamente A = A XOR B...
011
101
----
110

Entonces... ahora A será 110 o sea 6, y B 101, que equivalea  5 en decimal. XD

Te recomiendo leer sobre el tema, antes de seguir con la parte práctica. Cualquier consulta, si puedo intentaré responderla. Un cordial saludo.

Ahora mismo estaba yo descomponiendo mi ejemplo como lo has hecho tú, la verdad es que visto así se ve claro. Pero de todos modos hay que ser un poco lumbreras para tirar por ese camino, o por lo menos tener mucha práctica.


Gracias de nuevo a los dos.

Páginas: 1 ... 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 [64] 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines