0

これは、データを C# exe ファイルに渡すための PHP コードです。

<?
    shell_exec("p3.exe --tRyMe");
?>

私が望むのは、文字列を p3.exe ファイルに投稿すると、その exe ファイルが "tRyme" 文字列を画面に出力することです。

using System;
using System.Collections.Generic;
using System.Text;
namespace ConsoleApplication1
{
    class Program
    {
        static void Main(string[] args)
        {
            string a;
            Console.Write("Please enter a string : ");
            a = Console.ReadLine();
            Console.WriteLine("You have entered: {0}", a);
            Console.ReadKey();
        }
    }
}

これが私の C# コードです。

「--tRyMe」、「-tRyMe」、「tRyMe」などを試してみましたが、このコードは「文字列を入力してください」のみを画面に出力します。

私が欲しいのは、次のような出力を見ることです:

あなたが入力しました: tRyMe

それを手伝ってくれませんか?幸運をお祈りしています。

4

3 に答える 3

1

PHPコードの話はできませんが、C#側では、コマンドラインからプログラムに渡された引数の数を確認し、引数がある場合は入力を求めず、受け取った引数を出力する必要があります

    static void Main(string[] args)
    {
        string a;
        if(args.Length == 0)
        {
             Console.Write("Please enter a string : ");
             a = Console.ReadLine();
        }
        else
             a = args[0];

        Console.WriteLine("You have entered: {0}", a);
        Console.ReadKey();
    }
于 2013-06-18T22:56:00.590 に答える
0

アプリケーションを実行して出力を印刷することしかできませんが、アプリケーションとやり取りすることはできません- Console.ReadLine() は入力を期待しているため、使用できません( Console.ReadKey() にも影響します)

これを試して:

static void Main(string[] args)
{
    string a;
    if(args.Length == 0)
         a = "No arg is given";
    else
         a = args[0];

    Console.WriteLine("You have entered: {0}", a);
}
于 2013-06-18T23:16:25.750 に答える
0

試したことがないのにパイプが効く?

<?php
    shell_exec("echo tRyMe | p3.exe");
?>
于 2013-06-18T22:55:32.037 に答える