ClockSync

Windows 시계를 동기화된 상태로 유지하십시오.

ClockSync Windows 시계를 동기화된 상태로 유지하는 간단한 명령줄 스크립트입니다.
일부 시스템에서는 다양한 원인으로 인해 Windows 시계가 동기화되지 않는 경우가 많습니다.
이 작은 도구가 이 문제를 해결해야 합니다.
ClockSync는 배치 언어로 작성되었습니다.

시스템 시간을 정확하게 유지하는 프로그램을 찾고 있다면 바로 찾았습니다!

  • 무료
  • 오픈 소스
  • 소형: 2kb 미만
  • 빠르고 사용하기 쉬운
  • Server 에디션을 포함하여 Win7에서 Win10까지의 모든 Windows에서 작동합니다.
    32비트 및 64비트 OS가 모두 지원됩니다.
용법:
  1. 인터넷에 연결되어 있는지 확인하십시오.
  2. 관리자 권한으로 ClockSync.bat 파일을 실행합니다.

ClockSync는 자동으로 첫 번째 동기화를 수행합니다.
그 후 시간 간격으로 주기적인 동기화를 수행합니다.
기본적으로 10분마다 시간을 동기화합니다.

지정하려는 경우 사용자 정의 재동기화 간격, "분" 명령 매개변수를 사용하여 파일을 실행합니다.
예를 들어 다음 명령은 60분마다 시계를 동기화합니다.
"시계동기화.박쥐 60"

세부:

ClockSync는 기본 인터넷 시간 서버와 주기적으로 동기화하여 시스템 시계를 정확하게 유지합니다.

Windows 시간 서비스 또는 인터넷 시간 동기화가 비활성화된 경우 ClockSync가 이를 다시 시작합니다.
이렇게 하면 ClockSync가 실행되고 있지 않을 때도 시스템 시계를 정확하게 유지하는 데 도움이 됩니다.

소스 코드 :

ClockSync.bat :

@echo off
echo * ClockSync v1.0
echo * BreakingSecurity.net
echo.

:: Check that we own administrator access level. 
echo [INFO] Checking Access Level...
net session >nul 2>&1
if %errorLevel% == 0 (
	:: We have the necessary rights, go forward
	echo [INFO] Administrative Access confirmed.
) else (
	:: Error, insufficient privileges. Exit program.
	echo [ERROR] Insufficient Access Level. Please restart script with administrative permission.
	echo.
	echo Press any key to exit...
	pause > nul
	exit
)

:: Check command-line parameter.
:: User can specify any number of minutes for the Resync interval.
:: If there is no user-specified parameter, default one is used.
set /A minutes = 10
if not "%1" == "" (
	set /A minutes=%1
)

:loop
:: Synchronize Clock
:: Use /force parameter to bypass "time change too big" error
w32tm /resync /force
if not errorlevel 0 (
	:: If Error, restart time service
    echo [WARNING] Time Service error. Restarting service...
	net stop w32time
    w32tm /unregister
    w32tm /register
    net start w32time
	w32tm /resync /force
	if not errorlevel 0 (
		:: Unknown error, exit program.
		echo [ERROR] Unknown error.
		echo.
		echo Press any key to exit...
		pause > nul
		exit
	)
)
echo.
echo [SUCCESS] Clock successfully synchronized!
echo Date: %date%
echo Time: %time%
echo.

:: Sleep
set /A seconds = %minutes% * 60
echo [INFO] Sleeping for %minutes% minutes until next synchronization...
echo.
ping 127.0.0.1 -n %seconds% > nul

:: Repeat
goto loop