how to call java access bridge correctly

94 Views Asked by At

i have called the initaccessbrige and created the thread to run loop pump but why the func always return 0

def run():
    so_path = r"C:\Users\test\AccessBridgeCalls.dll"
    global so_source
    so_source = ctypes.CDLL(so_path)
    status = so_source.initializeAccessBridge()
    print(so_source.__dir__())
    print("jab have already init")
    if status:
        while user32.GetMessageW(ctypes.byref(msg), None, 0, 0):
            print(user32.GetMessageW(ctypes.byref(msg), None, 0, 0))
            user32.TranslateMessage(ctypes.byref(msg))
            print(23234)
            user32.DispatchMessageW(ctypes.byref(msg))
if __name__ == '__main__':
    import win32gui
    import win32con
    import win32api
    import psutil
    import win32process
    t = threading.Thread(target=run, args=())
    # t.daemon = True
    t.start()
    time.sleep(5)
    # t.join()
    point = win32api.GetCursorPos()
    hwnd = win32gui.WindowFromPoint(point)
    bridge_path = r"D:\Program Files\Java\java\bin\WindowsAccessBridge-64.dll"
    bridge_dll = cdll.LoadLibrary(bridge_path)
    _fix_bridge_funcs()
    bridge_dll.Windows_run()
    code = bridge_dll.isJavaWindow(hwnd)
    print("is java window", code)

how to make function isjavawindow return the true

0

There are 0 best solutions below