Ir para conteúdo

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Gabriel Lopes

[C#.NET] - Como fazer AÇÕES automatizadas usando a HORA e DATA real

Recommended Posts

Eu já trabalhei muito com C#.net porém esta semana precisei fazer ações automatizadas, uma para executar tal ação em por exemplo: 12:00 e outra em 12 de outubro as 09:00.

Só alógica não basta!

Preciso usar hora dinâmica!

A hora deve ser alterada em "imputBox" (mascarada com hora)

A segunda hora, data deve ser alterada "imputBox" (mascarada com data e hora)

até aqui beleza.

Já tentei DateTime masi nada.

private void TempoAbrirGameServer_Tick(object sender, EventArgs e)
        {
            DateTime hora = DateTime.Now;

            if (hora.Hour == 12 )
            {
                MessageBox.Show("Olá");
            }
        }

Não sei mais o que tentar, e não consegui colocar também os minutos.

Preciso de ajuda urgente, pode ser até class.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Bingo Funcionou! mas nem tão funcional assim. :joia: / :(

private void TempoAbrirGameServer_Tick(object sender, EventArgs e)
        {


            if (DateTime.Now.Hour == 21 )
            {
                MessageBox.Show("Olá");
            }
        }

Porém ficou se repetindo a ação acada segundo e se eu tentar (o se "isso"...) fora do "Timer" não há ação.

(isso ainda é muito frustante para mim).

O que eu posso fazer para parar o "Timer", pois se paro ele antes da ação ele não executa a ação e se paro depois ele vai ficar repetindo a ação a cada segundo ou milésimo.

Dúvidas:

Para mim usar uma função com horas e minutos é só eu substituir por exemplo: "21" por "21:05" ou "21,05".

// == // // == // // == // // == horas dias e meses como é a formatação?

E muito obrigado eu não tinha pensado nisso!

 

 

Compartilhar este post


Link para o post
Compartilhar em outros sites

Para parar um timer é só usar o Timer1.Stop

 

O dateTime já trás para você a data e a hora (por isso DateTime) então você pode usar System.DateTime.Now.Month, Day, Year, DayOfTheYear, WeekDay, Hour, Second, Minute e muitas outras

Compartilhar este post


Link para o post
Compartilhar em outros sites

Obrigado mais uma vez isto responde uma de minhas duvidas, como já havia dito no post anterior eu usei o timer1.stop();

se eu paralo antes da ação que neste caso é uma mensagen com o botão ok, ela não é acionada, já se eu parar o timer depois num vai adiantar pois a maioria das ações do servidor deve ser finalizada com ação do usuario (a maioria das funções estão no mesmo programa) entende, já temtei alterar o intervalo do timer, mas não foi funcional, queria algo para paralo asim que a ação inicie.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Boa noite, me desculpe a insistência, pois o erro de não executar a ação foi de um conflito de 'times'.

Veja neste vídeo que fiz para explicar minha dúvida, e o inesperado acontece!

http://youtu.be/-G1ipRw-d1c

Sou muito grato a você, você realmente gosta de ajudar, todos os tópicos que eu já fiz você me ajudou.

Porque você não monta uma escola online comunitária de lógica e programação? Eu iria dar apoio.

 

Compartilhar este post


Link para o post
Compartilhar em outros sites

Então cara, usar o time.Stop antes da ação para o o timer e continua executando o código dele até o fim. Porém o seu próximo problema vai ser como parar o timer, depois continuar rodando ele para que ele continue executando a ação, talvez uma flag boolean que indique quando ele deve parar e continuar.

 

Haha, eu até já pensei em abrir um curso online ou algo do tipo para que eu possa ensinar algumas coisas, porém infelizmente não tenho muito tempo para dedicar ao ensino... No momento só posso oferecer ajuda aqui no iMasters mesmo :/

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.