주로
JAVA(fabric) 특정 문자열을 포함한 윈도우 핸들 구하기 본문
반응형
// Minecraft 창을 찾는 메서드
public static WinDef.HWND findWindow(String partialTitle) {
final WinDef.HWND[] hwnd = new WinDef.HWND[1];
User32.INSTANCE.EnumWindows((hWnd, arg1) -> {
String windowText = getWindowText(hWnd);
// 창 제목에 "Minecraft"가 포함되어 있으면 핸들을 저장
if (windowText.contains(partialTitle)) {
hwnd[0] = hWnd;
return false; // 창을 찾았으므로 열거를 중지합니다.
}
return true; // 계속 열거합니다.
}, null);
return hwnd[0];
}
// 주어진 HWND에 대한 창 제목을 가져오는 메서드
public static String getWindowText(WinDef.HWND hWnd) {
char[] windowText = new char[512];
User32.INSTANCE.GetWindowText(hWnd, windowText, windowText.length);
return Native.toString(windowText);
}
예시
import com.sun.jna.platform.win32.User32;
import com.sun.jna.platform.win32.WinDef;
import com.sun.jna.platform.win32.WinUser;
private static WinDef.HWND hwnd;
private static void main(){
hwnd = findWindow(*title);
}
반응형
'게임 > 마인크래프트' 카테고리의 다른 글
[fabric] 현재 활성화된 윈도우의 핸들을 PID를 통해 구하기 (0) | 2024.10.01 |
---|---|
[fabric] 윈도우 메시지를 통한 키보드/마우스 간단한 제어 예시 (0) | 2024.10.01 |
Fabric 키 바인딩의 예시와 함수화 (0) | 2024.09.30 |
[명령어] 인챈트 코드 및 설명 (1.20.5 버전 이상) (3) | 2024.07.22 |
[명령어] 1.13 이상 커멘드블록(반응형) 사용법 (0) | 2021.05.02 |
Comments