hi Prema,
Sorry it not working..
It is printing 1 in text file.
please help!!
Regards
Shalini Gupta
On 4/25/07, Prema Arya <[EMAIL PROTECTED]> wrote:
Hi Shalini,
Just try this code (modified your code a little)
def text(wait_seconds = 1)
# sleep 0.3
autoit = WIN32OLE.new("AutoItX3.Control")
autoit.WinWait("Microsoft Internet Explorer", nil,
wait_seconds) if wait_seconds
s = autoit.WinGetText("Microsoft Internet Explorer")
file = File.open("c:\\test.txt", "w") # DONT MAKE
YOUR VARIABLES GLOBAL UNNECESSARILY
file.puts(s)
file.close
s unless s == "1" # NOT SURE WHY YOU ARE DOING THIS
end
Let me know if this works.
Regards,
Prema
On 4/25/07, SHALINI GUPTA <[EMAIL PROTECTED]> wrote:
>
> hi,
>
> i have tried to write this as
>
> def text(wait_seconds = 1)
> # sleep 0.3
> autoit = WIN32OLE.new("AutoItX3.Control")
> autoit.WinWait("Microsoft Internet Explorer", nil,
> wait_seconds) if wait_seconds
> s = autoit.WinGetText ("Microsoft Internet Explorer")
> $File = File.open("c:\\test.txt", "w")
> $File.puts(s.to_s)
> s unless s == "1"
> end
>
> but it is printing only 1..in the file.
> please help.
>
> shalini gupta
>
> On 4/25/07, SHALINI GUPTA < [EMAIL PROTECTED] > wrote:
> >
> > hi,
> > Thanks for quick reply...
> >
> > please tell me how can i write output of one method to a file....
> >
> > my method is..
> > def text(wait_seconds = 1)
> > # sleep 0.3
> > autoit.WinWait(WINDOW_TITLE, nil, wait_seconds) if
> > wait_seconds
> > s = autoit.WinGetText(WINDOW_TITLE)
> > s unless s == "1"
> > end
> > please help me..
> >
> > Thanks In Advance
> > Regards
> > Shalini Gupta
> >
> > On 4/25/07, Angrez Singh <[EMAIL PROTECTED]> wrote:
> > >
> > > Hi,
> > > As Paul said that you need to store the text in a file and then read
> > > that file in your main process. Because pop up's are handled in different
> > > process. So even if you return that value from the method it won't be
> > > visible to main process. Write this value to a file and then read the
> > > contents.
> > >
> > > Regards,
> > > Angrez
> > >
> > > On 4/25/07, SHALINI GUPTA < [EMAIL PROTECTED] > wrote:
> > > >
> > > > hi,
> > > >
> > > > thanks for reply!!!
> > > >
> > > > but i have used autoit and WinGet Text as:---(with no success)
> > > >
> > > > #----- js_dialog.rb -----
> > > >
> > > > require 'win32ole'
> > > > require 'test/unit'
> > > > require 'test/unit/ui/console/testrunner'
> > > > #
> > > > # Use AutoIt to read and close Javascript dialog windows
> > > > #
> > > > module JavascriptDialog
> > > >
> > > > #
> > > > # Target javascript dialogs with this window title
> > > > #
> > > > WINDOW_TITLE = "Microsoft Internet Explorer"
> > > >
> > > > class << self
> > > >
> > > > #
> > > > # Return the text contained in a javascript dialog (e.g.
> > > > an "alert()")
> > > > # if such a dialog is present or appears within
> > > > +wait_seconds+.
> > > > #
> > > > def text(wait_seconds = 1)
> > > > # sleep 0.3
> > > > autoit.WinWait(WINDOW_TITLE, nil, wait_seconds) if
> > > > wait_seconds
> > > > s = autoit.WinGetText(WINDOW_TITLE)
> > > > s unless s == "1"
> > > > end
> > > >
> > > > #
> > > > # Close any active javascript dialog
> > > > #
> > > > def close
> > > > autoit.WinClose WINDOW_TITLE
> > > > end
> > > >
> > > > #
> > > > # Press the "OK" button on a javascript dialog
> > > > #
> > > > def ok
> > > > autoit.ControlClick(WINDOW_TITLE, "", "OK")
> > > > end
> > > > #
> > > > # Press the "Cancel" button on a javascript dialog
> > > > #
> > > > def cancel
> > > > autoit.ControlClick (WINDOW_TITLE, "", "Cancel")
> > > > end
> > > > #
> > > > # Press the "Yes" button on a javascript dialog
> > > > #
> > > > def yes
> > > > autoit.ControlClick(WINDOW_TITLE, "", "Yes")
> > > > end
> > > > #
> > > > # Press the "No" button on a javascript dialog
> > > > #
> > > > def no
> > > > autoit.ControlClick(WINDOW_TITLE, "", "No")
> > > > end
> > > >
> > > > private
> > > >
> > > > #
> > > > # Return an AutoIt COM object, creating it if it
> > > > doesn't already
> > > > # exist
> > > > #
> > > > def autoit
> > > > unless defined? @@autoit
> > > > @@autoit = WIN32OLE.new("AutoItX3.Control")
> > > > end
> > > > @@autoit
> > > > end
> > > > end
> > > > end
> > > >
> > > > module Test::Unit::Assertions
> > > > #
> > > > # Passes if a Javascript dialog appears within +wait_seconds+
> > > > and its
> > > > # text matches the given (optional) pattern.
> > > > #
> > > > # Use like this:
> > > > # assert_js_dialog do
> > > > # watir_command_to_make_dialog_appear
> > > > # end
> > > > # Or like this:
> > > > # assert_js_dialog /Text to find in the dialog/, "Cancel" do
> > > > # watir_command_to_make_dialog_appear
> > > > # end
> > > > #
> > > > def assert_js_dialog(pattern = //, action = "close", message =
> > > > nil)
> > > > _wrap_assertion do
> > > > begin
> > > > pipe = IO.popen("ruby exetry.rb #{action}")
> > > > yield
> > > > window_text = pipe.read rescue ""
> > > > pipe.close
> > > > unless window_text.empty?
> > > > assert_block(build_message(message,
> > > > "<?> not found in JavaScript dialog.",
> > > > pattern)) do
> > > > window_text.match(pattern)
> > > > end
> > > > else
> > > > raise Test::Unit:: AssertionFailedError.new(
> > > > build_message(message, "No JavaScript
> > > > window found."))
> > > > end
> > > > ensure
> > > > pipe.close if pipe && !pipe.closed?
> > > > end
> > > > end
> > > > end
> > > > end
> > > >
> > > > # test - will close and print the text of an opened javascript
> > > > dialog if
> > > > # run as "ruby js_dialog.rb"
> > > > if $0 == __FILE__
> > > > action = ARGV.shift || "close"
> > > > print JavascriptDialog.text || ""
> > > > JavascriptDialog.send action
> > > > end
> > > >
> > > > if possible then please help me...and give me some code...
> > > >
> > > > Regards
> > > > Shalini Gupta
> > > >
> > > >
> > > > On 4/24/07, Paul Rogers < [EMAIL PROTECTED] > wrote:
> > > > >
> > > > > there is stuff in the winclicker to do it too. We've got the
> > > > > javascript pop up text back to the main app by saving it to a file
> > > > >
> > > > >
> > > > > Paul
> > > > >
> > > > > Hi,
> > > > >
> > > > > As far as I know, clicking some button on Pop up window happens
> > > > > in a different process (different from current process in which your
script
> > > > > is running). Correct me if I am wrong here?
> > > > >
> > > > > You can get the text using AutoIt3 and WinGetText method. The
> > > > > only thing you need to find out is how you communicate data or the
text
> > > > > between two different processes.
> > > > >
> > > > > Regards,
> > > > > Angrez
> > > > >
> > > > > On 4/24/07, SHALINI GUPTA < [EMAIL PROTECTED] > wrote:
> > > > > >
> > > > > > HI List,
> > > > > >
> > > > > > Please help regarding popup.
> > > > > > How to get the text of a popup window..
> > > > > > its very urgent please help.
> > > > > >
> > > > > > Regards
> > > > > > Shalini gupta
> > > > > >
> > > > > > _______________________________________________
> > > > > > Wtr-general mailing list
> > > > > > [email protected]
> > > > > > http://rubyforge.org/mailman/listinfo/wtr-general
> > > > > >
> > > > >
> > > > >
> > > > > _______________________________________________
> > > > > Wtr-general mailing list
> > > > > [email protected]
> > > > > http://rubyforge.org/mailman/listinfo/wtr-general
> > > > > _______________________________________________
> > > > > Wtr-general mailing list
> > > > > [email protected]
> > > > > http://rubyforge.org/mailman/listinfo/wtr-general
> > > > >
> > > >
> > > >
> > > > _______________________________________________
> > > > Wtr-general mailing list
> > > > [email protected]
> > > > http://rubyforge.org/mailman/listinfo/wtr-general
> > > >
> > >
> > >
> > > _______________________________________________
> > > Wtr-general mailing list
> > > [email protected]
> > > http://rubyforge.org/mailman/listinfo/wtr-general
> > >
> >
> >
>
> _______________________________________________
> Wtr-general mailing list
> [email protected]
> http://rubyforge.org/mailman/listinfo/wtr-general
>
--
Prema Arya
_______________________________________________
Wtr-general mailing list
[email protected]
http://rubyforge.org/mailman/listinfo/wtr-general
_______________________________________________
Wtr-general mailing list
[email protected]
http://rubyforge.org/mailman/listinfo/wtr-general