2017-03-07 243 views
0

おはようございます。C#を使用してTeraTermマクロを起動してください

現在、私は* .ttlファイルとして保存したTeratermマクロを実行するコードを開発しています。ファイルの名前は "new.ttl" であり、コンテンツは以下の通りです:

showtt 0

FILEDELETE 'A.TXT'

一時停止5

:閉じる

closett

したがって、論理は単に "a.txt"ファイルを削除し、5秒待ってからTeratermを閉じるだけです。このnew.ttlは、タブコントロール>マクロにマクロをロードするTeratermを使用して手動で実行すると完全に機能します。このシンプルな.ttlファイルは、私がより複雑なコードを書き始める前に私のための試用のためのものです。

今、C#を使用して.ttlファイルを起動しようとしました。コードは次のとおりです。

using System; 
using System.Collections.Generic; 
using System.Linq; 
using System.Text; 
using System.IO.Ports; 
using System.Threading; 
using System.Diagnostics; 

namespace TeraTermConnect 
{ 
    class Program 
    { 
     static void Main(string[] args) 
     { 
      //Declare process for .ttl 
      Process process = new Process(); 
      ProcessStartInfo start = new ProcessStartInfo(); 

      //variables 
      string ttlpath = @"C:\TeraTermConnect\TeraTermConnect"; 
      string ttl = "new.ttl"; 
      string ttpHidden = @"/V"; 

      //start the .ttl file 
      start.FileName = ttlpath; 
      start.Arguments = ttpHidden + ttl; 
      start.UseShellExecute = false;    

      //Tried a lot of thing here, not sure how to run the .ttl 
      Process.Start(start); 

      Thread.Sleep(5000); 

      Console.WriteLine("The process is over"); 
      Console.WriteLine(); 
      Console.WriteLine("Check the text file..."); 
      Console.WriteLine(); 
      Console.WriteLine("Hit enter to exit..."); 
      Console.ReadKey(); 
     } 
    } 
} 

実行はエラーなしで実行されますが、結果は期待どおりではありません。実行の後、私は "a.txt"がコードのように言及されたパスの中にまだあるのを見ることができます。どこが間違っているのか分かりません。これは私がより複雑な.ttlファイルを開発してC#で実行する前の私にとっての始まりのステップです。

ご協力いただき誠にありがとうございます。どうもありがとうございました。

答えて

0

良い一日の連中は、闘争の2日後

、私は答えを得ることができました。

using System; 
using System.Windows.Forms; 
using System.Threading; 
using System.Diagnostics; 

namespace TeraTermConnect 
{ 
    class Program 
    { 
     static void Main(string[] args) 
     { 
      //Declare process for .ttl 
      Process process = new Process(); 
      ProcessStartInfo start = new ProcessStartInfo(); 

      //variables 
      string ttlpath = @"C:\Program Files (x86)\teraterm\" + @"TTPMACRO"; 
      string ttl = "new.ttl"; 
      string ttpHidden = @"/V "; 
      ProcessStartInfo start = new ProcessStartInfo(); 

      //start the .ttl file 
      start.FileName = ttlpath; 
      start.Arguments = ttpHidden + ttl; 
      start.UseShellExecute = false;    

      process.StartInfo = start; 

      try 
      { 
       Process.Start(start); 
      } 
      catch (Exception ex) 
      { 
       MessageBox.Show(ex.Message); 
      } 

      Console.WriteLine("The process is over"); 
      Console.WriteLine(); 
      Console.WriteLine("Check the text file..."); 
      Console.WriteLine(); 
      Console.WriteLine("Hit enter to exit..."); 
      Console.ReadKey(); 
     } 
    } 
} 

私が現在使用していることのTeraTermのバージョンは4.94であり、私も.TTLファイルを作成するために、TTLEditorバージョン1.5をインストールしていました。

1).TTLファイルをプログラムでC#から実行するには、システムにTTPMACRO.EXEとTTERMPRO.EXEがあるフォルダと同じフォルダに.TTLファイルを配置する必要があります。これは私のコードの文字列値ttlpathで示されます。

2)ttlpathでは、文字列値@ "TTPMACRO"を.TTLファイルを実行可能にするためにフォルダに追加する必要があります。

私のシステムでは、.TTLファイルのロジックが実行された場合に削除されるテキストファイルa.txtは、 C:\ Users \ Admin \ AppData \ Local \ VirtualStore \ Program Files(x86)\ teraterm

teratermマクロファイルを実行する方法の詳細については、このリンクを参照してください。 https://ttssh2.osdn.jp/manual/en/macro/howtorun.html

良い一日を...

ハリ

関連する問題