728x90
SetSystemTime함수는 System의 날짜및 시간을 설정하는 함수입니다.
Declare Function SetSystemTime Lib "kernel32" Alias "SetSystemTime" (ByRef lpSystemTime As SYSTEMTIME) As Integer
▶VB.NET 선언
[DllImport("kernel32")]
public static extern int SetSystemTime(ref SYSTEMTIME lpSystemTime);
▶C# 선언
함수의 인수로는 변경할 시간이 저장된 SYSTEMTIME구조체를 기술하면 되는데 이 구조체는 다음과 같이 선언될 수 있습니다.
Public Structure SYSTEMTIME
Public wYear As Short '년도
Public wMonth As Short '월
Public wDayOfWeek As Short '요일
Public wDay As Short '일
Public wHour As Short '시
Public wMinute As Short '분
Public wSecond As Short '초
Public wMilliseconds As Short '1/100 초
End Structure
▶VB.NET
public struct SYSTEMTIME
{
public short wYear; //년도
public short wMonth; //월
public short wDayOfWeek; //요일
public short wDay; //일
public short wHour; //시
public short wMinute; //분
public short wSecond; //초
public short wMilliseconds; //1/100초
}
▶C#
SYSTEMTIME구조체를 선언하였으면 변경할 시간을 지정해야 합니다. 예를 들어 2009년 8월 18일 오전 10시 50분 30초로 지정하려면 구조체 Member를 다음과 같이 설정합니다.
Dim sTime As SYSTEMTIME
sTime.wYear = 2009
sTime.wMonth = 8
sTime.wDayOfWeek = 1
sTime.wDay = 18
sTime.wHour = 1
sTime.wMinute = 50
sTime.wSecond = 30
sTime.wMilliseconds = 0
▶VB.NET
SYSTEMTIME sTime = default(SYSTEMTIME);
sTime.wYear = 2009;
sTime.wMonth = 8;
sTime.wDayOfWeek = 1;
sTime.wDay = 18;
sTime.wHour = 0;
sTime.wMinute = 50;
sTime.wSecond = 30;
sTime.wMilliseconds = 0;
▶C#
참고로 시는 오전9시부터, 요일은 일요일부터 0으로 시작합니다. 구조체 설정이 완료되면 SetSystemTime함수를 호출하여 설정한 시간으로 변경합니다.
Call SetSystemTime(sTime)
▶VB.NET 호출
SetSystemTime(ref sTime);
▶C# 호출
이 함수는 실행에 실패하면 0을 반환합니다.
728x90
'.NET > Windows API for .NET' 카테고리의 다른 글
ExitWindowsEx - System종료및 Logoff 하기 (0) | 2019.08.06 |
---|---|
WindowFromPoint - 위치에 따른 Window의 Handle값 취득 (0) | 2019.08.06 |
CopyFile - File복사 (0) | 2019.08.06 |
SetFileAttributes - File의 속성설정 (0) | 2019.08.06 |
GetWindowTextLength - 특정 Window의 제목문자열 크기구하기 (0) | 2019.08.06 |