Maybe I've missed it, but I've read everything I could find on OIPI 4.1 and OI 4.0.1 and I still can't even get the example program to run. I've DECLARE_FCNS til the cows come home. After following the instructions in Mike Ruane's note, I still get an error, now a different one:
SET_PRINTER line 192: Function GetNextWindow does not exist….in USER32.DLL.
I am just testing, not running an app. I tried inserting the Set_Printer (START32') directly into the OIPI_Example1 code, but that generates the above error in itself.
Thanks,
David
David,
Since you have read everything then you know about the possibility that remnant WinAPI pointers may still exist in SYSOBJ. Do you see any of these linked to your specific application?
dbakke@srpcs.com
I suspect that the problem is that the line in DLL_OIPI_USER32 incorrectly reads -
*]] HANDLE STDCALL GetNextWindow(HANDLE,UINT) <
Pat has previously noted in this forum that in 32bit land this does not exist and should be replaced by GetWindow with an alias. This change resolved the issue for me. So the action to take is -
RUN DELETE_ROW 'SYSOBJ', '$GETNEXTWINDOW'
Then ammend DLL_OIPI_USER32 with (or if in the DLL_USER32 same action)
HANDLE STDCALL GetWindow(HANDLE,UINT) AS GETNEXTWINDOW
Then save and run Declare_Fcns 'DLL_USER32'
Richard Bright
Then ammend DLL_OIPI_USER32 with (or if in the DLL_USER32 same action)
HANDLE STDCALL GetWindow(HANDLE,UINT) AS GETNEXTWINDOW
Richard,
Sorry–where do I find DLL_OIPI_USER32?
Thanks,
David
Richard,
Thanks. Now I know where to look: SYSPROCS. Your suggestion worked. It was not necessary to delete any additional rows beyond $GetNextWindow.
David