Jump to content

ObjEvent by reference


Champak
 Share

Recommended Posts

AutoIt COM does not support byRef. Even if you specify it in a function definition, it uses byVal instead. Unfortunate, but non-trivial to implement - there are several discussions about this in the forum.

Dale

Free Internet Tools: DebugBar, AutoIt IE Builder, HTTP UDF, MODIV2, IE Developer Toolbar, IEDocMon, Fiddler, HTML Validator, WGet, curl

MSDN docs: InternetExplorer Object, Document Object, Overviews and Tutorials, DHTML Objects, DHTML Events, WinHttpRequest, XmlHttpRequest, Cross-Frame Scripting, Office object model

Automate input type=file (Related)

Alternative to _IECreateEmbedded? better: _IECreatePseudoEmbedded  Better Better?

IE.au3 issues with Vista - Workarounds

SciTe Debug mode - it's magic: #AutoIt3Wrapper_run_debug_mode=Y

Doesn't work needs to be ripped out of the troubleshooting lexicon. It means that what you tried did not produce the results you expected. It begs the questions 1) what did you try?, 2) what did you expect? and 3) what happened instead?

Reproducer: a small (the smallest?) piece of stand-alone code that demonstrates your trouble

Link to comment
Share on other sites

Either you answered my question and it went over my head, or you didn't understand what I am asking. I know that COM does not "support" byRef, I want to know if there is a way to detect if that is what the COM is trying to pass instead of the object just failing and not knowing why it is failing. That may sound pointless and redundant, but it is a help in not spinning my wheels to try and figure out why something is not working when it is as simple as the thing is being passed byRef so essentially there is no solution and move on. If figuring this out is not possible by writing some type of error script, can I find this out by looking in OLE like I would look for dispatch?

Link to comment
Share on other sites

I don't think there is any way to capture that this is happening. I think that the COM interface silently makes an AutoIt clone of the byRef value. I believe you'll need to research each function individually to see what parameters are being passed byRef... it is possible the OLE Viewer could tell you about this but I have never looked... I rely on the function documentation and am fortunate that most of what I use has it.

Dale

Free Internet Tools: DebugBar, AutoIt IE Builder, HTTP UDF, MODIV2, IE Developer Toolbar, IEDocMon, Fiddler, HTML Validator, WGet, curl

MSDN docs: InternetExplorer Object, Document Object, Overviews and Tutorials, DHTML Objects, DHTML Events, WinHttpRequest, XmlHttpRequest, Cross-Frame Scripting, Office object model

Automate input type=file (Related)

Alternative to _IECreateEmbedded? better: _IECreatePseudoEmbedded  Better Better?

IE.au3 issues with Vista - Workarounds

SciTe Debug mode - it's magic: #AutoIt3Wrapper_run_debug_mode=Y

Doesn't work needs to be ripped out of the troubleshooting lexicon. It means that what you tried did not produce the results you expected. It begs the questions 1) what did you try?, 2) what did you expect? and 3) what happened instead?

Reproducer: a small (the smallest?) piece of stand-alone code that demonstrates your trouble

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
 Share

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...