I am attempting to import records in RSXML format using the following code:
if( (iRet=pLitCiterDB->ImportRecords(pXML->c_str(),NULL,false,NULL,NULL,NULL,NULL,NULL)) != kServiceNoErr )
This causes EndNote to crash, without really giving much useful information (to me at least). (I’ve included WinDbg output at the bottom) For the record, pXML just contains “<records> </records>” and the database is a newly created, empty database.
Passing a reference to an IRecordListPtr fixes this; however, the API states that this parameter can be NULL.
if( (iRet=pLitCiterDB->ImportRecords(pXML->c_str(),NULL,false,NULL,&pImportedList,NULL,NULL,NULL)) != kServiceNoErr )
In this scenario, I am importing records into an empty database, so I have not yet run into a situation where I will have duplicate or replaced records. If I do have duplicates or replaced records, will I need to pass a reference to the respective fields to avoid having this error?
(2614.236c): Access violation - code c0000005 (first chance)
First chance exceptions are reported before any exception handling.
This exception may be expected and handled.
eax=00000000 ebx=001edd20 ecx=00000000 edx=008e790c esi=0012f804 edi=0012f9f4
eip=0050e5f7 esp=0012f5c8 ebp=0012f5cc iopl=0 nv up ei ng nz na po nc
cs=001b ss=0023 ds=0023 es=0023 fs=003b gs=0000 efl=00010282
*** ERROR: Module load completed but symbols could not be loaded for EndNote.exe
EndNote+0x10e5f7:
0050e5f7 8b08 mov ecx,dword ptr [eax] ds:0023:00000000=????????
0:000> !analyze -v
*******************************************************************************
* *
* Exception Analysis *
* *
*******************************************************************************
*** ERROR: Symbol file could not be found. Defaulted to export symbols for c:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\mscorwks.dll -
*** ERROR: Module load completed but symbols could not be loaded for C:\WINDOWS\WinSxS\x86_Microsoft.VC90.MFC_1fc8b3b9a1e18e3b_9.0.30729.5570_x-ww_d5fe2ecb\mfc90u.dll
*** ERROR: Symbol file could not be found. Defaulted to export symbols for C:\WINDOWS\WinSxS\x86_Microsoft.Windows.GdiPlus_6595b64144ccf1df_1.0.6002.22509_x-ww_c7dad023\gdiplus.dll -
*** ERROR: Symbol file could not be found. Defaulted to export symbols for C:\Program Files\EndNote X4\LIBMYSQLD.dll -
GetPageUrlData failed, server returned HTTP status 404
URL requested:[http://watson.microsoft.com/StageOne/EndNote\_exe/14\_0\_0\_4845/EndNote\_exe/14\_0\_0\_4845/0010e5f7.htm?Retriage=1](http://watson.microsoft.com/StageOne/EndNote_exe/14_0_0_4845/EndNote_exe/14_0_0_4845/0010e5f7.htm?Retriage=1)FAULTING_IP:
EndNote+10e5f7
0050e5f7 8b08 mov ecx,dword ptr [eax]
EXCEPTION_RECORD: ffffffff -- (.exr 0xffffffffffffffff)
ExceptionAddress: 0050e5f7 (EndNote+0x0010e5f7)
ExceptionCode: c0000005 (Access violation)
ExceptionFlags: 00000000
NumberParameters: 2
Parameter[0]: 00000000
Parameter[1]: 00000000
Attempt to read from address 00000000
FAULTING_THREAD: 0000236c
DEFAULT_BUCKET_ID: NULL_POINTER_READ
PROCESS_NAME: EndNote.exe
ERROR_CODE: (NTSTATUS) 0xc0000005 - The instruction at "0x%08lx" referenced memory at "0x%08lx". The memory could not be "%s".
EXCEPTION_CODE: (NTSTATUS) 0xc0000005 - The instruction at "0x%08lx" referenced memory at "0x%08lx". The memory could not be "%s".
EXCEPTION_PARAMETER1: 00000000
EXCEPTION_PARAMETER2: 00000000
READ_ADDRESS: 00000000
FOLLOWUP_IP:
EndNote+10e5f7
0050e5f7 8b08 mov ecx,dword ptr [eax]
MOD_LIST: <ANALYSIS/>
NTGLOBALFLAG: 70
APPLICATION_VERIFIER_FLAGS: 0
MANAGED_STACK:
(TransitionMU)
0012F814 0A34905A EndNotePlugin!<Module>.Init(RSServices.CServiceRequest*)+0x3c2
(TransitionUM)
MANAGED_STACK_COMMAND: _EFN_StackTrace
LAST_CONTROL_TRANSFER: from 00717e0a to 0050e5f7
ADDITIONAL_DEBUG_TEXT: Followup set based on attribute [Is_ChosenCrashFollowupThread] from Frame:[0] on thread:[PSEUDO_THREAD]
PRIMARY_PROBLEM_CLASS: NULL_POINTER_READ
BUGCHECK_STR: APPLICATION_FAULT_NULL_POINTER_READ
STACK_TEXT:
0012f814 0a34905a endnoteplugin!_Module_.Init+0x3c2
SYMBOL_NAME: endnoteplugin!_Module_.Init
FOLLOWUP_NAME: MachineOwner
MODULE_NAME: endnoteplugin
IMAGE_NAME: EndNotePlugin.dll
DEBUG_FLR_IMAGE_TIMESTAMP: 4dc04e20
STACK_COMMAND: _EFN_StackTrace ; dt ntdll!LdrpLastDllInitializer BaseDllName ; dt ntdll!LdrpFailureData ; **Pseudo Context** ; kb
FAILURE_BUCKET_ID: NULL_POINTER_READ_c0000005_EndNotePlugin.dll!_Module_.Init
BUCKET_ID: APPLICATION_FAULT_NULL_POINTER_READ_endnoteplugin!_Module_.Init
WATSON_STAGEONE_URL:[http://watson.microsoft.com/StageOne/EndNote\_exe/14\_0\_0\_4845/4bfd5f91/EndNote\_exe/14\_0\_0\_4845/4bfd5f91/c0000005/0010e5f7.htm?Retriage=1](http://watson.microsoft.com/StageOne/EndNote_exe/14_0_0_4845/4bfd5f91/EndNote_exe/14_0_0_4845/4bfd5f91/c0000005/0010e5f7.htm?Retriage=1)Followup: MachineOwner
---------
I’m using the following:
EndNoteX4
Visual Studio 2010
Thanks!
-Nathan