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 > > > > > > Wtr-general@rubyforge.org > > > > > > http://rubyforge.org/mailman/listinfo/wtr-general > > > > > > > > > > > > > > > > > > > > > _______________________________________________ > > > > > Wtr-general mailing list > > > > > Wtr-general@rubyforge.org > > > > > http://rubyforge.org/mailman/listinfo/wtr-general > > > > > _______________________________________________ > > > > > Wtr-general mailing list > > > > > Wtr-general@rubyforge.org > > > > > http://rubyforge.org/mailman/listinfo/wtr-general > > > > > > > > > > > > > > > > > _______________________________________________ > > > > Wtr-general mailing list > > > > Wtr-general@rubyforge.org > > > > http://rubyforge.org/mailman/listinfo/wtr-general > > > > > > > > > > > > > _______________________________________________ > > > Wtr-general mailing list > > > Wtr-general@rubyforge.org > > > http://rubyforge.org/mailman/listinfo/wtr-general > > > > > > > > > _______________________________________________ > Wtr-general mailing list > Wtr-general@rubyforge.org > http://rubyforge.org/mailman/listinfo/wtr-general > -- Prema Arya _______________________________________________ Wtr-general mailing list Wtr-general@rubyforge.org http://rubyforge.org/mailman/listinfo/wtr-general
_______________________________________________ Wtr-general mailing list Wtr-general@rubyforge.org http://rubyforge.org/mailman/listinfo/wtr-general