728x90
반응형
728x170
using System;
using System.Runtime.InteropServices;
#region 마지막 에러 메시지 구하기 - GetLastErrorMessage()
/// <summary>
/// 마지막 에러 메시지 구하기
/// </summary>
/// <returns>마지막 에러 메시지</returns>
public string GetLastErrorMessage()
{
int errorCode = GetLastError();
FormatMessage(0x1300, IntPtr.Zero, errorCode, 0x400, out string errorMessage, 260, IntPtr.Zero);
return $"ERROR CODE : {errorCode}, ERROR MESSAGE : {errorMessage.TrimEnd(Environment.NewLine.ToCharArray())}";
}
#endregion
#region 마지막 에러 코드 구하기 - GetLastError()
/// <summary>
/// 마지막 에러 코드 구하기
/// </summary>
/// <returns>마지막 에러 코드</returns>
[DllImport("kernel32")]
private static extern int GetLastError();
#endregion
#region 형식 메시지 구하기 - FormatMessage(flag, sourceHandle, messageID, languageID, message, size, argumentHandle)
/// <summary>
/// 형식 메시지 구하기
/// </summary>
/// <param name="flag">플래그</param>
/// <param name="sourceHandle">소스 핸들</param>
/// <param name="messageID">메시지 ID</param>
/// <param name="languageID">언어 ID</param>
/// <param name="message">메시지</param>
/// <param name="size">크기</param>
/// <param name="argumentHandle">인자 핸들</param>
/// <returns>처리 결과</returns>
[DllImport("kernel32", CharSet = CharSet.Auto)]
private static extern int FormatMessage(int flag, IntPtr sourceHandle, int messageID, int languageID, out string message, int size, IntPtr argumentHandle);
#endregion
728x90
반응형
그리드형(광고전용)
'C# > Common' 카테고리의 다른 글
[C#/COMMON] SAM4S GIANT-100 감열 포스 영수증 프린터 사용하기 (0) | 2021.06.20 |
---|---|
[C#/COMMON] 윈도우즈 화면 잠금 여부 구하기 (0) | 2021.06.11 |
[C#/COMMON] Process 클래스 : GetProcessesByName 정적 메소드를 사용해 윈도우즈 화면 잠금 여부 구하기 (0) | 2021.06.11 |
[C#/COMMON] Process 클래스 : 부모 프로세스 구하기 (0) | 2021.06.09 |
[C#/COMMON] Win32Exception 클래스 사용하기 (0) | 2021.05.26 |
[C#/COMMON] WIN32 API 마지막 에러 메시지 구하기 (0) | 2021.05.26 |
[C#/COMMON] UWP 앱 윈도우 최소화/복원하기 (0) | 2021.05.25 |
[C#/COMMON] 카카오 API를 사용해 키워드 장소 검색하기 (0) | 2021.05.23 |
[C#/COMMON] UWP 프로세스/윈도우 리스트 구하기 (0) | 2021.05.23 |
[C#/COMMON] 이미지 파일을 WebP 이미지 파일로 저장하기 (0) | 2021.05.17 |
[C#/COMMON] Thread 클래스 : 특정 사용자 권한으로 스레드 실행하기 (0) | 2021.05.14 |
댓글을 달아 주세요