설치 / 사용기

기 타 Copilot 이용하여 시간동기화 프로램 만들기(Autoit)

2024.08.10 13:46

GreenTea 조회:542 추천:11

; NTP 서버 주소

Global $sNTPServer = "time.windows.com"

 

; NTP 서버로부터 시간을 가져오는 함수

Func _GetNTPTime($sServer)

    Local $iSocket = UDPStartup()

    Local $iUDP = UDPOpen($sServer, 123)

    Local $aNTPPacket[12] = [0x1B, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]

    Local $tNTPPacket = DllStructCreate("byte[48]")

    DllStructSetData($tNTPPacket, 1, $aNTPPacket)

    UDPSend($iUDP, DllStructGetPtr($tNTPPacket), 48)

    Local $tResponse = DllStructCreate("byte[48]")

    UDPRecv($iUDP, DllStructGetPtr($tResponse), 48)

    UDPCloseSocket($iUDP)

    UDPShutdown()

    Local $iSeconds = DllStructGetData($tResponse, 1, 43) * 256 + DllStructGetData($tResponse, 1, 44)

    $iSeconds = $iSeconds * 256 + DllStructGetData($tResponse, 1, 45)

    $iSeconds = $iSeconds * 256 + DllStructGetData($tResponse, 1, 46)

    Return $iSeconds - 2208988800

EndFunc

 

; 시스템 시간을 설정하는 함수

Func _SetSystemTime($iSeconds)

    Local $tSystemTime = DllStructCreate("ushort[8]")

    Local $iTime = _Date_Time_EncodeFileTime($iSeconds)

    DllStructSetData($tSystemTime, 1, $iTime[0])

    DllStructSetData($tSystemTime, 2, $iTime[1])

    DllStructSetData($tSystemTime, 3, $iTime[2])

    DllStructSetData($tSystemTime, 4, $iTime[3])

    DllStructSetData($tSystemTime, 5, $iTime[4])

    DllStructSetData($tSystemTime, 6, $iTime[5])

    DllStructSetData($tSystemTime, 7, $iTime[6])

    DllStructSetData($tSystemTime, 8, $iTime[7])

    DllCall("kernel32.dll", "int", "SetSystemTime", "ptr", DllStructGetPtr($tSystemTime))

EndFunc

 

; 메인 함수

Func _Main()

    Local $iNTPTime = _GetNTPTime($sNTPServer)

    _SetSystemTime($iNTPTime)

EndFunc

 

_Main()

 
코파일럿에게 오토잇으로 시간동기화 프로그램 만들어 보라고 했더니
 
잘만드네요.. 
 
미첬어요~
번호 제목 글쓴이 조회 추천 등록일
[공지] 사용기/설치기 이용안내 gooddew - - -
11252 기 타| Winre.wim 수동 등록 및 F8 사용기 입니다 [9] 왕초보 966 23 08-16
11251 소프트웨어| 배치파일 메뉴 형태들 (hybrid batch file) [16] 지후빠 834 43 08-15
11250 소프트웨어| Bcdboot-batch-and-GetPart-new [19] 지후빠 1102 60 08-14
11249 기 타| DiskPartition에 Backup 복사 및 BCD 등록 메뉴를 추가하여... [22] 왕초보 951 38 08-14
11248 기 타| winXPE147_KJ Windows10_22H2 2209(빌드19045.4717) 정리 [75] 격자 803 129 08-14
11247 소프트웨어| DiskPartition 제2편 [23] sunshine 1069 54 08-14
11246 윈 도 우| KB5041585OS 빌드 22621.4037 및 22631.4037 [6] 16k 636 11 08-14
11245 기 타| sunshine님 DiskPartition을 활용하여 보았습니다..감사합... [11] 왕초보 866 20 08-13
11244 소프트웨어| DiskPartition 제1편 [38] sunshine 2329 81 08-11
11243 기 타| winXPE_20240322_23H2 (빌드22631.3958) 정리 [80] 격자 927 167 08-11
11242 윈 도 우| 큰나무님 열번째 Windows 11 10-System PE 스샷 [20] 립뽀 858 46 08-10
11241 기 타| (끝)Win11 System 10th KNM PE [158] UMIN.J 1827 234 08-10
» 기 타| Copilot 이용하여 시간동기화 프로램 만들기(Autoit) [3] GreenTea 542 11 08-10
11239 소프트웨어| 서버에서 유용하게 쓰고 있는 시간동기화 [3] GreenTea 532 10 08-10
11238 기 타| 【배포】 251mb Internet win11 PE [57] 딸랑쇠 1988 155 08-09
11237 기 타| winXPE_20240322_23H2(빌드 22635.4005) 정리 [69] 격자 625 140 08-09
11236 소프트웨어| T.Dism 9.2 를 이용한 VHD(X) 최적화 [12] GreenTea 1176 32 08-08
11235 소프트웨어| KNM님 10th Systemboot.wim test [15] wfja88 514 24 08-08
11234 윈 도 우| VHD cleanup compact 테스트 [19] 지후빠 663 26 08-08
11233 윈 도 우| Win11-10-System pe 간단 사용기 처음해본 gif ^^ [4] 수리수리 480 20 08-08
XE1.11.6 Layout1.4.8