কম্পিউটার টিউটোরিয়াল

জাভাতে এক্সটার্নাল প্রোগ্রাম রান করা (যেমন Windows Media Player)

১. Runtime ক্লাস ব্যবহার করে

জাভা java.lang.Runtime ক্লাস প্রদান করে, যা বর্তমান এনভায়রনমেন্টের সাথে ইন্টারফেস করার জন্য ব্যবহৃত হয়।

এই ক্লাসের getRuntime() (স্ট্যাটিক) মেথড বর্তमान অ্যাপ্লিকেশন থেকে জড়িত Runtime অবজেক্ট রিটার্ন করে।

exec() মেথড একটি স্ট্রিং ভ্যালু গ্রহণ করে যা বর্তমান এনভায়রনমেন্টে (সিস্টেমে) একটি প্রসেস এক্সিকিউট করার কমান্ড রিপ্রেজেন্ট করে এবং এটি এক্সিকিউট করে।

তাই, Runtime ক্লাস ব্যবহার করে এক্সটার্নাল অ্যাপ্লিকেশন এক্সিকিউট করতে:

  • getRuntime() মেথড ব্যবহার করে রানটাইম অবজেক্ট পান।
  • প্রয়োজনীয় প্রসেস এক্সিকিউট করুন এর পাথ একটি স্ট্রিং ভ্যালু হিসেবে exec() মেথডে পাস করে।

উদাহরণ

import java.io.IOException; 

public class Trail { 
    public static void main(String args[]) throws IOException { 
        Runtime run = Runtime.getRuntime(); 
        System.out.println("Executing the external program . . . . . . . ."); 
        String file = "C:\\Program Files\\Windows Media Player\\wmplayer.exe"; 
        run.exec(file); 
    } 
}

আউটপুট

Executing the external program . . . . . . . .

২. ProcessBuilder ক্লাস ব্যবহার করে

ProcessBuilder ক্লাসের কনস্ট্রাক্টর স্ট্রিং টাইপের ভেরিয়েবল আর্গুমেন্ট গ্রহণ করে যা একটি প্রসেস এক্সিকিউট করার কমান্ড এবং এর আর্গুমেন্ট রিপ্রেজেন্ট করে এবং একটি অবজেক্ট কনস্ট্রাক্ট করে।

এই ক্লাসের start() মেথড বর্তমান ProcessBuilder-এ প্রসেস(গুলি) শুরু/এক্সিকিউট করে। তাই, ProcessBuilder ক্লাস ব্যবহার করে এক্সটার্নাল প্রোগ্রাম রান করতে:

  • ProcessBuilder ক্লাস ইনস্ট্যানশিয়েট করুন কমান্ড এবং আর্গুমেন্ট পাস করে কনস্ট্রাক্টরে।
  • উপরোক্ত তৈরি অবজেক্টে start() মেথড আহ্বান করে প্রসেস এক্সিকিউট করুন।

উদাহরণ

import java.io.IOException; 

public class ExternalProcess { 
    public static void main(String args[]) throws IOException { 
        String command = "C:\\Program Files\\Windows Media Player\\wmplayer.exe"; 
        String arg = "D:\\sample.mp3"; 
        ProcessBuilder builder = new ProcessBuilder(command, arg); 
        System.out.println("Executing the external program . . . . . . . ."); 
        builder.start(); 
    } 
}

আউটপুট

Executing the external program . . . . . . . .

সারসংক্ষেপ: Runtime.exec() সহজ কিন্তু কম ফ্লেক্সিবল। ProcessBuilder আরও নিয়ন্ত্রণ দেয় (আর্গুমেন্ট, এনভায়রনমেন্ট, ওয়ার্কিং ডিরেক্টরি)। আধুনিক কোডে ProcessBuilder প্রিয়।

  1. উইন্ডোজ মিডিয়া প্লেয়ার ত্রুটি সমাধান: দ্রুত ফিক্স ও টিপস

  2. উইন্ডোজ মিডিয়া প্লেয়ার ক্র্যাশ ও ফ্রিজ সমাধান: ধাপে ধাপ গাইড

  3. Windows Media Player-এ সাবটাইটেল যোগ করার ধাপে ধাপে গাইড

  4. উইন্ডোজ ১০-এ উইন্ডোজ মিডিয়া প্লেয়ার ক্র্যাশ সমস্যা সমাধান – দ্রুত ও সহজ সমাধান