1

Webアプリケーションにコンソール・アプリケーション・データを返すようにすることは、私はボタン上のWebアプリケーションを持っているは、どのように私は、ユーザー名とパスワードの入力が求められますコンソールアプリケーションを構築する

私は、ユーザー名をポップアップするコンソールexeファイルを呼び出す必要がありますクリックして、私は値を取得する必要があるユーザー名とパスワードでユーザーキーパスワードを一度は自分のWebアプリケーションに渡す

 string filePath = @"D:\\ConsoleApplication\\ConsoleApplication\\ConsoleApplication\\bin\Debug\\ConsoleApplication.exe"; 
      ProcessStartInfo info = new ProcessStartInfo(filePath, ""); 
      Process p = Process.Start(info); 
      p.StartInfo.UseShellExecute = false;   //don't use the shell to execute the cmd file           
      p.StartInfo.RedirectStandardOutput = true;  //redirect the standard output 
      p.StartInfo.RedirectStandardError = true;  //redirect standard errors 
      p.StartInfo.CreateNoWindow = true;   //don't create a new window 
      p.Start();         //start the program 
      StreamReader sr = p.StandardOutput;   //read the programs output 
      string output = sr.ReadToEnd();    //put output into list box 
      p.Close(); 
      p.WaitForExit(); 

コンソールアプリケーションコード:

public class Program 
    { 
     static void Main() 
     { 
      System.Console.WriteLine("Please enter User Name"); 
      var userName = Console.ReadLine(); 
      System.Console.WriteLine("Please enter Password"); 
      var password = Console.ReadLine();   
     } 
    } 

は、私はKEYINのユーザー名とパスワードの値を取得する必要があると私はstandardoutputから値を取得するために上記のコードで試してみました

enter image description here

のWebページに戻って戻る必要があるが、値が空である

いずれかが私を助けることができます..

+0

をメインにハッピー()Process.Start( "IEXPLORE.EXE"、 "-nomerge http://youresite.com?username=Kapil&password=Kapil")を呼び出します。それは、クエリ文字列で指定されたURLを持つIEを開きます。 –

+0

私は動的な値を取得する必要がありますどのユーザーkeyin。 – Kapil

+0

はい、ハードコードKapilをそれぞれuserName変数とpassword変数に置き換えてください。 –

答えて

0

以下の実装は私のために働いています。

テキストファイルへの書き込みやWebアプリケーションに値を読み取る

コンソールコード:

public class Program 
    { 
     static void Main() 
     { 
      System.Console.WriteLine("Please enter User Name"); 
      string userName = Console.ReadLine(); 
      System.Console.WriteLine("Please enter Password"); 
      string password = Console.ReadLine(); 
      var sw = new StreamWriter(Environment.CurrentDirectory + "\\TA.txt"); 
      sw.Write(userName + "," + password); 
      sw.Flush(); 
      sw.Close(); 
     } 
    } 

Webアプリケーション:

// Run the console application to key-in the User Name and Password 
      string userName = string.Empty; string password = string.Empty; 
      TestLog.BeginSection("Step 1: Create New WebAdmin User"); 
      const string filePath = @"D:\\ConsoleApplication\\ConsoleApplication\\ConsoleApplication\\bin\Debug\\ConsoleApplication.exe"; 
      var info = new ProcessStartInfo(filePath, ""); 
      var p = Process.Start(info); 
      p.StartInfo.UseShellExecute = false;   //don't use the shell to execute the cmd file           
      p.StartInfo.RedirectStandardOutput = true;  //redirect the standard output 
      p.StartInfo.RedirectStandardError = true;  //redirect standard errors 
      p.StartInfo.CreateNoWindow = true;   //don't create a new window 
      p.Start();         //start the program 
      StreamReader sr = p.StandardOutput;   //read the programs output 
      string output = sr.ReadToEnd();    //put output into list box 
      p.Close(); 
      Thread.Sleep(40000); 

      // Read the file as one string. 
      var userNamePassword = System.IO.File.ReadAllText(Environment.CurrentDirectory + @"\\TA.txt"); 
      var strarray = userNamePassword.Split(','); 
      if (strarray.Length > 1) 
      { 
       userName = strarray[0]; 
       password = strarray[1]; 
      } 
      // Delete the file 
      if (File.Exists(Environment.CurrentDirectory + @"\TA.txt")) 
      { 
       File.Delete(Environment.CurrentDirectory + @"\TA.txt"); 
      } 

あなたはユーザ名とパスワードのパラメータの値を持つことになります。

コーディング.. :)

関連する問題