MozRepl::RemoteObject: [Exception... "Illegal value" nsresult: "0x800
+70057 (NS_ERROR
_ILLEGAL_VALUE)" location: "JS frame :: chrome://mozrepl/content/repl
+.js -> file:///
C:/Documents%20and%20Settings/Administrator/Programdata/Mozilla/Firefo
+x/Profiles/kaq7
hscq.default/mozrepl.tmp.js :: anonymous :: line 5" data: no] at C:\D
+ocuments and Se
ttings\Administrator\Skrivebord\PRINTLOOKER\firefox.pl line 40
I get this error when running this script: #Start
use WWW::Mechanize::FireFox
#URL
$url = 'http://host/url/site';
#New instance
my $mech = WWW::Mechanize::FireFox->new();
#Exitkode
my $EXITCODE = 0;
#Get content of URL
$mech->get($url);
$str = 'javascript:InstallPrinter()';
eval_in_page_with_redefined_alert($mech,$str, sub { print "Caught aler
+t(): @_" });
#$eval_in_page=>('javascript:InstallPrinter()');
#$mech->get('javascript:InstallPrinter()');
sub eval_in_page_with_redefined_alert {
my ($self,$str,$redefined_alert) = @_;
my $eval_in_sandbox = $self->repl->declare(<<'JS');
function (w,str,myalert) {
var unsafeWin = w.wrappedJSObject;
var safeWin = XPCNativeWrapper(unsafeWin);
var sandbox = Components.utils.Sandbox(safeWin);
sandbox.window = safeWin;
sandbox.window.alert = myalert; // <--
sandbox.alert = myalert; // <--
sandbox.document = sandbox.window.document;
sandbox.__proto__ = unsafeWin;
var res = Components.utils.evalInSandbox(str, sandbox);
return [res,typeof(res)];
};
JS
my $window = $self->tab->{linkedBrowser}->{contentWindow};
my $uri = $self->uri;
return @{ $eval_in_sandbox->("$uri",$window,$redefined_alert ) };
};
|