Hi,
I am running a windows app under wine that prints text to the screen. This can be copied and pasted into wine's notepad. Is there any way to get wine to simply output all text written by the app to standard out? This would save me a lot of hassle :) I don't mind if it outputs far too much (text from buttons etc) as I am planning on filtering the information in any case.
It has been suggested to me to edit TextOut (or ExtTextOut) in dlls/gdi somewhere and simply add a printf. I had a look but this is the first time I have ever looked at wine source and I am completely baffled. Any help is very much appreciated.
Cheers, Raphael
On Friday 25 March 2005 16:14, Raphael Clifford wrote:
I am running a windows app under wine that prints text to the screen. This can be copied and pasted into wine's notepad. Is there any way to get wine to simply output all text written by the app to standard out?
I remember I did something like this to extract the word list from a Dutch dictionary program:
WINEDEBUG="trace+text" wine <app.exe> 2>&1
Because my program can't display all words at once and because I didn't want to click the mouse button a hundred thousand times I wrote a little program to do it.
I used xwininfo and xev to find the window id and coordinates of the down arrow on the scroll bar for the word list. The program would then send X button press and release events to this window in a loop.
-Hans
Thanks for that idea,
I was able to capture some output from Dragon Nat. Speaking using that idea.
trace:text:DrawTextExW L"New-Paragraph ", -1, [(17,2)-(729,18)] 00000824 trace:text:DrawTextExW Params: iTabLength=0, iLeftMargin=0, iRightMargin=0 trace:text:DrawTextExW L"this text was dictated into NaturallySpeaking for ", -1, [(17,2)-(729,18)] 00000824
there's almost certainly a better way to do this but at least that gives me a rudementary way of grabbing dictated text in a Linux process.
I could probably pipe it through grep to filter out the actual text from the rest.
Unless anyone has a better idea ....
Peter
On Fri, 25 Mar 2005 22:01:07 +0100, Hans Leidekker hans@it.vu.nl wrote:
On Friday 25 March 2005 16:14, Raphael Clifford wrote:
I am running a windows app under wine that prints text to the screen. This can be copied and pasted into wine's notepad. Is there any way to get wine to simply output all text written by the app to standard out?
I remember I did something like this to extract the word list from a Dutch dictionary program:
WINEDEBUG="trace+text" wine <app.exe> 2>&1
Because my program can't display all words at once and because I didn't want to click the mouse button a hundred thousand times I wrote a little program to do it.
I used xwininfo and xev to find the window id and coordinates of the down arrow on the scroll bar for the word list. The program would then send X button press and release events to this window in a loop.
-Hans
Hans Leidekker wrote:
On Friday 25 March 2005 16:14, Raphael Clifford wrote:
I am running a windows app under wine that prints text to the screen. This can be copied and pasted into wine's notepad. Is there any way to get wine to simply output all text written by the app to standard out?
I remember I did something like this to extract the word list from a Dutch dictionary program:
WINEDEBUG="trace+text" wine <app.exe> 2>&1
Because my program can't display all words at once and because I didn't want to click the mouse button a hundred thousand times I wrote a little program to do it.
I used xwininfo and xev to find the window id and coordinates of the down arrow on the scroll bar for the word list. The program would then send X button press and release events to this window in a loop.
-Hans
Thanks very much that is fantastic. Also avoids my having to edit the source code :)
There is something very simple I don't understand though. Using those options on pokerstars.exe (from www.pokerstars.com), for example, you constantly get text that is not being output to the pokerstars screen on top of the stuff that is. To give a concrete example, try joining a table and look at the output of wine using WINEDEBUG="text". It is constantly printing out messages that seem to relate to the previous login screen! It seems I don't really understand what is going on. Any ideas? Is the login screen secretly hanging around somewhere but just not visible in wine?
Cheers, Raphael
Le vendredi 25 mars 2005 à 22:01 +0100, Hans Leidekker a écrit :
On Friday 25 March 2005 16:14, Raphael Clifford wrote:
I am running a windows app under wine that prints text to the screen. This can be copied and pasted into wine's notepad. Is there any way to get wine to simply output all text written by the app to standard out?
I remember I did something like this to extract the word list from a Dutch dictionary program:
WINEDEBUG="trace+text" wine <app.exe> 2>&1
Because my program can't display all words at once and because I didn't want to click the mouse button a hundred thousand times I wrote a little program to do it.
I used xwininfo and xev to find the window id and coordinates of the down arrow on the scroll bar for the word list. The program would then send X button press and release events to this window in a loop.
-Hans
With the same kind of idea, I would like to run Stata, a nice statistical package, in batch mode (it was running in batch mode on AIX). On Windows (and Wine), stata pops up in interactive mode and you have an internal windows window named "Stata command" where you have to enter "manually" a command like "do foo.do" . And I would like to do "wine stata foo.do" or something similar.
Unfortunately, using stata 7, all windows (Review, Variables, Stata results etc. are imbedded in a huge "Intercooled stata 7.0" window and I can't access to them individually. xwinfo displays the same Windows Id for all the imbedded windows.
Any hint?
Nicolas
On Tuesday 5 April 2005 12:39, Brouard Nicolas wrote:
With the same kind of idea, I would like to run Stata, a nice statistical package, in batch mode (it was running in batch mode on AIX).
Maybe CXtest fits your needs?
-Hans