InfoConnect API Guide
Walkthrough / Other Automation Tasks / Transfer Files
Transfer Files

This sample shows how to send a TSO file transfer from an IBM session.

To send a TSO file transfer

  1. In Visual Studio, create a new Console Application project and add references for the following InfoConnect assemblies. (Depending on your version of Visual Studio, these can be found either on the .NET tab or under Assemblies | Extensions.)
    Attachmate.Reflection
    Attachmate.Reflection.Framework
    Attachmate.Reflection.Emulation.IbmHosts

  2. Replace all the code in the Program.cs file with the following code for the terminal you are using.
    Send a TSO file transfer
    Copy Code
    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Text;
    using System.Threading.Tasks;
    using Attachmate.Reflection.UserInterface;
    using Attachmate.Reflection.Framework;
    using Attachmate.Reflection.Emulation.IbmHosts;
    namespace FileTransfer
    {
        class Program
        {
            public void SendFileTransfer()
            {
                //Get the last activated instance of InfoConnect
                Application app = MyReflection.ActiveApplication;
    
                //Make sure InfoConnect is running
                if (app != null)
                {
                    IFrame frame = (IFrame)app.GetObject("Frame");
                    IView view = (IView)frame.SelectedView;
                    IIbmTerminal terminal = (IIbmTerminal)view.Control;
                    Attachmate.Reflection.Emulation.IbmHosts.IFileTransfer fTransfer = terminal.FileTransfer;
                    fTransfer.XfrHostSys = HostSystem.Tso;
    
                    //transfer the test.txt file from the PC to the host using the IND$File protocol
                    fTransfer.INDSendFile(@"C:\Users\Public\Documents\test.txt", "bvtst02.test7.txt", INDFileTransferType.Ascii, FileExistsOption.Overwrite, true);
                }
                else
                {
                   Console.WriteLine("Cannot find instance of InfoConnect");
                }
            }
            static void Main(string[] args)
            {
                Program app = new Program();
    
                //Send the file transfer
                app.SendFileTransfer();
            }
        }
    }
                           
    

To test this project

  1. Create a file named test.txt in the Public Documents folder and add some data to the file.
  2. In InfoConnect, open the session you want to perform the transfer from and navigate to a TSO command line.
  3. In Visual Studio, press F5 to run this project.
  4. Verify that the session opens the File Transfer dialog box and transfers the test.txt file to the host.