Tienes que usar la dll del sistema "coredll.dll" y el metodo "SetSystemTime" para actualizar la hora y "GetSystemTime" para cogerla.:
Código:
[DllImport("coredll.dll")]
private extern static void GetSystemTime(ref SYSTEMTIME lpSystemTime);
[DllImport("coredll.dll")]
private extern static uint SetSystemTime(ref SYSTEMTIME lpSystemTime);
Te creas una estuctura tal que asi:
Código:
private struct SYSTEMTIME
{
public ushort wYear;
public ushort wMonth;
public ushort wDayOfWeek;
public ushort wDay;
public ushort wHour;
public ushort wMinute;
public ushort wSecond;
public ushort wMilliseconds;
}
Y luego, suponiendo que en el textbox pones 30, para que cambie los minutos a y media, y un boton, para confirmar esto, cuando le des al boton, tendrias que hacer algo tal que asi:
Código:
SYSTEMTIME systime = new SYSTEMTIME();
GetSystemTime(ref systime);
//Ahora tendrias en tu systime la hora actual.
systime.wMinute = (ushort)(textBox.text);
//systime.wMinute = (ushort)(textBox.text.ToSting());
SetSystemTime(ref systime);
Y a correr.
Sacado de: http://msdn.microsoft.com/es-es/library/ms172517%28VS.80%29.aspx, buscando en google: "modificar hora del sistema con C#".
Por si no lees el enlace necesitas las siguientes referencias:
System
System.RunTime.InteropServices
System.Windows.Forms