Skip to Main Content

Oracle Forms

Announcement

For appeals, questions and feedback about Oracle Forums, please email oracle-forums-moderators_us@oracle.com. Technical questions should be asked in the appropriate category. Thank you!

WebUtil C API Causes Form to Abort

dshearaJul 16 2004 — edited Jul 23 2004
I am trying to migrate a custom Forms6i app with CASE-generated, context-sensitive help. In doing so, I have attempted to implement the old ORA_FFI stuff using WEBUTIL’s C_API functions to call Windows’ Help. My problem is that the form closes itself (disappears) after displaying WinHelp, and I am left with a very nasty log file on my desktop.

I have made custom library entries to the webutil.cfg file and have placed USER32.DLL in my /webutil/lib directory - and it is getting downloaded and stored in the JInitiator directory as it is supposed to the first time the form runs.

I’m including the log file “hs_err_pid2212.log” and a copy of the code I wrote to call MS Help. Thanks in advance.

---------------------- Here’s the log ----------------------

An unexpected exception has been detected in native code outside the VM.
Unexpected Signal : EXCEPTION_ACCESS_VIOLATION occurred at PC=0x1
Function name=(N/A)
Library=(N/A)

NOTE: We are unable to locate the function name symbol for the error
just occurred. Please refer to release documentation for possible
reason and solutions.



Current Java thread:
at oracle.forms.webutil.cApi.CFunc.callInt(Native Method)
at oracle.forms.webutil.cApi.CApiFunctions.invokeCApi(CApiFunctions.java:814)
at oracle.forms.webutil.cApi.CApiFunctions.getProperty(CApiFunctions.java:131)
at oracle.forms.handler.UICommon.onGet(Unknown Source)
at oracle.forms.engine.Runform.onGetHandler(Unknown Source)
at oracle.forms.engine.Runform.processMessage(Unknown Source)
at oracle.forms.engine.Runform.processSet(Unknown Source)
at oracle.forms.engine.Runform.onMessageReal(Unknown Source)
at oracle.forms.engine.Runform.onMessage(Unknown Source)
at oracle.forms.engine.Runform.processEventEnd(Unknown Source)
at oracle.ewt.lwAWT.LWComponent.redispatchEvent(Unknown Source)
at oracle.ewt.lwAWT.LWComponent.processEvent(Unknown Source)
at java.awt.Component.dispatchEventImpl(Unknown Source)
at java.awt.Container.dispatchEventImpl(Unknown Source)
at java.awt.Component.dispatchEvent(Unknown Source)
at java.awt.LightweightDispatcher.retargetMouseEvent(Unknown Source)
at java.awt.LightweightDispatcher.processMouseEvent(Unknown Source)
at java.awt.LightweightDispatcher.dispatchEvent(Unknown Source)
at java.awt.Container.dispatchEventImpl(Unknown Source)
at java.awt.Component.dispatchEvent(Unknown Source)
at java.awt.EventQueue.dispatchEvent(Unknown Source)
at java.awt.EventDispatchThread.pumpOneEventForHierarchy(Unknown Source)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)
at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
at java.awt.EventDispatchThread.run(Unknown Source)

Dynamic libraries:
0x00400000 - 0x00419000 C:\Program Files\Internet Explorer\iexplore.exe
0x77F50000 - 0x77FF7000 C:\WINNT\System32\ntdll.dll
0x77E60000 - 0x77F46000 C:\WINNT\system32\kernel32.dll
0x77C10000 - 0x77C63000 C:\WINNT\system32\msvcrt.dll
0x77D40000 - 0x77DCC000 C:\WINNT\system32\USER32.dll
0x7E090000 - 0x7E0D1000 C:\WINNT\system32\GDI32.dll
0x77DD0000 - 0x77E5D000 C:\WINNT\system32\ADVAPI32.dll
0x78000000 - 0x78087000 C:\WINNT\system32\RPCRT4.dll
0x70A70000 - 0x70AD5000 C:\WINNT\system32\SHLWAPI.dll
0x71700000 - 0x71849000 C:\WINNT\System32\SHDOCVW.dll
0x71950000 - 0x71A34000 C:\WINNT\WinSxS\x86_Microsoft.Windows.Common-Controls_6595b64144ccf1df_6.0.0.0_x-ww_1382d70a\comctl32.dll
0x773D0000 - 0x77BC7000 C:\WINNT\system32\SHELL32.dll
0x77340000 - 0x773CB000 C:\WINNT\system32\comctl32.dll
0x771B0000 - 0x772D4000 C:\WINNT\system32\ole32.dll
0x5AD70000 - 0x5ADA4000 C:\WINNT\System32\uxtheme.dll
0x74720000 - 0x74764000 C:\WINNT\System32\MSCTF.dll
0x71500000 - 0x715FD000 C:\WINNT\System32\BROWSEUI.dll
0x72430000 - 0x72442000 C:\WINNT\System32\browselc.dll
0x75F40000 - 0x75F5F000 C:\WINNT\system32\appHelp.dll
0x7C890000 - 0x7C911000 C:\WINNT\System32\CLBCATQ.DLL
0x77120000 - 0x771AB000 C:\WINNT\system32\OLEAUT32.dll
0x77050000 - 0x77115000 C:\WINNT\System32\COMRes.dll
0x77C00000 - 0x77C07000 C:\WINNT\system32\VERSION.dll
0x76670000 - 0x76757000 C:\WINNT\System32\SETUPAPI.dll
0x63000000 - 0x63096000 C:\WINNT\system32\WININET.dll
0x762C0000 - 0x7634B000 C:\WINNT\system32\CRYPT32.dll
0x762A0000 - 0x762B0000 C:\WINNT\system32\MSASN1.dll
0x76F90000 - 0x76FA0000 C:\WINNT\System32\Secur32.dll
0x76620000 - 0x7666E000 C:\WINNT\System32\cscui.dll
0x76600000 - 0x7661B000 C:\WINNT\System32\CSCDLL.dll
0x01290000 - 0x01491000 C:\WINNT\System32\msi.dll
0x10000000 - 0x10008000 C:\Program Files\Adobe\Reader 5.0\reader\activex\AcroIEHelper.ocx
0x75E90000 - 0x75F37000 C:\WINNT\System32\SXS.DLL
0x1A400000 - 0x1A47A000 C:\WINNT\system32\urlmon.dll
0x01790000 - 0x01818000 C:\WINNT\System32\shdoclc.dll
0x74770000 - 0x747FF000 C:\WINNT\System32\mlang.dll
0x63580000 - 0x63830000 C:\WINNT\System32\mshtml.dll
0x75A70000 - 0x75B15000 C:\WINNT\system32\USERENV.dll
0x75C50000 - 0x75CE1000 C:\WINNT\System32\jscript.dll
0x746F0000 - 0x74716000 C:\WINNT\System32\msimtf.dll
0x746C0000 - 0x746E7000 C:\WINNT\System32\MSLS31.DLL
0x76390000 - 0x763AC000 C:\WINNT\System32\IMM32.DLL
0x32520000 - 0x32532000 C:\Program Files\Microsoft Office\Office10\msohev.dll
0x76B40000 - 0x76B6C000 C:\WINNT\System32\WINMM.dll
0x6BD00000 - 0x6BD0D000 C:\WINNT\System32\SYNCOR11.DLL
0x72D20000 - 0x72D29000 C:\WINNT\System32\wdmaud.drv
0x72D10000 - 0x72D18000 C:\WINNT\System32\msacm32.drv
0x77BE0000 - 0x77BF4000 C:\WINNT\System32\MSACM32.dll
0x77BD0000 - 0x77BD7000 C:\WINNT\System32\midimap.dll
0x71AD0000 - 0x71AD8000 C:\WINNT\System32\wsock32.dll
0x71AB0000 - 0x71AC5000 C:\WINNT\System32\WS2_32.dll
0x71AA0000 - 0x71AA8000 C:\WINNT\System32\WS2HELP.dll
0x71A50000 - 0x71A8B000 C:\WINNT\system32\mswsock.dll
0x71A90000 - 0x71A98000 C:\WINNT\System32\wshtcpip.dll
0x76EE0000 - 0x76F17000 C:\WINNT\System32\RASAPI32.DLL
0x76E90000 - 0x76EA1000 C:\WINNT\System32\rasman.dll
0x71C20000 - 0x71C6E000 C:\WINNT\System32\NETAPI32.dll
0x76EB0000 - 0x76EDB000 C:\WINNT\System32\TAPI32.dll
0x76E80000 - 0x76E8D000 C:\WINNT\System32\rtutils.dll
0x722B0000 - 0x722B5000 C:\WINNT\System32\sensapi.dll
0x76FC0000 - 0x76FC5000 C:\WINNT\System32\rasadhlp.dll
0x76F20000 - 0x76F45000 C:\WINNT\System32\DNSAPI.dll
0x76FB0000 - 0x76FB7000 C:\WINNT\System32\winrnr.dll
0x76F60000 - 0x76F8C000 C:\WINNT\system32\WLDAP32.dll
0x65AF0000 - 0x65AF7000 C:\WINNT\system32\jsproxy.dll
0x6D350000 - 0x6D35D000 C:\Program Files\Oracle\JInitiator 1.3.1.17\bin\npjinit13117.dll
0x6D130000 - 0x6D15B000 C:\Program Files\Oracle\JInitiator 1.3.1.17\bin\beans.ocx
0x6D300000 - 0x6D316000 C:\Program Files\Oracle\JInitiator 1.3.1.17\bin\jpishare.dll
0x6D3F0000 - 0x6D4C7000 C:\PROGRA~1\Oracle\JINITI~1.17\bin\hotspot\jvm.dll
0x6D220000 - 0x6D227000 C:\PROGRA~1\Oracle\JINITI~1.17\bin\hpi.dll
0x6D380000 - 0x6D38D000 C:\PROGRA~1\Oracle\JINITI~1.17\bin\verify.dll
0x6D250000 - 0x6D268000 C:\PROGRA~1\Oracle\JINITI~1.17\bin\java.dll
0x6D390000 - 0x6D39D000 C:\PROGRA~1\Oracle\JINITI~1.17\bin\zip.dll
0x6D020000 - 0x6D12B000 C:\Program Files\oracle\JInitiator 1.3.1.17\bin\awt.dll
0x73000000 - 0x73023000 C:\WINNT\System32\WINSPOOL.DRV
0x79170000 - 0x79191000 C:\WINNT\System32\mscoree.dll
0x79410000 - 0x79422000 C:\WINNT\Microsoft.NET\Framework\v1.0.3705\mscorie.dll
0x7C000000 - 0x7C054000 C:\WINNT\Microsoft.NET\Framework\v1.0.3705\MSVCR70.dll
0x6D340000 - 0x6D348000 C:\Program Files\oracle\JInitiator 1.3.1.17\bin\net.dll
0x6D1E0000 - 0x6D21C000 C:\Program Files\oracle\JInitiator 1.3.1.17\bin\fontmanager.dll
0x5ED00000 - 0x5EDC6000 C:\WINNT\System32\OPENGL32.dll
0x68B20000 - 0x68B3E000 C:\WINNT\System32\GLU32.dll
0x73760000 - 0x737A4000 C:\WINNT\System32\DDRAW.dll
0x73BC0000 - 0x73BC6000 C:\WINNT\System32\DCIMAN32.dll
0x0D770000 - 0x0D926000 C:\WINNT\System32\i81xgicd.dll
0x0FFA0000 - 0x0FFC1000 C:\WINNT\System32\dssenh.dll
0x6D370000 - 0x6D37A000 C:\Program Files\oracle\JInitiator 1.3.1.17\bin\packager.dll
0x0FB80000 - 0x0FB90000 C:\Program Files\oracle\JInitiator 1.3.1.17\bin\JNIsharedstubs.dll
0x76C90000 - 0x76CB2000 C:\WINNT\system32\imagehlp.dll
0x6D510000 - 0x6D58D000 C:\WINNT\system32\DBGHELP.dll
0x76BF0000 - 0x76BFB000 C:\WINNT\System32\PSAPI.DLL

Local Time = Fri Jul 16 15:49:49 2004
Elapsed Time = 15
#
# The exception above was detected in native code outside the VM
#
# Java VM: Java HotSpot(TM) Client VM (1.3.1_04-b02 mixed mode)
#




---------------------- Here’s the function ----------------------

FUNCTION winhelp
(p_winhandle IN PLS_INTEGER
,p_helpfilename IN OUT VARCHAR2
,p_helpcommand IN PLS_INTEGER
,p_extradata IN PLS_INTEGER
) RETURN PLS_INTEGER IS

c_lib CONSTANT VARCHAR2(30) := 'USER32.DLL';
c_fun CONSTANT VARCHAR2(30) := 'WinHelpA';

v_rtn PLS_INTEGER;
v_func webutil_c_api.functionhandle;
v_args webutil_c_api.parameterlist;
v_param1 webutil_c_api.parameterhandle;
v_param2 webutil_c_api.parameterhandle;
v_param3 webutil_c_api.parameterhandle;
v_param4 webutil_c_api.parameterhandle;

BEGIN

v_func := webutil_c_api.register_function
(c_lib
,c_fun
);

v_args := webutil_c_api.create_parameter_list;

v_param1 := webutil_c_api.add_parameter
(v_args
,webutil_c_api.c_int
,webutil_c_api.param_in
,p_winhandle
);

v_param2 := webutil_c_api.add_parameter
(v_args
,webutil_c_api.c_char_ptr
,webutil_c_api.param_inout
,p_helpfilename
,200
);

v_param3 := webutil_c_api.add_parameter
(v_args
,webutil_c_api.c_int
,webutil_c_api.param_in
,p_helpcommand
);

v_param4 := webutil_c_api.add_parameter
(v_args
,webutil_c_api.c_long
,webutil_c_api.param_in
,p_extradata
);

v_rtn := webutil_c_api.invoke_int
(c_lib
,c_fun
,v_args
);

webutil_c_api.destroy_parameter_list(v_args);

webutil_c_api.deregister_function(v_func);

RETURN (v_rtn);

EXCEPTION

WHEN OTHERS THEN
MESSAGE('OTHERS:'||SQLERRM);
RETURN -1;

END;
Comments
Locked Post
New comments cannot be posted to this locked post.
Post Details
Locked on Aug 20 2004
Added on Jul 16 2004
2 comments
804 views