I've now stepped through the code until just before the crash. I think the crash is related to VBScript. Anyhow, the stack trace is (This is in VP 9.9.1 source):
> VPinball.exe!EventProxy<PinTable,&DIID_ITableEvents>::FireDispID(long dispid, tagDISPPARAMS * pdispparams) Line 89 C++
VPinball.exe!EventProxyBase::FireVoidEvent(int dispid) Line 14 C++
VPinball.exe!Player::Init(PinTable * const ptable, HWND__ * const hwndProgress, HWND__ * const hwndProgressName) Line 934 C++
VPinball.exe!PinTable::Play() Line 1708 C++
VPinball.exe!VPinball::DoPlay() Line 1541 C++
VPinball.exe!VPinball::ParseCommand(int code, HWND__ * hwnd, int notify) Line 754 C++
VPinball.exe!VPSideBarWndProc(HWND__ * hwnd, unsigned int uMsg, unsigned int wParam, long lParam) Line 2426 C++
[External Code]
[Frames below may be incorrect and/or missing, no symbols loaded for user32.dll]
VPinball.exe!VPinball::MainMsgLoop() Line 2067 C++
VPinball.exe!WinMain(HINSTANCE__ * hInstance, HINSTANCE__ * __formal, char * __formal, int __formal) Line 289 C++
[External Code]
The line being called is:
pDispatch->Invoke(dispid, IID_NULL, LOCALE_USER_DEFAULT, DISPATCH_METHOD, pdispparams, NULL, NULL, NULL);
It jumps into VBScript processing, and the next thing that happens is that I have the first stack trace I posted, with a message:
Unhandled exception at 0x10C2BA30 in VPinball.exe: 0xC000041D: An unhandled exception was encountered during a user callback.
If there is a handler for this exception, the program may be safely continued.
If I try to continue, the same error reappears.
I can't give you any info about debugging this, but I would guess it's ddraw related. Have you tried setting ddraw=0 in hkcu\software\freeware\visual pinball\[ROM name]?
Thanks for the hint, Sir Cheddar.
In my registry there is no 'freeware' in the path, and no entry for the ROM name. Should there be?
Edited by pilotniq, 18 December 2014 - 09:16 PM.