Hi Remy,
Yes, I am writing to a text file.
Here is the macro:
'Global Variables
Global CapBuffer As Variant
Global CapBuffSize As Long
Sub Main()
' Get the Attachmate Screen Object
Dim objAttachScreen As Object
Set objAttachScreen = CreateObject("EXTRA.System").ActiveSession.Screen
If (objAttachScreen is Nothing) Then
Msgbox "Could not create the Screen object. Possible solution open a session and try again."
STOP
End If
' Set the default wait timeout value
g_HostSettleTime = 1500 ' milliseconds
' Name the variables
Dim Columns%
Dim Rows%
Dim BufferSize As integer
Dim Buffer As String
Dim bLastPage
Dim NewBuffer As String
Dim CRLF As String
Dim CurPos As Integer
' This section of code contains the recorded events
' objAttachScreen.Sendkeys("<PF8>")
' objAttachScreen.Sendkeys("<PF8>")
' objAttachScreen.Sendkeys("<PF8>")
' objAttachScreen.Sendkeys("<PF8>")
' objAttachScreen.Sendkeys("<PF8>")
' objAttachScreen.Sendkeys("<PF8>")
' objAttachScreen.Sendkeys("<PF8>")
' Determine the size of the Screen
Rows%=objAttachScreen.Rows()
Columns%=objAttachScreen.Cols()
BufferSize%= Rows% * Columns%
Buffer$ = ""
NewBuffer = ""
CRLF$=Chr$(13) + Chr$(10)
CurPos% = 1
CapBuffer = ""
CapBuffSize& = 0
Open "c:\From Old PC\host_to word.txt" For Append as #1
' Copy all report screens
Do
objAttachScreen.WaitHostQuiet(g_HostSettleTime)
Buffer$ = Buffer$ & objAttachScreen.GetString(1,1, BufferSize%)
While CurPos% < BufferSize%
NewBuffer$ = NewBuffer$ + Mid$(Buffer$, CurPos%, Columns%) + CRLF$
CurPos% = Curpos% + Columns%
Wend
CurPos% =1
Buffer$=NewBuffer$
Write #1, Buffer$
bLastPage = Instr(Buffer$,"Bottom")
NewBuffer$ = ""
Buffer$ = ""
objAttachScreen.Sendkeys("<PF8>")
' objAttachScreen.Sendkeys("<DOWN>")
Loop Until bLastPage
msgbox "finished"
'objAttachScreen.Sendkeys("<PF1>")
'objAttachScreen.Sendkeys("E")
'objAttachScreen.Sendkeys("<Ctrl+M>")
'objAttachScreen.Sendkeys("<Ctrl+M>")
Close #1
End Sub
Thanks and Regards,
Jonathan