Ir para conteúdo

Arquivado

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

Tony Miguel

[Resolvido] Alterar Horario em C#

Recommended Posts

Olá, eu gostaria de saber o comando para eu pegar o horario do sistema e alterar ele, exemplo:

 

clico no btnMais

Altera o horario do pc para 1 hora na frente, "15:14" vai para "16:14".

 

clico no btnMenos

Altera o horario do pc para 1 hora para tras, "16:14" volta para "15:14".

 

E gostaria de saber se tem uma função timer ou algo do tipo, quero fazer tipo um WinForm que mostra a hora do sistema e edita a hora de 1 em 1, algo bem simpleszinho.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Sim, quero tipo quando clicar no btnMais ele adicionar 1 hora no horario do pc e seila se conseguir colocar um timer tipo 2 minutos depois ele retira essa 1 hora que colocou no sistema, mas nao sei se da para fazer isso.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Eu olhei isso ali mas nessa parte:

DateTime DataHoraAtual = DateTime.Parse(“25/07/2008 09:43:00″);

 

Ele esta definindo a hora não é ? E como faz se eu quizer pegar a hora automaticamente, so for horarios nao especificos ?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Rapaz até onde sei alterar hora do PC através do framework não dá não.

O que você pode tentar fazer é usando DLL externas

Compartilhar este post


Link para o post
Compartilhar em outros sites

Use o Datetime.now:

 

DateTime hora = DateTime.Now;

String.Format("{0:T}", hora);

 

 

Aqui está a lista de formatações:

 

http://www.csharp-examples.net/string-format-datetime/

Compartilhar este post


Link para o post
Compartilhar em outros sites

Alterar o horário do sistema definitivamente, como se você estivesse indo nas opções do relógio realmente não dá sem ajuda de referencias de DLL. Mas pelo que vejo você só quer manipular o horário existente, e isto é completamente possível.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Estou fazendo com o que você me passou, sabe me dizer se tem algum comando para tipo Timer para o relogio que vou colocar no windowsform ficar atualizando de 1 em 1 segundo?

E quando clicar no botão btnAtivar ele para o timer e o btnDesativar ele ativa novamente.

Compartilhar este post


Link para o post
Compartilhar em outros sites

KhaosDoctor estou tentando de outra maneira, pois não entendi muito bem pelos passos que você falou.

Se souber me explicar como fazer com o DateTime, porque pelo site que você passou eu não consegui. E outra não consegui achar um metodo de timer para atualizar o textbox com o horario.

Estou tentando fazer a cmd abrir e escrever time, e em seguida printar o novo horario de acordo com a variavel, está assim:

 

So que desse jeito está apenas abrindo a CMD e não digita o time e nem o novo horario, então to meio que travado.

 

public partial class Form1 : Form

{

public Form1()

{

InitializeComponent();

}

 

private void Form1_Load(object sender, EventArgs e)

{

DateTime hora = DateTime.Now;

txtHora.Text = String.Format("{0:T}", hora);

}

 

private void btnAtivar_Click(object sender, EventArgs e)

{

String horario;

DateTime hora = DateTime.Now;

TimeSpan ValoresAAdicionar = new TimeSpan(0, 1, 0, 0);

txtHora2.Text = String.Format("{0:T}", hora+ValoresAAdicionar);

horario = String.Format("{0:T}", hora + ValoresAAdicionar);

System.Diagnostics.Process p = new System.Diagnostics.Process();

p.StartInfo.WorkingDirectory = "c:\\Windows";

p.StartInfo.UseShellExecute = false;

p.StartInfo.FileName = "cmd.exe";

p.StartInfo.Arguments = "time" + horario;

/*p.StartInfo.CreateNoWindow = true;*/

p.Start();

p.Close();

}

}

Compartilhar este post


Link para o post
Compartilhar em outros sites

Veja bem, o que você precisa fazer é:

 

 

Isso é para o botão Mais:

 


DateTime hora = DateTime.Now;

String.Format("{0:T}", hora);

DateTime novahora = hora + new TimeSpan(0,1,0,0);

<seucomponent>.<propriedadetexto> = novahora.ToString();

 

E este para o menos:


DateTime hora = DateTime.Now;

String.Format("{0:T}", hora);

DateTime novahora = hora - new TimeSpan(0,1,0,0);

<seucomponent>.<propriedadetexto> = novahora.ToString();

 

Para atualizar o horario, crie uma label e um timer, defina o intervalo do timer (o Tick) para 1000 e clique duas vezes no controle:

 

Adicione o código:

 

Label1.text = DateTime.Now.ToString();

 

Para ativar o timer você poe no botão de ativar "Timer1.Enabled = True;" e no de desativar "Timer1.Enabled = false;"

Compartilhar este post


Link para o post
Compartilhar em outros sites

Perdão ressuscitar o tópico, mas preciso mudar o FUSO HORÁRIO do pc através do meu windows form... Tem como? (Exemplo, os pcs vem com horário de brasília e eu quero colocar (no caso do Windows 7) o horário de Cuiabá).

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.