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


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.