Trying to read value from Bluezone screen in RUBY lang using EMReadScreen method provided by BlueZone software. But this method doesnt return value in the Buffer string. It works fine in VB script but in Ruby.
Link to API doc - https://www3.rocketsoftware.com/bluezone/help/v71/en/bzsh/default.htm#%2Fbluezone%2Fhelp%2Fv71%2Fen%2Fbzsh%2Fbzaa_aref_EMReadScreen.htm
Code :
require 'win32ole'
class Dummy
@system = WIN32OLE.new('BlueZone.System')
sleep 2
sessions = @system.Sessions
sleep 2
session = sessions.Open('path')
sleep 2
@system.WriteScreen("enter_screen", 18,40 ) # This one is working
sleep 4
@system.ReadScreen(@buffer_variable,05,18,40 ) # This line doesnt throw any error but buffer_varailble not storing any value.
sleep 2
puts @buffer_variable # returns nothing, expecting to store "enter"
end
Some BlueZone functions require you to initialize variables before using them. Try setting @buffer_variable to a blank string before calling ReadScreen: