mirror of
https://github.com/go-vgo/robotgo.git
synced 2025-06-02 23:23:55 +00:00
add win32.h file
This commit is contained in:
parent
b6c5583f19
commit
b13ad7986e
@ -10,6 +10,7 @@
|
|||||||
|
|
||||||
#include "alert_c.h"
|
#include "alert_c.h"
|
||||||
#include "window.h"
|
#include "window.h"
|
||||||
|
#include "win32.h"
|
||||||
|
|
||||||
int show_alert(const char *title, const char *msg,
|
int show_alert(const char *title, const char *msg,
|
||||||
const char *defaultButton, const char *cancelButton){
|
const char *defaultButton, const char *cancelButton){
|
||||||
@ -57,24 +58,6 @@ bool is_valid(){
|
|||||||
// return z;
|
// return z;
|
||||||
// }
|
// }
|
||||||
|
|
||||||
#if defined(IS_WINDOWS)
|
|
||||||
void win_min(HWND hwnd, bool state){
|
|
||||||
if (state) {
|
|
||||||
ShowWindow(hwnd, SW_MINIMIZE);
|
|
||||||
} else {
|
|
||||||
ShowWindow(hwnd, SW_RESTORE);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
void win_max(HWND hwnd, bool state){
|
|
||||||
if (state) {
|
|
||||||
ShowWindow(hwnd, SW_MAXIMIZE);
|
|
||||||
} else {
|
|
||||||
ShowWindow(hwnd, SW_RESTORE);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
#endif
|
|
||||||
|
|
||||||
void min_window(uintptr pid, bool state, uintptr isHwnd){
|
void min_window(uintptr pid, bool state, uintptr isHwnd){
|
||||||
#if defined(IS_MACOSX)
|
#if defined(IS_MACOSX)
|
||||||
// return 0;
|
// return 0;
|
||||||
@ -142,34 +125,6 @@ void set_active(const MData win){
|
|||||||
SetActive(win);
|
SetActive(win);
|
||||||
}
|
}
|
||||||
|
|
||||||
#if defined(IS_WINDOWS)
|
|
||||||
typedef struct{
|
|
||||||
HWND hWnd;
|
|
||||||
DWORD dwPid;
|
|
||||||
}WNDINFO;
|
|
||||||
|
|
||||||
BOOL CALLBACK EnumWindowsProc(HWND hWnd, LPARAM lParam){
|
|
||||||
WNDINFO* pInfo = (WNDINFO*)lParam;
|
|
||||||
DWORD dwProcessId = 0;
|
|
||||||
GetWindowThreadProcessId(hWnd, &dwProcessId);
|
|
||||||
|
|
||||||
if (dwProcessId == pInfo->dwPid) {
|
|
||||||
pInfo->hWnd = hWnd;
|
|
||||||
return FALSE;
|
|
||||||
}
|
|
||||||
return TRUE;
|
|
||||||
}
|
|
||||||
|
|
||||||
HWND GetHwndByPId(DWORD dwProcessId){
|
|
||||||
WNDINFO info = {0};
|
|
||||||
info.hWnd = NULL;
|
|
||||||
info.dwPid = dwProcessId;
|
|
||||||
EnumWindows(EnumWindowsProc, (LPARAM)&info);
|
|
||||||
// printf("%d\n", info.hWnd);
|
|
||||||
return info.hWnd;
|
|
||||||
}
|
|
||||||
#endif
|
|
||||||
|
|
||||||
void active_PID(uintptr pid, uintptr isHwnd){
|
void active_PID(uintptr pid, uintptr isHwnd){
|
||||||
MData win;
|
MData win;
|
||||||
#if defined(IS_MACOSX)
|
#if defined(IS_MACOSX)
|
||||||
|
46
window/win32.h
Normal file
46
window/win32.h
Normal file
@ -0,0 +1,46 @@
|
|||||||
|
// #include "../base/os.h"
|
||||||
|
|
||||||
|
#if defined(IS_WINDOWS)
|
||||||
|
typedef struct{
|
||||||
|
HWND hWnd;
|
||||||
|
DWORD dwPid;
|
||||||
|
}WNDINFO;
|
||||||
|
|
||||||
|
BOOL CALLBACK EnumWindowsProc(HWND hWnd, LPARAM lParam){
|
||||||
|
WNDINFO* pInfo = (WNDINFO*)lParam;
|
||||||
|
DWORD dwProcessId = 0;
|
||||||
|
GetWindowThreadProcessId(hWnd, &dwProcessId);
|
||||||
|
|
||||||
|
if (dwProcessId == pInfo->dwPid) {
|
||||||
|
pInfo->hWnd = hWnd;
|
||||||
|
return FALSE;
|
||||||
|
}
|
||||||
|
return TRUE;
|
||||||
|
}
|
||||||
|
|
||||||
|
HWND GetHwndByPId(DWORD dwProcessId){
|
||||||
|
WNDINFO info = {0};
|
||||||
|
info.hWnd = NULL;
|
||||||
|
info.dwPid = dwProcessId;
|
||||||
|
EnumWindows(EnumWindowsProc, (LPARAM)&info);
|
||||||
|
// printf("%d\n", info.hWnd);
|
||||||
|
return info.hWnd;
|
||||||
|
}
|
||||||
|
|
||||||
|
// window
|
||||||
|
void win_min(HWND hwnd, bool state){
|
||||||
|
if (state) {
|
||||||
|
ShowWindow(hwnd, SW_MINIMIZE);
|
||||||
|
} else {
|
||||||
|
ShowWindow(hwnd, SW_RESTORE);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
void win_max(HWND hwnd, bool state){
|
||||||
|
if (state) {
|
||||||
|
ShowWindow(hwnd, SW_MAXIMIZE);
|
||||||
|
} else {
|
||||||
|
ShowWindow(hwnd, SW_RESTORE);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
#endif
|
Loading…
Reference in New Issue
Block a user