Jump to content

_IEFrameGetObjName creates error in program


suplada
 Share

Recommended Posts

Hi,

I'm having trouble with my program. It seems that when I include the line $oFrames = _IEFrameGetObjName ($oIE, "rtop") in my program, an error occurs:

If String($o_object.document.body.tagName) = "FRAMESET" Then

If String($o_object.document^ ERROR

Please help.

Edited by suplada
Link to comment
Share on other sites

Hi suplada,

Please create descriptive topics.

Using one word topics makes it really difficult to use the search feature, and those that could probably answer your question will probably not even read your thread.

Doing it enough could cause your posting privileges to be taken away all together, and we don't want that :) .

Thanks.

Link to comment
Share on other sites

Hi,

I'm having trouble with my program. It seems that when I include the line $oFrames = _IEFrameGetObjName ($oIE, "rtop") in my program, an error occurs:

If String($o_object.document.body.tagName) = "FRAMESET" Then

If String($o_object.document^ ERROR

Please help.

Link to comment
Share on other sites

  • Moderators

You were warned in your welcome message ( http://www.autoitscript.com/forum/index.ph...c=81203&hl= ) on your first post that posting duplicate topics on the same subject matter was against the forum rules.

If you do it again. Your posting privileges will be removed, 3 topics on the same subject is completely rediculous.

Topics merged.

Common sense plays a role in the basics of understanding AutoIt... If you're lacking in that, do us all a favor, and step away from the computer.

Link to comment
Share on other sites

  • 3 years later...

Hello,

I would like to move this topic up. Please help me in a problem.

I have a part of code:

#include <IE.au3>
;_IEErrorHandlerRegister()
Local $oIE = _IEAttach ('test_URL', 'URL')
Local $oFrames = _IEFrameGetCollection($oIE)
Local $iNumFrames = @extended
If $iNumFrames > 0 Then
    If _IEIsFrameSet($oIE) Then
        MsgBox(0, "Frame Info", "Page contains " & $iNumFrames & " frames in a FrameSet")
    Else
        MsgBox(0, "Frame Info", "Page contains " & $iNumFrames & " iFrames")
    EndIf
Else
    MsgBox(0, "Frame Info", "Page contains no frames")
EndIf
Local $oFrame = _IEFrameGetObjByName($oIE, "where_to_go")

After running the script, I get AutoIt error:

C:\Program Files\AutoIt3\Include\IE.au3 (726) : ==> The requested action with this object has failed.:

If String($o_object.document.body.tagName) = "FRAMESET" Then

If String($o_object.document^ ERROR

Looks like BODY is not defined in my page. But on another machine, this script is passed.

I use AutoIt for about two years and now I faced to this problem. I guess I made some wrong settings on SciTE, AutoIt, or Internet Explorer (IE8) occasionally.

Could anybody help?

Link to comment
Share on other sites

You'll get a much better console message if you take the comment off of the _IEErrorHandlerRegister() line. Do that and post the results.

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

Hello, now I have another message:

--> COM Error Encountered in example.au3

----> $IEComErrorScriptline = 726

----> $IEComErrorNumberHex = 80020009

----> $IEComErrorNumber = -2147352567

----> $IEComErrorWinDescription = Access is denied.

----> $IEComErrorDescription = Access is denied.

----> $IEComErrorSource =

----> $IEComErrorHelpFile = C:\Windows\System32\mshtml.hlp

----> $IEComErrorHelpContext = 0

----> $IEComErrorLastDllError = 0

--> COM Error Encountered in example.au3

----> $IEComErrorScriptline = 2227

----> $IEComErrorNumberHex = 80020009

----> $IEComErrorNumber = -2147352567

----> $IEComErrorWinDescription = Access is denied.

----> $IEComErrorDescription = Access is denied.

----> $IEComErrorSource =

----> $IEComErrorHelpFile = C:\Windows\System32\mshtml.hlp

----> $IEComErrorHelpContext = 0

----> $IEComErrorLastDllError = 0

C:\Program Files\AutoIt3\Include\IE.au3 (2270) : ==> Object referenced outside a "With" statement.:

Return SetError($_IEStatus_Success, $oTemp.GetElementsByTagName($s_TagName).length, $oTemp.GetElementsByTagName($s_TagName))

Return SetError($_IEStatus_Success, $oTemp.GetElementsByTagName($s_TagName)^ ERROR

Link to comment
Share on other sites

Access is denied. indicates that you are running into a security issue enforced by IE whereby you cannot gain access to a frame whose source is in another domain. You'll need to open the frame in a new window with _IECreate. Search for cross-domain security.

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

  • 2 weeks later...

I tried to open the frame in another window by _IECreate but if I click the links in it, empty windows with white body appear.

Could you explain me, how could it happen? Why I can click the links manually - without any 'Access Denied' message - but I cannot click them by AutoIt command?

Link to comment
Share on other sites

Can't guess. It depends on how the page is scripted. The frame restriction is because of IE cross-domain scripting security -- google 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

Now I found an IE setting which helped me to get access to frames.

IT is : Tools > Internet Options > Security > Local Intranet. Click Sites.

Some settings for my IE are managed by administrator, but I unchecked 'Automatically detect intranet network'.

After that, I got access to my all resources.

Thank you. May be my decision would help somebody.

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...