ホームページ >バックエンド開発 >C++ >C# アプリケーションから EXE ファイルを実行するにはどうすればよいですか?

C# アプリケーションから EXE ファイルを実行するにはどうすればよいですか?

Barbara Streisand
Barbara Streisandオリジナル
2025-01-12 08:57:43498ブラウズ

How Can I Execute an EXE File from My C# Application?

C# アプリケーション内での外部 EXE ファイルの実行

このガイドでは、.NET Framework の Process クラスの機能を使用して、C# プログラムから実行可能 (EXE) ファイルを起動する方法を説明します。

最も単純な方法には、EXE ファイルのパスを文字列引数として受け取る Process.Start() メソッドが含まれます。 たとえば、C:\path\to\myprogram.exe を実行するには、次を使用します:

<code class="language-csharp">using System.Diagnostics;

class Program
{
    static void Main()
    {
        Process.Start("C:\path\to\myprogram.exe");
    }
}</code>

コマンドライン引数が必要な EXE の場合は、ProcessStartInfo クラスを利用してより詳細に制御します。 この例では、その機能を示します:

<code class="language-csharp">using System.Diagnostics;

class Program
{
    static void Main()
    {
        RunExternalAppWithArguments();
    }

    static void RunExternalAppWithArguments()
    {
        // Example paths (replace with your actual paths)
        const string outputDir = "C:\OutputDirectory";
        const string inputFile = "C:\InputFile.txt";

        // Configure process settings
        ProcessStartInfo startInfo = new ProcessStartInfo();
        startInfo.CreateNoWindow = false; // Show the console window
        startInfo.UseShellExecute = false; // Required for argument handling
        startInfo.FileName = "myCommandLineApp.exe"; // Your EXE file
        startInfo.Arguments = $"-o \"{outputDir}\" -i \"{inputFile}\""; // Arguments

        try
        {
            using (Process exeProcess = Process.Start(startInfo))
            {
                exeProcess.WaitForExit(); // Wait for the EXE to finish
            }
        }
        catch (Exception ex)
        {
            // Handle exceptions appropriately (log the error, etc.)
            Console.WriteLine($"Error launching EXE: {ex.Message}");
        }
    }
}</code>

プレースホルダーのパスとファイル名を実際の値に置き換えることを忘れないでください。 エラー処理は堅牢なアプリケーションにとって非常に重要です。 この改良された例では、外部プロセスを起動するためのより多くのコンテキストとベスト プラクティスを提供します。

以上がC# アプリケーションから EXE ファイルを実行するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。