সি # কোড থেকে একটি এক্সি চালান


163

আমার সি # প্রকল্পে আমার কাছে এক্সি ফাইলের রেফারেন্স রয়েছে। আমি কীভাবে এই কোডটি আমার কোড থেকে প্রার্থনা করব?

উত্তর:


286
using System.Diagnostics;

class Program
{
    static void Main()
    {
        Process.Start("C:\\");
    }
}

যদি আপনার অ্যাপ্লিকেশনটিতে সেন্টিমিটার আর্গুমেন্টের প্রয়োজন হয় তবে এই জাতীয় কিছু ব্যবহার করুন:

using System.Diagnostics;

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

    /// <summary>
    /// Launch the application with some options set.
    /// </summary>
    static void LaunchCommandLineApp()
    {
        // For the example
        const string ex1 = "C:\\";
        const string ex2 = "C:\\Dir";

        // Use ProcessStartInfo class
        ProcessStartInfo startInfo = new ProcessStartInfo();
        startInfo.CreateNoWindow = false;
        startInfo.UseShellExecute = false;
        startInfo.FileName = "dcm2jpg.exe";
        startInfo.WindowStyle = ProcessWindowStyle.Hidden;
        startInfo.Arguments = "-f j -o \"" + ex1 + "\" -z 1.0 -s y " + ex2;

        try
        {
            // Start the process with the info we specified.
            // Call WaitForExit and then the using statement will close.
            using (Process exeProcess = Process.Start(startInfo))
            {
                exeProcess.WaitForExit();
            }
        }
        catch
        {
             // Log error.
        }
    }
}

1
startInfo.UseShellExecute = falseএকটি দুর্দান্ত জিনিস ছিল ... এটি আমার জন্য কবজির মতো কাজ করেছিল! ধন্যবাদ! :)
— রাইজিং হার্ক

@ logganB.lehman প্রক্রিয়াটি এক্সপ্রোসেস.ওয়েটফরএক্সিট () এ চিরকাল স্থায়ী; কোন ধারণা?
— ড্রাগন


11

উদাহরণ:

System.Diagnostics.Process.Start("mspaint.exe");

কোড সংকলন

কোডটি অনুলিপি করুন এবং এটি কনসোল অ্যাপ্লিকেশনটির মূল পদ্ধতিতে আটকান । আপনি যে অ্যাপ্লিকেশনটি চালাতে চান তার পথে "mspaint.exe" প্রতিস্থাপন করুন।


15
এটি ইতিমধ্যে তৈরি করা উত্তরের চেয়ে কীভাবে আরও বেশি মূল্য সরবরাহ করে? গৃহীত উত্তরটি Process.Start()
— ডিফল্ট এর

3
সুতরাং - সরলিকৃত, ধাপে ধাপে উদাহরণ সহ ধীরে ধীরে বিভিন্ন বিবরণ সরিয়ে দিয়ে কোনও শিক্ষানবিসকে সহায়তা করা ঠিক আছে। ক্যাপগুলি ব্যবহার
— করাও

আমার এক্সপি কার্যকর করতে একটি দ্রুত উপায় প্রয়োজন এবং এটি সত্যই সহায়ক। আপনাকে ধন্যবাদ :)
— সুশান্ত পূজারি

7

উদাহরণ:

Process process = Process.Start(@"Data\myApp.exe");
int id = process.Id;
Process tempProc = Process.GetProcessById(id);
this.Visible = false;
tempProc.WaitForExit();
this.Visible = true;

2

আমি জানি এটির উত্তরের জবাব দেওয়া আছে তবে আপনি যদি আগ্রহী হন তবে আমি একটি লাইব্রেরি লিখেছিলাম যা কার্যকর করার আদেশগুলি আরও সহজ করে তোলে।

এটি এখানে দেখুন: https://github.com/twitchax/ শেলার ।

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.