我想以编程方式启用Java辅助技术。为此,我按照以下步骤操作:
1)创建Java代理以在任何正在运行的Java应用程序VM中注入。
2)创建带有三个API调用的C ++ DLL,以启用辅助技术。
JavaAccessBridge-64.dll
runDll
JAWTAccessBridge-64.dll
jawtGetComponentFromNativeWindowHandle
jawtGetNativeWindowHandleFromComponent
3)我的.net应用程序将调用此C ++ DLL来捕获Java屏幕。
我在Java Access Bridge中调用run API时发现致命错误。
#
# A fatal error has been detected by the Java Runtime Environment:
#
# EXCEPTION_ACCESS_VIOLATION (0xc0000005) at pc=0x0000000000000000, pid=4196, t
id=10404
#
# JRE version: Java(TM) SE Runtime Environment (7.0_40-b43) (build 1.7.0_40-b43)
# Java VM: Java HotSpot(TM) 64-Bit Server VM (24.0-b56 mixed mode windows-amd64
compressed oops)
# Problematic frame:
# C 0x0000000000000000
#
# Failed to write core dump. Minidumps are not enabled by default on client vers
ions of Windows
#
# An error report file with more information is saved as:
# C:\Users\MAHEND~1.GAJ\AppData\Local\Temp\\hs_err_pid4196.log
#
# If you would like to submit a bug report, please visit:
# http://bugreport.sun.com/bugreport/crash.jsp
# The crash happened outside the Java Virtual Machine in native code.
# See problematic frame for where to report the bug.
#