목차 열기

티스토리 뷰

VBA/WinAPI

VBA WinAPI / user32 - GetClassName

RuungJi · 2022. 8. 27. 01:48
728x90
반응형

VBA WinAPI / user32 - GetClassName

이 글은 Excel VBA 코딩 중, Windows API 함수를 사용하는 과정을 기록하기 위한 것이므로 이 점 참고 바랍니다.


이 포스팅은 Excel VBA에서 Win API를 사용하는 것에 대해 다룹니다.

user32 - GetClassName

윈도우 프로그램이 가지는 고유의 핸들 클래스 이름을 반환합니다.

Microsoft technical documentation

https://docs.microsoft.com/en-us/windows/win32/api/winuser/nf-winuser-getclassname

함수 선언

코드 상단에 추가해서 사용합니다.

#If VBA7 Then
    Private Declare PtrSafe Function GetClassName Lib "user32" Alias "GetClassNameA" _
                                                                (ByVal hwnd As Long, _
                                                                ByVal lpClassName As String, _
                                                                ByVal nMaxCount As Long) As Long
#Else
    Private Declare Function GetClassName Lib "user32" Alias "GetClassNameA" _
                                                                (ByVal hwnd As Long, _
                                                                ByVal lpClassName As String, _
                                                                ByVal nMaxCount As Long) As Long
#End If

설명 및 예제

  • 반환에 성공하면 문자열의 길이가 반환됩니다.
  • 반환에 실패하면 0이 반환됩니다.
Function GetClassName(
    ByVal hwnd As Long, '핸들
    ByVal lpClassName As String, '클래스 이름을 담을 문자열
    ByVal nMaxCount As Long '담을 문자열의 길이
    ) As Long


    '핸들 반환 실패
    Debug.Print GetClassName(0, "     ", 100) '0

    '핸들 반환 성공 (메모장)
    Debug.Print GetClassName(723584, "     ", 100) '7 (Notepad)

INDEX

VBA / INDEX

VBA / WinAPI / INDEX

728x90
반응형
댓글
글 보관함
«   2025/05   »
1 2 3
4 5 6 7 8 9 10
11 12 13 14 15 16 17
18 19 20 21 22 23 24
25 26 27 28 29 30 31
Total
Today
Yesterday