Menú

Mostrar Mensajes

Esta sección te permite ver todos los mensajes escritos por este usuario. Ten en cuenta que sólo puedes ver los mensajes escritos en zonas a las que tienes acceso en este momento.

Mostrar Mensajes Menú

Mensajes - 43H4FH44H45H4CH49H56H45H

#151
Cita de: Hartigan en 27 Agosto 2010, 02:06 AM
Efectivamente ese es mi problema, que no se que hacer o como hacer para que se vayan comprobando las alarmas con el reloj del ordenador para que salten.... porque como compruebo continuamente la fecha y la hora de cada alarma???, la fecha con una vez valdría, si esa es la fecha ya solo tendría que comprobar hasta que se cumpla la hora pero como lo hago???

Solo necesitas un timer:
Código (csharp) [Seleccionar]
private void timer1_Tick(object sender, EventArgs e)
        {
            if (DateTime.Now.DayOfYear == 239 && DateTime.Now.Hour == numericUpDown1.Value && DateTime.Now.Minute == numericUpDown2.Value && DateTime.Now.Second == 00) MessageBox.Show("Alarma");           
        }


Los numericUpDown.Value Serian las variables de Hora y minuto, se comprueba el segundo para que el mensaje salga una sola vez.

Para almacenar las variables, ya sea en una BD u otro, recuerda utilizar las variables de entorno por si el usuario no tiene permisos de administrador.
#152
Asi?

Código (vbnet) [Seleccionar]
Public Class Form1
    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
        MsgBox("Cadena Seleccionada: " & RichTextBox1.SelectedText)
    End Sub
End Class
#153
En el  frmAddItem_Resize colocas:

Código (vbnet) [Seleccionar]
Me.Refresh()

y con eso basta.
#154
Si hubiese un espacio al final de todo el texto se contaria como una palabra mas.
Hace un tiempo hice algo asi para sacar info de archivos de texto, es similar a lo que comento [D4N93R].

Código (vbnet) [Seleccionar]
Imports System.IO
Public Class Form1
    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click

        Dim palabras As Integer = 0
        Dim letras As Integer = 0
        Dim numeros As Integer = 0

        Dim lineas As String() = File.ReadAllLines("C:\1.txt")
        For Each linea As String In lineas
            For Each palabra As String In linea.Split(" ")
                If (palabra.Length > 0) Then
                    palabras = palabras + 1
                    For Each letra As Char In palabra.ToCharArray()
                        If (Asc(letra.ToString()) > 47 And Asc(letra.ToString()) < 58) Then
                            numeros = numeros + 1
                        ElseIf (Asc(letra.ToString()) > 64 And Asc(letra.ToString()) < 123) Then
                            letras = letras + 1
                        End If
                    Next
                End If
            Next
        Next

        Label1.Text = "Palabras: " & palabras & Microsoft.VisualBasic.vbNewLine & "Letras: " & letras & Microsoft.VisualBasic.vbNewLine & "Numeros: " & numeros

    End Sub
End Class
#155
Cita de: D4N93R en 31 Julio 2010, 18:22 PM
43H4FH44H45H4CH49H56H45H, eso también se puede hacer con un proyecto de Setup no? yo ni uso eso xD

Sip, incluso el V.S. 2010 Ultimate trae la opcion de crear un proyecto InstallShield limitado y supongo que es porque InstallShield trae muchas opciones y herramientas que dan un mayor control sobre la instalación, la version profesional es muy buena (la uso mas que la opcion de V.S.).

Cita de: raul338 en 31 Julio 2010, 18:40 PM
[SPAM]Aguante el Inno Setup, tiene flags para verificar si el framework esta instalado o no :P[/SPAM]

Para proyectos pequeños basta y sobra, para grandes no alcanza, solo date una mirada a lo que puede hacer InstallShield y sepas la diferencia  ;D
#156
Cita de: Hartigan en 31 Julio 2010, 13:25 PMSolo tengo un pequeño problema, y esuqe para establecer el valor maximo del progressbar necesito cuantificar el tiempo que tarda el subproceso en acceder a la base de datos... como puedo hacerlo??

Podrias hacer que mientras el hilo este activo vaya subiendo el valor del PB y una vez que acabe el PB tome su valor maximo (no importa el numero maximo, solo depende cuanto aumenta el value en cada cierto tiempo).
Si lo haces de ese modo podrias tener un rango de tiempo de espera para la conexion, si no logra conectarse anulas el proceso.

En otro caso, podrias dividir el maximo del PB entre cada linea de tu code y tb para el for.
Bueno hay mas modos, pero creo que es lo que buscas.
#157
Cita de: linux1 en 31 Julio 2010, 00:10 AM
pero al instalarla en otra pc con windows xp me sale este mensaje

creo yo que es un error por que creo la pc no tiene el .net frameword me gustaria que me lo confirmaran

Una cosa mas, para evitarte las dudas, crea un instalador que verifique si esta instalado el NetFramework que requiere tu programa para continuar la instalación, lo puedes hacer con Installshield.
#158
Pueden ser muchas razones que den el error, te recomendaria que instales Virtual PC para probar tu aplicación en una máquina virtual, porque podria ser problema de tu S.O. o algo más.
#159
Cita de: Hartigan en 30 Julio 2010, 01:11 AM
Exacto, el problema esque no puedo sincronizarlos, el hilo que va evaluando la base de datos y realizando la conexion con esta, con el hilo del progressbar...

Como podria hacerlo con un solo hilo??


De pasada (ya que es viernes  ;D) mira este ejemplo:

Código (csharp) [Seleccionar]
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using System.IO;
using System.Threading;

namespace WindowsFormsApplication1
{
    public partial class Form1 : Form
    {
        Thread myThread;
        delegate void SetValueCallback(int valor);

        public Form1()
        {
            InitializeComponent();
        }

        private void button1_Click(object sender, EventArgs e)
        {
            myThread = new Thread(new ThreadStart(listar));
            myThread.Start();
        }
        private void Form1_Load(object sender, EventArgs e)
        {
            progressBar1.Minimum = 0;
        }
        private void listar()
        {
            int i = 0;
            DirectoryInfo dInfo = new DirectoryInfo(@"C:\Windows\");
            FileInfo[] finfo = dInfo.GetFiles("*.*", SearchOption.AllDirectories);
            this.SetMax(finfo.Length);
            foreach (FileInfo f in finfo)
            {
                this.SetValue(i += 1);
                System.Threading.Thread.Sleep(50);
            }
        }
        private void SetValue(int valor)
        {
            if (this.InvokeRequired)
            {
                SetValueCallback d = new SetValueCallback(SetValue);
                this.Invoke(d, new object[] { valor });
            }
            else
            {
                this.progressBar1.Value = valor;
            }
        }
        private void SetMax(int valor)
        {
            if (this.InvokeRequired)
            {
                SetValueCallback d = new SetValueCallback(SetMax);
                this.Invoke(d, new object[] { valor });
            }
            else
            {
                this.progressBar1.Maximum = valor;
            }
        }
    }
}


Lista una carpeta, luego el número de archivos en la misma pasa a ser el valor máximo del PB, por último va recorriendo cada archivo de la carpeta y al hacerlo va cambiando el valor del PB hasta llegar al máximo.

Puedes modificarlo y mejorarlo para lo que necesitas.
#160
Código (csharp) [Seleccionar]
System.EnterpriseServices

pertenece al NetFramework 2.0 y puedes verificar si existe en la ruta:

C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727

si es que windows esta instalado en la unidad C:\
Dependiendo del Marco de trabajo de destino de tu proyecto verificas que NetFramework necesitas instalar.