Attachmate.Reflection.Framework Assembly > Attachmate.Reflection.Framework Namespace > MyReflection Class > Start Method : Start(String) Method |
'Declaration
Public Overloads Shared Function Start( _ ByVal channelName As String _ ) As Guid
'Usage
Dim channelName As String Dim value As Guid value = MyReflection.Start(channelName)
public static Guid Start( string channelName )
ForceStop()
method only after the Close()
method fails.)
The channelName parameter can be any valid string. Use the same channelName string in CreateApplication(channelName)
to create an Application
object.
using System; using System.Collections.Generic; using System.Text; using Attachmate.Reflection; using Attachmate.Reflection.Emulation.IbmHosts; using Attachmate.Reflection.Framework; using Attachmate.Reflection.UserInterface; using Attachmate.Reflection.Emulation.OpenSystems; namespace MultipleWorkSpaces { class Program { static void Main(string[] args) { //Start an visible instance of a workspace and get a handle to the instance running at the given channel name ("Workspace1") MyReflection.Start("Workspace1"); Application app1 = MyReflection.CreateApplication("WorkSpace1"); //Create a new IBM Session IIbmTerminal terminal1 = (IIbmTerminal)app1.CreateControl(new Guid("{09E5A1B4-0BA6-4546-A27D-FE4762B7ACE1}")); terminal1.HostAddress = "demo:ibm3270.sim"; //Create a View and then get a handle to the screen IFrame frame1 = (IFrame)app1.GetObject("Frame"); frame1.CreateView(terminal1); IIbmScreen screen1 = terminal1.Screen; //Start a second visible instance of a workspace and get a handle to the instance running at the given channel name ("Workspace2") MyReflection.Start("Workspace2"); Application app2 = MyReflection.CreateApplication("WorkSpace2"); //Open a session in the second workspace string sessionPath = Environment.GetEnvironmentVariable("USERPROFILE") + @"\Documents\Micro Focus\Reflection\demoSession.rdox"; ITerminal terminal2 = (ITerminal)app2.CreateControl(sessionPath); //Create a View for the session in the second workspace, and then get a handle to the screen IFrame frame2 = (IFrame)app2.GetObject("Frame"); frame2.CreateView(terminal2); IScreen screen2 = (IScreen)terminal2.Screen; //Get some text from each of the terminal screens in the two workspaces Console.WriteLine("IBM terminal text is" + screen1.GetText(1, 1, 20) + "and UNIX text is" + screen2.GetText(1, 1, screen2.DisplayRows, screen2.DisplayColumns)); //Close the workspaces app1.Close(ApplicationCloseOption.CloseNoSave); app2.Close(ApplicationCloseOption.CloseNoSave); } } }