-
Notifications
You must be signed in to change notification settings - Fork 195
Revise 283: Bug: 64-bit got access violation when using CreateOleObject #284
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: master
Are you sure you want to change the base?
Conversation
|
Do you have a small example script that reproduces the access violation? Thanks in advance. |
Please try this test case: |
|
Thanks. Which ones of these have the problem: Test_CreateOleObject / Test_Format / Test_BadVariableType? Or is it all of them. |
|
Tried the first (so the script below) but it does not cause an AV for me. Delphi 12.3, 64-bit, PS_USECLASSICINVOKE. Instead it runs normally and sets Result to False. Without PS_USECLASSICINVOKE I get 'Could not call proc' on the Connect line. |
|
Tried running your changed code anyway. It crashed on the first changed line IDispatchInvoke for me, which is this line: Old
New
This seems to be expected because Par is an array of Variant, so you can cast it to PVarData, but not to PPSVariantIFC? This is with PS_USECLASSICINVOKE. Without that my test code doesnt run and says 'Could not call proc' again. |
|
I noticed #285 limits the new line from above to only if PS_USECLASSICINVOKE is not defined? |
No description provided.