Files
ShotRDP/gui/main.py
2025-03-28 18:19:25 +08:00

34 lines
873 B
Python

import ctypes
from predict import solve
def shot(target, width, height):
lib = ctypes.CDLL('./shotrdp.dll')
lib.GetScreen.argtypes = [
ctypes.c_char_p,
ctypes.POINTER(ctypes.POINTER(ctypes.c_char)),
ctypes.POINTER(ctypes.c_int),
ctypes.c_int,
ctypes.c_int,
]
lib.GetScreen.restype = ctypes.c_char_p
data = ctypes.POINTER(ctypes.c_char)()
length = ctypes.c_int()
error_ptr = lib.GetScreen(target, ctypes.byref(data), ctypes.byref(length), width, height)
if error_ptr:
print(ctypes.string_at(error_ptr).decode())
else:
image_bytes = ctypes.string_at(data, length.value)
result = solve(image_bytes)
# with open('./screen/0.png', 'wb') as f:
# f.write(result)
lib.Free(data)
if __name__ == '__main__':
shot(b'127.0.0.1:3389', 1024, 800)