I tested Jarmo's suggestion regarding changing security options (*Allow 
active content to run files on My Computer* and *Allow software to run or 
install even if the signature is invalid*) and it worked in my preliminary 
test. Attached is the HTML file, my screenshot from the IE settings, and I 
tested these settings with the script below (with results):

Windows XP Service Pack 3
IE 8

Script:

browser = Watir::Browser.new
browser.goto 'file:///c:/test.html'
browser.execute_script "window.confirm = function() { return true; }"
browser.execute_script "window.alert = function() { return true; }"
browser.execute_script "window.prompt = function() { return true; }"
browser.button(:value => 'Press').click

Results from IRB:

irb(main):001:0> browser = Watir::Browser.new
=> #<Watir::IE:0x..f2d5577a url="about:blank" title="">
irb(main):002:0> browser.goto 'file:///c:/test.html'
=> 0.078111
irb(main):003:0> browser.execute_script "window.confirm = function() { 
return true; }"
=> nil
irb(main):004:0> browser.execute_script "window.alert = function() { return 
true; }"
=> nil
irb(main):005:0> browser.ecute_script "window.prompt = function() { return 
true; }"
=> nil
irb(main):006:0> browser.button(:value => 'Press').click
=> 0.015622
irb(main):007:0>

Thank you very much, Jarmo! This issue has been bugging me since 
watir-classic 3.1.0. 

captin: Can you recreate my results successfully?

On Wednesday, February 13, 2013 3:40:20 PM UTC-5, captin wrote:
>
> The HTML code worked properly when I fixed the extra character issue you 
> highlighted. When I run the "typeof JSON" command it returns "object" and 
> when I run "typeof JSON.stringify" it returns "function".
>  
> My enterprise security settings don't allow me to change that setting so 
> I'm unable to prove out your theory. On my system, the setting appears to 
> be disabled by default, and when I open the HTML file from your previous 
> suggestion I get a message saying there's blocked content, but I'm able to 
> click a button to allow it. I am able to modify my registry, so if I can 
> locate that setting in the registry I might be able to test out your theory.
>  
> In the meantime, maybe enroxorz is able to proove it out.
>  
> Thanks.
>  
>
> On Wednesday, February 13, 2013 2:28:56 PM UTC-6, Jarmo Pertman wrote:
>
>> I think that i can reproduce the problem with tweaking a setting in IE.
>>
>> There is a setting under Internet Options -> Advanced -> Security -> 
>> Allow active content to run in files on My Computer. This is disabled by 
>> default. Enable it, restart IE and try if it will make #execute_script 
>> working.
>>
>> Jarmo Pertman
>> -----
>> IT does really matter - http://itreallymatters.net
>>
>> On Wednesday, February 13, 2013 10:15:50 PM UTC+2, Jarmo Pertman wrote:
>>>
>>> I just noticed an error in my previous code. I have an extra ' character 
>>> at the start of src attribute value :(
>>>
>>> Please try again with the following correct code:
>>> <html>
>>>   <head>
>>>     <script type="text/javascript" 
>>> src="file:///C:/Ruby193/lib/ruby/gems/1.9.1/gems/watir-classic-3.4.0/lib/watir-classic/ext/json2.js"></script>
>>>   </head>
>>>   <body>
>>>     foo
>>>   </body>
>>> </html>
>>>
>>> Jarmo Pertman
>>> -----
>>> IT does really matter - http://itreallymatters.net
>>>
>>> On Wednesday, February 13, 2013 3:14:42 PM UTC+2, enroxorz wrote:
>>>>
>>>> Please make sure to post your findings. I've been monitoring this 
>>>> because I also have the same issue as you (didn't post because I didn't 
>>>> have anything new to add to this).
>>>>
>>>> On Tuesday, February 12, 2013 5:51:37 PM UTC-5, captin wrote:
>>>>>
>>>>> The issue still exists when trying your suggestion. I will play around 
>>>>> with security settings and see if that leads to any resolution.
>>>>>  
>>>>> Thanks!
>>>>>
>>>>> On Saturday, February 9, 2013 5:19:14 AM UTC-6, Jarmo Pertman wrote:
>>>>>
>>>>>> To be honest - i'm not sure where's the problem since i cannot 
>>>>>> reproduce it on my IE8. I have one idea - create a local html file with 
>>>>>> the 
>>>>>> contents:
>>>>>> <html>
>>>>>>   <head>
>>>>>>     <script type="text/javascript" 
>>>>>> src="'file:///C:/Ruby193/lib/ruby/gems/1.9.1/gems/watir-classic-3.4.0/lib/watir-classic/ext/json2.js"></script>
>>>>>>   </head>
>>>>>>   <body>
>>>>>>     foo
>>>>>>   </body>
>>>>>> </html>
>>>>>>
>>>>>> Open that file with your internet explorer and try then the 
>>>>>> JavaScript commands in the developer tools. If they still don't work 
>>>>>> then 
>>>>>> it has probably something to do with your IE security settings.
>>>>>>
>>>>>> Jarmo Pertman
>>>>>> -----
>>>>>> IT does really matter - http://itreallymatters.net
>>>>>>
>>>>>>
>>>>>> On Friday, February 8, 2013 5:51:27 PM UTC+2, captin wrote:
>>>>>>>
>>>>>>> Same result. The script errors just continue to pile up.
>>>>>>>  
>>>>>>> Do you think this is a bug? If so, is it a json2.js or a 
>>>>>>> watir-classic issue?
>>>>>>>  
>>>>>>> Thanks.
>>>>>>>  
>>>>>>>
>>>>>>> On Friday, February 8, 2013 1:39:14 AM UTC-6, Jarmo Pertman wrote:
>>>>>>>
>>>>>>>> That's sad to hear. What if you run execute_script two times in a 
>>>>>>>> row - will you also get an error for the second run?
>>>>>>>>
>>>>>>>> Jarmo Pertman
>>>>>>>> -----
>>>>>>>> IT does really matter - http://itreallymatters.net
>>>>>>>>
>>>>>>>> On Thursday, February 7, 2013 12:58:36 AM UTC+2, captin wrote:
>>>>>>>>>
>>>>>>>>> Jarmo,
>>>>>>>>>  
>>>>>>>>> My apologies for the versioning miscommunication. My initial post 
>>>>>>>>> and initial error messages are correct with Ruby 1.9.3 and 
>>>>>>>>> Watir-Classic 
>>>>>>>>> 3.4.0, but the line "
>>>>>>>>> json2.src='file:///C:/Ruby192/lib/ruby/gems/1.9.1/gems/watir-classic-3.3.0/lib/watir-classic/ext/json2.js';"
>>>>>>>>>  
>>>>>>>>> is probably what threw you off. That was a copy/paste mistake. The 
>>>>>>>>> line 
>>>>>>>>> that I truly used for troubleshooting was "
>>>>>>>>> json2.src='file:///C:/Ruby193/lib/ruby/gems/1.9.1/gems/watir-classic-3.4.0/lib/watir-classic/ext/json2.js';"
>>>>>>>>>  
>>>>>>>>> I hope this clears things up.
>>>>>>>>>  
>>>>>>>>> I also tried copying the json2.js file you linked into my 
>>>>>>>>> watir-classic gem, and then I ran the same troubleshooting commands 
>>>>>>>>> along 
>>>>>>>>> with the original watir command I am trying to use. Same results, 
>>>>>>>>> even 
>>>>>>>>> though the two json2.js files are slightly different.
>>>>>>>>>  
>>>>>>>>>  
>>>>>>>>>
>>>>>>>>> On Wednesday, February 6, 2013 11:11:19 AM UTC-6, Jarmo Pertman 
>>>>>>>>> wrote:
>>>>>>>>>
>>>>>>>>>> Hi!
>>>>>>>>>>
>>>>>>>>>> I just noticed that you had Ruby 1.9.3 vs 1.9.2 and Watir-Classic 
>>>>>>>>>> 3.3.0 vs 3.4.0 in your error messages.
>>>>>>>>>> Which one was it actually and why do they differ?
>>>>>>>>>>
>>>>>>>>>> Can you try to copy the watir-classic gem's json2.js file over 
>>>>>>>>>> with the contents of 
>>>>>>>>>> https://raw.github.com/douglascrockford/JSON-js/master/json2.js and 
>>>>>>>>>> see if that makes any difference?
>>>>>>>>>>
>>>>>>>>>> Jarmo Pertman
>>>>>>>>>> -----
>>>>>>>>>> IT does really matter - http://itreallymatters.net
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>> On Monday, February 4, 2013 4:53:52 PM UTC+2, captin wrote:
>>>>>>>>>>>
>>>>>>>>>>> Jarmo,
>>>>>>>>>>>  
>>>>>>>>>>> There is no error when I copy the local json2.js file (located 
>>>>>>>>>>> at 
>>>>>>>>>>> file:///C:/Ruby193/lib/ruby/gems/1.9.1/gems/watir-classic-3.4.0/lib/watir-classic/ext/json2.js)
>>>>>>>>>>>  
>>>>>>>>>>> contents to the IE developer tools window. When I run the stringify 
>>>>>>>>>>> command 
>>>>>>>>>>> you gave me, the out put is "{"a":"foo"}". And I get the exact 
>>>>>>>>>>> same results when I use the other json2.js you linked and then run 
>>>>>>>>>>> the 
>>>>>>>>>>> command again.
>>>>>>>>>>> I also tried the original commands you gave previously (typeof 
>>>>>>>>>>> JSON and typeof JSON.stringify) after I loaded the json2.js script 
>>>>>>>>>>> manually, and the outputs were "object" and "function" respectively.
>>>>>>>>>>>  
>>>>>>>>>>> In your opinion, is there some sort of automatic loading or 
>>>>>>>>>>> accessing issue between JSON and IE?
>>>>>>>>>>>  
>>>>>>>>>>> Thanks.
>>>>>>>>>>>  
>>>>>>>>>>> On Saturday, February 2, 2013 9:47:53 AM UTC-6, Jarmo Pertman 
>>>>>>>>>>> wrote:
>>>>>>>>>>>
>>>>>>>>>>>> Can you try by copying all the contents of the json2.js file 
>>>>>>>>>>>> from 
>>>>>>>>>>>> file:///C:/Ruby192/lib/ruby/gems/1.9.1/gems/watir-classic-3.3.0/lib/watir-classic/ext/json2.js
>>>>>>>>>>>>  to 
>>>>>>>>>>>> your IE developer tools window? Do you get any errors when doing 
>>>>>>>>>>>> that too? 
>>>>>>>>>>>> What does this code return after doing that: JSON.stringify({a: 
>>>>>>>>>>>> "foo"})
>>>>>>>>>>>>
>>>>>>>>>>>> What about using the code at 
>>>>>>>>>>>> https://raw.github.com/douglascrockford/JSON-js/master/json2.js?
>>>>>>>>>>>>
>>>>>>>>>>>> Jarmo Pertman
>>>>>>>>>>>> -----
>>>>>>>>>>>> IT does really matter - http://itreallymatters.net
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>> On Thursday, January 31, 2013 1:01:11 AM UTC+2, captin wrote:
>>>>>>>>>>>>>
>>>>>>>>>>>>> I have encountered an issue with execute_script using IE9 with 
>>>>>>>>>>>>> ruby 1.9.3p327 and watir-classic 3.4.0. I was doing some research 
>>>>>>>>>>>>> and found 
>>>>>>>>>>>>> my exact same issue detailed at Stack 
>>>>>>>>>>>>> Overflow<http://stackoverflow.com/questions/14142905/issue-with-execute-script>,
>>>>>>>>>>>>>  
>>>>>>>>>>>>> but the thread is stale (and I'm too new to be able to comment on 
>>>>>>>>>>>>> the issue 
>>>>>>>>>>>>> there). Jarmo was assisting but the OP hasn't responded in over 
>>>>>>>>>>>>> three weeks.
>>>>>>>>>>>>>  
>>>>>>>>>>>>> I hate redundancy but I also hate waiting indefinitely so I 
>>>>>>>>>>>>> figured I'd pose the question here. Using the following code:
>>>>>>>>>>>>>  
>>>>>>>>>>>>> browser.execute_script "window.confirm = function() { return 
>>>>>>>>>>>>> true; }"
>>>>>>>>>>>>>  
>>>>>>>>>>>>> I get the following error:
>>>>>>>>>>>>>  
>>>>>>>>>>>>> WIN32OLERuntimeError: (in OLE method `execScript': )
>>>>>>>>>>>>>     OLE error code:80020101 in <Unknown>
>>>>>>>>>>>>>       Could not complete the operation due to error 80020101.
>>>>>>>>>>>>>     HRESULT error code:0x80020009
>>>>>>>>>>>>>       Exception occurred.
>>>>>>>>>>>>>         from 
>>>>>>>>>>>>> C:/Ruby193/lib/ruby/gems/1.9.1/gems/watir-classic-3.4.0/lib/watir-classic/page-container.rb:29:in
>>>>>>>>>>>>>  
>>>>>>>>>>>>> `method_missing'
>>>>>>>>>>>>>         from 
>>>>>>>>>>>>> C:/Ruby193/lib/ruby/gems/1.9.1/gems/watir-classic-3.4.0/lib/watir-classic/page-container.rb:29:in
>>>>>>>>>>>>>  
>>>>>>>>>>>>> `rescue in execute_script'
>>>>>>>>>>>>>         from 
>>>>>>>>>>>>> C:/Ruby193/lib/ruby/gems/1.9.1/gems/watir-classic-3.4.0/lib/watir-classic/page-container.rb:22:in
>>>>>>>>>>>>>  
>>>>>>>>>>>>> `execute_script'
>>>>>>>>>>>>>         from (irb):14
>>>>>>>>>>>>>         from C:/Ruby193/bin/irb:12:in `<main>'
>>>>>>>>>>>>>  
>>>>>>>>>>>>> The following JavaScript errors are also present in the 
>>>>>>>>>>>>> browser:
>>>>>>>>>>>>>  
>>>>>>>>>>>>> SCRIPT1014: Invalid character
>>>>>>>>>>>>> *json2.js, line 1 character 1*
>>>>>>>>>>>>>  
>>>>>>>>>>>>> SCRIPT5009: 'JSON' is undefined 
>>>>>>>>>>>>> *edit-location?pageTitle=Edit 
>>>>>>>>>>>>> Location&contactId=8590307238&folderId=0&folderName=%5BGlobal%5D&cardId=8590242330,
>>>>>>>>>>>>>  
>>>>>>>>>>>>> line 1 character 1*
>>>>>>>>>>>>>  
>>>>>>>>>>>>> Jarmo, I performed the actions you suggested at Stack Overflow 
>>>>>>>>>>>>> and got the following results:
>>>>>>>>>>>>>  
>>>>>>>>>>>>> >> typeof JSON
>>>>>>>>>>>>> "undefined" 
>>>>>>>>>>>>>  
>>>>>>>>>>>>> >> typeof JSON.stringify 
>>>>>>>>>>>>> "'JSON' is undefined" 
>>>>>>>>>>>>>  
>>>>>>>>>>>>> >> if (!window.JSON || !window.JSON.stringify) {
>>>>>>>>>>>>> var json2=document.createElement('script');
>>>>>>>>>>>>> json2.type='text/javascript';
>>>>>>>>>>>>> json2.src='file:///C:/Ruby192/lib/ruby/gems/1.9.1/gems/watir-classic-3.3.0/lib/watir-classic/ext/json2.js';
>>>>>>>>>>>>>  
>>>>>>>>>>>>>
>>>>>>>>>>>>> document.getElementsByTagName('head')[0].appendChild(json2)
>>>>>>>>>>>>> } 
>>>>>>>>>>>>> SCRIPT1014: Invalid character 
>>>>>>>>>>>>> *json2.js, line 1 character 1*<https://groups.google.com/forum/0> 
>>>>>>>>>>>>> [object] {
>>>>>>>>>>>>> nextSibling : ,
>>>>>>>>>>>>> onresizeend : null,
>>>>>>>>>>>>> onrowenter : null,
>>>>>>>>>>>>> aria-haspopup : "",
>>>>>>>>>>>>> childNodes : [object],
>>>>>>>>>>>>> ondragleave : null,
>>>>>>>>>>>>> oncut : null,
>>>>>>>>>>>>> clientHeight : 0,
>>>>>>>>>>>>> onbeforepaste : null,
>>>>>>>>>>>>> ondragover : null
>>>>>>>>>>>>> ...
>>>>>>>>>>>>> } 
>>>>>>>>>>>>> Do you or anyone else have any further troubleshooting steps I 
>>>>>>>>>>>>> can attempt?
>>>>>>>>>>>>>  
>>>>>>>>>>>>> Thanks!
>>>>>>>>>>>>>
>>>>>>>>>>>>

-- 
-- 
Before posting, please read http://watir.com/support. In short: search before 
you ask, be nice.

[email protected]
http://groups.google.com/group/watir-general
[email protected]

--- 
You received this message because you are subscribed to the Google Groups 
"Watir General" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
For more options, visit https://groups.google.com/groups/opt_out.


<<attachment: IE_Settings.png>>

Reply via email to