RichardOnRails
1/24/2007 3:50:00 AM
Hi David,
Your technique worked perfectly. I was disappointed by my system's
performance, however.
I used a .rbw extension to avoid the creation of a temporary Command
Window. Is there a simple approach to putting up a graphical progress
bar that:
-- loops while checking to see whether the IE window had opened yet;
and
-- closes when the IE window is displayed?
Best wishes,
Richard
On Jan 23, 7:04 pm, "mully" <david.mul...@gmail.com> wrote:
> On Jan 23, 4:51 pm, "Richard"
>
>
>
> <RichardDummyMailbox58...@USComputerGurus.com> wrote:
> > Hi,
>
> > I'm running WinXP/SP2 and Ruby 1.8.2. I tried the sample below from The
> > Ruby Way,2nd ed., with modified HTML (which I tested independently).
> > When I run it in a Command Window, I get:
>
> > K:\_Projects\Ruby\_Ruby_Techniques\Win32Ole>TestingOleWithHtml.rb
> > K:/_Projects/Ruby/_Ruby_Techniques/Win32Ole/TestingOleWithHtml.rb:22:in
> > `method_missing': document (WIN32OLERuntimeError)
> > OLE error code:80004005 in <Unknown>
> > <No Description>
> > HRESULT error code:0x80020009
> > Exception occurred. from
> > K:/_Projects/Ruby/_Ruby_Techniques/Win32Ole/TestingOleWithHtml.rb:22
>
> > Any ideas?
>
> > Thanks in Advance,
> > Richard
>
> > # Source: The Ruby Way, 2nd ed., pg. 585
>
> > require "win32ole"
>
> > msg = "Hello, World"
>
> > html = <<EOF
> > <html>
> > <head>
> > <title>Hello, World</title>
> > </head>
> > <body>
> > <h1><center>My "Hello, World" Demo</center></h1>
> > <p>
> > <h2><center>Not much of a demo, eh?</center></h2>
> > </body>
> > </html>
> > EOF
>
> > ie = WIN32OLE.new("InternetExplorer.Application")
>
> > ie.document.open # <====
> > Line 22
> > ie.document.write html
> > ie.document.close
>
> > sleep 5
> > quitTry navigating to a page before writing to the Document object. The
> code below worked for me...
>
> ie = WIN32OLE.new("InternetExplorer.Application")
> ie.Visible = 1
> ie.Navigate('about:blank')
> sleep(1) while ie.ReadyState != 4
> ie.Document.open
> ie.Document.write html
> ie.Document.close
> sleep 5
> quit
>
> Hope that helps.
>
> Mully