Cita:
Empezado por Sandy656
Si en las propiedades del acceso directo, en opciones avanzadas, hay un check para ejecutar como administrador. Pero ¿Habría alguna forma de actualizar la hora del sistema sin entrar como administrador?
.
|
El problema es que yo uso vb
pero en .net hay comandos directos.
te pongo como me funciona a mi
Generas desde la aplicacion un .bat y le pones estas 3 lineas:
"cmd /c Time " & hora_buff
"cmd /c date " & date_buff
"exit"
donde date_buff u hora_buff son las horas capturadas poniendo la fecha en formato español dd/mm/yyyy
y despues ejecutas desde el programa:
ShellExecute 0, "runas", "[pathcompleto archivo.bat]", requireAdministrator, vbNullString, 0
el shellexexute es de las apis de windows y tienes que declarar esta funcion
Private Declare Function ShellExecute Lib "shell32.dll" Alias "ShellExecuteA" (ByVal hwnd As Long, ByVal lpOperation As String, ByVal lpFile As String, ByVal lpParameters As String, ByVal lpDirectory As String, ByVal nShowCmd As Long) As Long
Segun como tengas el windows configurado te puede salir un mensaje de que es una aplicacion externa o algo asi, y le tienes que decir que no te avise mas poniendole al minimo la barra de avisos.
Te recomiendo que le pongas un sleep (espera) de 0.5segundos despues de la ejecucion del shellexecute