I have a dll that does a print screen using the cut copy paste into word. It then automates a close on word, but if its printing to a slow printer it gives the "Word is currently printing do you wish to close" crap, ha ha ha. Is there a way to delay the word.release command.
DEFINE CLASS p_screen AS CUSTOM OLEPUBLIC
Name = "p_screen"
ScreenPrinted = .F.
oWordObj = ""
PROCEDURE ScreenCapture
This.ReleaseWord()
This.ScreenPrinted = .T.
DECLARE INTEGER keybd_event IN Win32API ;
INTEGER, INTEGER, INTEGER, INTEGER
VK_SNAPSHOT = 44
=keybd_event(VK_SNAPSHOT, 1, 0, 0)
This.oWordObj=CREATEOBJECT("Word.Application"
This.oWordObj.Documents.Add
This.oWordObj.ActiveDocument.PageSetup.Orientation = 1
WITH This.oWordObj.WordBasic
.EditPaste
.FilePrint
.FileClose(2)
ENDWITH
RELEASE keybd_event, vk_snapshot
ENDPROC
PROCEDURE ReleaseWord
IF This.ScreenPrinted
This.oWordObj.Quit
This.oWordObj = ""
This.ScreenPrinted = .F.
ENDIF
ENDPROC
PROCEDURE Destroy
This.ReleaseWord()
ENDPROC
ENDDEFINE
DEFINE CLASS p_screen AS CUSTOM OLEPUBLIC
Name = "p_screen"
ScreenPrinted = .F.
oWordObj = ""
PROCEDURE ScreenCapture
This.ReleaseWord()
This.ScreenPrinted = .T.
DECLARE INTEGER keybd_event IN Win32API ;
INTEGER, INTEGER, INTEGER, INTEGER
VK_SNAPSHOT = 44
=keybd_event(VK_SNAPSHOT, 1, 0, 0)
This.oWordObj=CREATEOBJECT("Word.Application"
This.oWordObj.Documents.Add
This.oWordObj.ActiveDocument.PageSetup.Orientation = 1
WITH This.oWordObj.WordBasic
.EditPaste
.FilePrint
.FileClose(2)
ENDWITH
RELEASE keybd_event, vk_snapshot
ENDPROC
PROCEDURE ReleaseWord
IF This.ScreenPrinted
This.oWordObj.Quit
This.oWordObj = ""
This.ScreenPrinted = .F.
ENDIF
ENDPROC
PROCEDURE Destroy
This.ReleaseWord()
ENDPROC
ENDDEFINE