Hello,
I am a newbie to winbatch. And iam trying to debug a winbatch program. This program was written to work with WRQ Reflection for IBM to get the OLEServerName. We are upgrading the
WRQ Reflection for IBM to
Attachmate Reflection 2014 and the winbatch program doesnt work.
I have added the debug trace and here is the output.
if (WRQ1 == 0) ;;&& !winexist(desiWin) ;
(858) IF DO==>TRUE
WRQ1 = ObjectAccess('ReflectionIBM.Application',@FALSE) ;
(889) GOSUB Error handler
WIL ERROR SUPPRESSED =>1129 (OleInitiate: Initiate Failed)
Error=LastError()
(889) VALUE INT => 1129
Message("LastError Value is",Error)
(8346) VALUE INT => 1
Message("wberrorhandlerline",wberrorhandlerline)
(32370) VALUE INT => 1
Message("wberrorhandleroffset",wberrorhandleroffset)
(34148) VALUE INT => 1
Message("wberrorhandlerassignment",wberrorhandlerassignment)
(38392) VALUE INT => 1
Message("wberrorhandlerfile", wberrorhandlerfile)
(45958) VALUE INT => 1
Message("wberrortextstring", wberrortextstring)
(50996) VALUE INT => 1
Message("wberroradditionalinfo", wberroradditionalinfo)
(52603) VALUE INT => 1
Message("wberrorinsegment", wberrorinsegment)
(53695) VALUE INT => 1
Message("wberrorhandlerlinenumber", wberrorhandlerlinenumber)
(58438) VALUE INT => 1
wrq1="eeek"
(58453) VALUE STRING => "eeek"
Return
(58453) RETURN VALUE INT => 0
end if
(58469) END OPERATOR
if WRQ1 <> 0 ;; so, an object exist (inside this IF block) ;
(58469) IF DO==>TRUE
while !Session1IDConfirmed ;; try, when not yet "glued", to do the following to a particular Reflection' session
(58484) WHILE==>TRUE
tOLEServerName = WRQ1.OLEServerName ;
(149651) VALUE INT => 0
TERMINAL WIL ERROR=>3131 (OleExecute: Not a valid OLE object. Period may have been used in place of a comma.)
;;;END OF JOB;;;
---------- Begin structure stack dump ----------
1 while 56 while @TRUE TDSWindowsWaiter.wbt
2 for 58 for wrqix = 1 to WRQSessions TDSWindowsWaiter.wbt
3 if 67 if winexist(targetWin) ;;&& !... TDSWindowsWaiter.wbt
4 if 76 if WRQ%wrqix% <> 0 ;; so, an... TDSWindowsWaiter.wbt
5 while 78 while !Session%wrqix%IDConfir... TDSWindowsWaiter.wbt
-------- End structure stack dump --------
---------- Begin WWWBATCH.INI dump ----------
[COM & CLR Sub-system]
Function=CComObjectAg::MakeObject
ErrorCode=483 (0x800401E3)
ErrorDesc=Operation unavailable
Here is the code snippet
if winexist(targetWin)
if (WRQ%wrqix% == 0)
WRQ%wrqix% = ObjectAccess('ReflectionIBM.Application',@FALSE) ;; create/use existing object id in WRQn
; message('session 2','confirmed')
end if
if WRQ%wrqix% <> 0
while !Session%wrqix%IDConfirmed
tOLEServerName = WRQ%wrqix%.OLEServerName
Looks like i am having issues with the below line.
WRQ%wrqix% = ObjectAccess('ReflectionIBM.Application',@FALSE) ;;
Not sure if this needs to be changed to something else for Attachmate Reflection 2014.
Any pointers on where can i find info on the ObjectAccess funtion and how to use it with reflection.
I read in a different post that someone had issue with reflection when they upgraded to windows 7, but it turned out to be security issue. And there was not details on what was the security issue was.
http://forum.winbatch.com/index.php?topic=374.msg1572#msg1572Any help is appreciated.