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

 

 


Tema destacado: Rompecabezas de Bitcoin, Medio millón USD en premios


  Mostrar Mensajes
Páginas: 1 ... 541 542 543 544 545 546 547 548 549 550 551 552 553 554 555 [556] 557 558 559 560 561 562 563 564 565 566 567 568 569 570 571 ... 1236
5551  Programación / .NET (C#, VB.NET, ASP) / Re: Problema en c# con lectura y escritura en un archivo de texto en: 4 Abril 2015, 01:11 am
No vas del todo mal encaminado, aunque también podrías hacerlo con una pila de caracteres.

Te muestro una posible solución siguiendo el enfoque que le has dado, puedes trasladarlo a tu aplicación de consola.

VB.Net:
Código
  1. Imports System.IO
  2. Imports System.Text
  3. Imports System.Threading.Interlocked
  4. Imports System.Threading.Thread
  5.  
  6. Public Class Form1
  7.  
  8.    Private Sub Test() Handles MyBase.Shown
  9.  
  10.        Writer(sourceFilepath:="C:\Source.txt",
  11.               targetFilepath:="C:\Target.txt",
  12.               maxChars:=15,
  13.               sleepCount:=3,
  14.               sleepInterval:=5 * 1000)
  15.  
  16.    End Sub
  17.  
  18.    Public Sub Writer(ByVal sourceFilepath As String,
  19.                      ByVal targetFilepath As String,
  20.                      ByVal maxChars As Integer,
  21.                      ByVal sleepCount As Integer,
  22.                      ByVal sleepInterval As Integer)
  23.  
  24.        Dim cloneSleepCount As Integer = sleepCount
  25.  
  26.        Dim charCount As Integer = -1
  27.        Dim sr As StringReader = New StringReader(File.ReadAllText(sourceFilepath, Encoding.Default))
  28.        Dim sw As New StringWriter
  29.  
  30.        Do Until (sr.Peek = -1)
  31.  
  32.            sw.Write(Convert.ToChar(sr.Read))
  33.  
  34.            If (Increment(charCount) = maxChars) OrElse (sr.Peek = -1) Then
  35.  
  36.                If Decrement(cloneSleepCount) = 0 Then
  37.                    Debug.WriteLine(String.Format("Deteniendo por {0} ms...", sleepInterval))
  38.                    Sleep(sleepInterval)
  39.                    cloneSleepCount = sleepCount - 1
  40.                End If
  41.  
  42.                Debug.WriteLine(String.Format("Copiando {0} caracteres: '{1}'", charCount, sw.ToString))
  43.                File.AppendAllText(targetFilepath, sw.ToString, Encoding.Default)
  44.  
  45.                charCount = -1
  46.                sw.GetStringBuilder.Clear()
  47.  
  48.            End If
  49.  
  50.        Loop
  51.  
  52.        sr.Close()
  53.        sw.Close()
  54.        Debug.WriteLine("Copia terminada.")
  55.  
  56.    End Sub
  57.  
  58. End Class

Traducción online a C#:
Código
  1. using System;
  2. using System.Diagnostics;
  3. using System.IO;
  4. using System.Text;
  5. using System.Threading.Interlocked;
  6. using System.Threading.Thread;
  7.  
  8. public class Form1
  9. {
  10.  
  11. private void Test()
  12. {
  13. Writer(sourceFilepath: "C:\\Source.txt", targetFilepath: "C:\\Target.txt", maxChars: 15, sleepCount: 3, sleepInterval: 5 * 1000);
  14. }
  15.  
  16. public void Writer(string sourceFilepath, string targetFilepath, int maxChars, int sleepCount, int sleepInterval)
  17. {
  18. int cloneSleepCount = sleepCount;
  19.  
  20. int charCount = -1;
  21. StringReader sr = new StringReader(File.ReadAllText(sourceFilepath, Encoding.Default));
  22. StringWriter sw = new StringWriter();
  23.  
  24. while (!((sr.Peek == -1))) {
  25.  
  26. sw.Write(Convert.ToChar(sr.Read));
  27.  
  28. if ((Increment(charCount) == maxChars) || (sr.Peek == -1)) {
  29.  
  30. if (Decrement(cloneSleepCount) == 0) {
  31. Debug.WriteLine(string.Format("Deteniendo por {0} ms...", sleepInterval));
  32. Sleep(sleepInterval);
  33. cloneSleepCount = sleepCount - 1;
  34. }
  35.  
  36. Debug.WriteLine(string.Format("Copiando {0} caracteres: '{1}'", charCount, sw.ToString));
  37. File.AppendAllText(targetFilepath, sw.ToString, Encoding.Default);
  38.  
  39. charCount = -1;
  40. sw.GetStringBuilder.Clear();
  41. }
  42. }
  43.  
  44. sr.Close();
  45. sw.Close();
  46. Debug.WriteLine("Copia terminada.");
  47. }
  48. }
  49.  
  50. //=======================================================
  51. //Service provided by Telerik (www.telerik.com)
  52. //=======================================================

Saludos
5552  Foros Generales / Foro Libre / Re: poner vbs en msconfig? en: 3 Abril 2015, 19:43 pm
para hacer otra pregunta tengo que hacer otro tema?

Tampoco es que esto se rija por unas reglas super estrictas, simplemente si la pregunta no está relacionada con el tema principal entonces deberías crear un nuevo post.

hay alguna shell ejecutable que me recomiendes? es para pasar datos de una pc a otra en internet...

Desde la CMD, con el comando Copy/XCopy puedes transferir archivos por la red local.

También puedes utilizar alguna implementación commandline del protocolo Telnet o SSH, cómo por ejemplo PSCP (Putty Secure Copy Client):
http://www.openssh.com/windows.html

Yo no he utilizado mucho este tipo de aplicaiones por no tener la necesidad, así que no se recomendarte "el mejor".

Saludos
5553  Foros Generales / Foro Libre / Re: poner vbs en msconfig? en: 3 Abril 2015, 19:13 pm
Bienvenido al foro.

Hay una sección de Scripting que es donde deberías formular preguntas de este tipo.

Se puede hacer, solo tienes que agregar el valor de registro correspondiente para iniciar el "intérprete" de VBS, pasándole cómo argumento la ubicación del script, tal que así:

Código:
WScript.exe "C:\script.vbs"

o también:
Código:
CScript.exe "C:\script.vbs"

(dependiendo de tus necesidades)

Saludos
5554  Foros Generales / Foro Libre / Re: ¿Alguien se vería capaz? en: 3 Abril 2015, 19:09 pm
Elektro: Lo que dice Karen Hudes no es mas que la realidad ya conocida.. las corporaciones manejan el mundo, y estas actúan para su propio beneficio.. El banco mundial presta dinero, y después hay que pagarlo.. que tenga relacion uno con otro es de esperarse..

Bueno, Karen Hudes dice más que eso, ella afirma que los "magnates" del banco mundial son reptilianos xD, algo que no resulta nada sensato de creer, pero por otro lado tambien es sentato dudar y hacerse la siguiente pregunta...
¿Qué necesidad tiene de mentir una persona a la que no le flata nada economicamente? (recordemos que trabajaba en ese banco, y según parece perdió su trabajo por afirmar eso).

Solo quería aclarar el dato, no pretendo desvirtuar el tema principal.

Saludos!
5555  Programación / .NET (C#, VB.NET, ASP) / Re: Acceso a un controlador desde otro hilo ? en: 3 Abril 2015, 18:38 pm
¿A que diferencia te refieres exactamente?.

En ambos códigos el tuyo y el de aquella url se llama al mismo método 'Windows.Forms.Control.InvokeRequired' y 'Windows.Forms.Control.Invoke', le pasas el delegado y al compilar se generan las mismas instrucciones IL que internamente determinan lo mismo, hallar el handle del control/form para descubrir a que thread pertenece.

No hay diferencia alguna en lo que se refiere a eficiencia, tampoco por que le pases un delegado con la referencia del método o una expresión lambda.

Ahora, deberías seguir los ejemplos de buenos hábitos, es decir, invocar el control y no el form (aunque eso no afecta para nada al rendimiento pero puede resultar en confusión), y ademas añadir una verificación antes de invocarlo:

Ejemplo en VB.Net
Código
  1. Dim msg As String = "" & ComboBox1.SelectedItem() ' No es necesario invocar para leer.
  2.  
  3. Select Case Me.TextBox1.InvokeRequired
  4.  
  5.  Case True ' Invoco para modificar la propiedad.
  6.      Me.TextBox1.Invoke(Sub() Me.TextBox1.Text = msg)
  7.  
  8.  Case Else
  9.      Me.TextBox1.Text = msg
  10.  
  11. End Select

Traducción online a C#:
Código
  1. string msg = "" + ComboBox1.SelectedItem(); // No es necesario invocar para leer.
  2.  
  3. switch (this.TextBox1.InvokeRequired) {
  4.  
  5. case true: // Invoco para modificar la propiedad.
  6. this.TextBox1.Invoke(() => this.TextBox1.Text == msg);
  7. break;
  8.  
  9. default:
  10. this.TextBox1.Text = msg;
  11. break;
  12. }

Si quieres reducir el código para no tener que estar escribiendo siempre lo mismo, puedes desarrollar un método genérico cómo este:

Código
  1.    ''' <remarks>
  2.    ''' *****************************************************************
  3.    ''' Snippet Title: Control Invoker
  4.    ''' Code's Author: Elektro
  5.    ''' Date Modified: 03-April-2015
  6.    ''' Usage Example:
  7.    ''' ControlInvoker(TextBox1, Sub(tb) tb.Text = "Hello World!")
  8.    '''
  9.    ''' ControlInvoker(TextBox1, Sub(tb As TextBox)
  10.    '''                              For x As Integer = 0 To 5
  11.    '''                                  tb.AppendText(CStr(x))
  12.    '''                              Next x
  13.    '''                          End Sub)
  14.    ''' *****************************************************************
  15.    ''' </remarks>
  16.    ''' <summary>
  17.    ''' Executes an encapsulated method on the thread that owns the specified control.
  18.    ''' </summary>
  19.    ''' <typeparam name="T"></typeparam>
  20.    ''' <param name="ctrl">The control to invoke.</param>
  21.    ''' <param name="method">The encapsulated method to be called.</param>
  22.    Public Sub ControlInvoker(Of T As Control)(ByVal ctrl As T, ByVal method As Action(Of T))
  23.  
  24.        If ctrl.InvokeRequired Then
  25.            ctrl.Invoke(New Action(Of T, Action(Of T))(AddressOf ControlInvoker), ctrl, method)
  26.  
  27.        Else
  28.            method(ctrl)
  29.  
  30.        End If
  31.  
  32.    End Sub

Traducción online a C#:
Código
  1. /// <remarks>
  2. /// *****************************************************************
  3. /// Snippet Title: Control Invoker
  4. /// Code's Author: Elektro
  5. /// Date Modified: 03-April-2015
  6. /// Usage Example:
  7. /// ControlInvoker(TextBox1, Sub(tb) tb.Text = "Hello World!")
  8. ///
  9. /// ControlInvoker(TextBox1, Sub(tb As TextBox)
  10. ///                              For x As Integer = 0 To 5
  11. ///                                  tb.AppendText(CStr(x))
  12. ///                              Next x
  13. ///                          End Sub)
  14. /// *****************************************************************
  15. /// </remarks>
  16. /// <summary>
  17. /// Executes an encapsulated method on the thread that owns the specified control.
  18. /// </summary>
  19. /// <typeparam name="T"></typeparam>
  20. /// <param name="ctrl">The control to invoke.</param>
  21. /// <param name="method">The encapsulated method to be called.</param>
  22.  
  23. public void ControlInvoker<T>(T ctrl, Action<T> method) where T : Control
  24. {
  25. if (ctrl.InvokeRequired) {
  26. ctrl.Invoke(new Action<T, Action<T>>(ControlInvoker), ctrl, method);
  27.  
  28. } else {
  29. method(ctrl);
  30.  
  31. }
  32.  
  33. }

Ejemplos de uso en VB.Net
Código
  1. ControlInvoker(TextBox1, Sub(tb) tb.Text = "Hello World!")

Código
  1. ControlInvoker(TextBox1, Sub(tb As TextBox)
  2.                          For x As Integer = 0 To 5
  3.                              tb.AppendText(CStr(x))
  4.                          Next x
  5.                      End Sub)

Traducción online a C#:
Código
  1. ControlInvoker(TextBox1, tb => tb.Text == "Hello World!");

Código
  1. ControlInvoker(TextBox1, (TextBox tb) =>
  2. {
  3. for (int x = 0; x <= 5; x++) {
  4. tb.AppendText(Convert.ToString(x));
  5. }
  6. })

Saludos.
5556  Foros Generales / Foro Libre / Re: en: 3 Abril 2015, 16:13 pm
"Ver cosas que pueden incitar a suicidarte."
Vaya por Dios, la gente escucha 'deep web' y ya se pone a inventar cosas xD

Lo más curioso es lo de que algunos lo llaman "Zion", ¿así es cómo se llamaba la ciudad de Matrix, no?, imagino que va por ahí el tema,
es decir, que si entras al nivel "Zion" sales con revelaciones abrumadoras del gobierno y la humanidad, cómo las ""revelaciones"" de Karen Hudes,
mujer que se adentró en las profundidades de la economía a trabajar en uno de los bancos más grandes e importantes del mundo y descubrió un secreto que cambió su vida... si quieren conocer el resto, busquen sobre ella.

Ahí lo dejo.
5557  Foros Generales / Dudas Generales / Re: descargar cd/peli/juego en: 3 Abril 2015, 15:29 pm
Un CD de música cómo tal no lo vas a encontrar gratis, por que un CD de música es un producto comercial (no hablo de los artistas que se graban sus maquetas en un CD y si eres amigo ya tienes tú CD gratis, ni tonterías que no vengan al caso).

Si solo quieres escuchar (que no adquirir) de forma gratuita un CD comercial, entonces puedes acudir a cualquier servicio de venta online (ej: BeatPort), siempre hay muestras de todas las canciones de los CD's, aunque obviamente eso no es lo que entendemos por GRATIS, eso no existe.

Juegos gratuitos hay muchísimos, la tendencia es desarrollar mini-juegos en Flash y publicarlos gratuitamente, no cuesta nada encontrarlos con una simple búsqueda en Google, ¿cual es el problema?.

Saludos!
5558  Foros Generales / Dudas Generales / Re: descargar cd/peli/juego en: 3 Abril 2015, 14:23 pm
¿películas, juegos, y álbumes de música sin derechos de autor y gratuitos?, no le encuentro sentido a la pregunta, precisamente un producto comercial implica imponer un precio por beneficios y por gastos de fabricación, así cómo unos derechos de autor, entre otras cosas.

Ahora, que la compañia quiebre y se pierdan o ignore su copyright es algo muy distinto, en lo referente a juegos (y software en general), a este tipo de productos se les denomina "AbandonWare", puedes encontrar infinidad de páginas con juegos abandonware en Google.

No se si te estás refiriendo eso, o simplemente a software de tipo FreeWare.

Saludos!
5559  Foros Generales / Noticias / Re: Usuarios de Yelp bombardean pizzería antigay con malas reseñas en: 3 Abril 2015, 12:17 pm
Bueno, Elektro, no pretendo desviar el tema o ponerme a favor ni en contra de nadie, pero opino lo mismo en cuanto a gente con con retraso mental.

¿Te refieres a intentar hallar una cura para que no nazcan más personas con defectos mentales, o me estás llamando retrasado xD?, cómo creo conocerte un poquito pensaré que te refieres a lo primero, y claro que sí, yo opino que se debería intentar hacer lo mismo con todo tipo de enfermedades "extrañas" que parecen no tener solución, pero lo que se hace es achacar que "debe ser cosa de la naturaleza, hay que respetarla y no podemos hacer nada", a mi no me parece cosa de la naturaleza que para empezar no sabemos ni que es la naturaleza, lo que si sabemos o deberiamos saber es que por ejemplo si una mujer fuma y bebe mucho alcohol durante el embarazo, el feto puede nacer con defectos físicos, ¿quien dice que con la homosexualidad o los defectos mental no sucede algo parecido?.

elektro *palm face* , en todas las especies mamiferas(entre otras) existe la homosexualidad si eso fuese un impedimento para subsistir el ser humano nunca hubiera surgido. igual muchas otras animales actuales.

¿En serio crees que simplemente por que podemos ver la misma enfermedad afectando a otros animales y de forma muuuucho menos espandida, eso debe justificar la existencia de dicha enfermedad y nuestra situación?, pues vaya.

Si las personas homosexuales naciesen con organos con capacidad de reproducción propia pues me daría igual y asumiría que forma parte de la evolución y, es más, asumiría que es una evolución superior a nosotros puesto que nosotros necesitamos a una mujer para reproducirnos, cómo en muchos otros casos hay especies "auto-suficientes" que se aparean/incuban sin necesidad de una hembra (no recuerdo el nombre científico de esto),

pero el caso es que no es así, la Homosexualidad es una alteración que no lleva a ningún lugar, A NINGUNO, se basa en una necesidad subjetiva, la necesidad y el placer de estar con un hombre, dime tú, ¿cual es el supuesto objetivo de eso?, ¿en que beneficia esto a la evolución de la especie?, EN NADA, se pueden ver los mismos síntomas y consecuencias que provocan los virus, que hacen lo posible por llevar al huespeed/víctima a su perdición y su eliminación/extinción, LO MISMITO se puede ver solo que a una escala menos comprensible, por que a dia de hoy no comprendemos nada acerca de donde está el causante de generar la Homosexualidad ni mucho menos cómo intentar evitar que se genere.

No sé si realmente hay que perdonar a los "homófobos", aunque ellos mismos crean su fobia.

¿Ves?, a esto me referio precisamente, si una persona manifiesta su opinión en contra de algo perjudicial para la humanidad ya te ponen una etiqueta absurda que la mayoría de hetero y homosexuales utilizan cómo insulto y/o cómo escudo protector:

Homofobia: Rechazo obsesivo hacia las personas homosexuales.

¿Que hay de malo en eso?, yo solamente especulo sobre el posible y nefasto futuro de la humanidad, con una buena base evolutiva y una prueba de ello (la Homosexualidad).

Que raro que no exista (no oficialmente) el término "Heterofobia", ¿verdad?, podría ser debido a que la Heterosexualidad no necesita intentar justificar y escudar dicha orientación sexual al ser la correcta, la única que nos permite reproducirnos.

No tengo más que hablar...

Saludos
5560  Programación / .NET (C#, VB.NET, ASP) / Re: SelectedValue para TimeZoneInfo.GetSystemTimeZones() en: 3 Abril 2015, 10:15 am
Buenas

El codigo funciona bien, lo que ocurre es que al asignar el DataSource se dispara el evento SelectedIndexChanged, y fíjate que tú estás asignando el DataSource antes que las propiedades DisplayMember y ValueMember, por ende el evento SelectedIndexChanged se dispara por primera vez sin tener en cuenta los valores que asignas a dichas propiedades y por ese motivo no te devuelve el valor esperado (TimeZoneInfo.Id).

Lo que debes hacer es muy simple, asignar el DataSource lo último, modifica el orden de los factores de la siguiente manera:

Código
  1. cmbZonaHoraria.ValueMember = "Id";
  2. cmbZonaHoraria.DisplayMember = "DisplayName";
  3. cmbZonaHoraria.DataSource = TimeZoneInfo.GetSystemTimeZones();

Saludos
Páginas: 1 ... 541 542 543 544 545 546 547 548 549 550 551 552 553 554 555 [556] 557 558 559 560 561 562 563 564 565 566 567 568 569 570 571 ... 1236
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines