অধিকাংশ সময় আমরা তখনই DLL ফাইল জুড়ে পাই যখন একটি প্রদত্ত সফ্টওয়্যারের অভাবের কারণে কাজ করতে অক্ষম হয় কিছু .dll ফাইল এই প্রম্পটের পরে, আমরা সেই DLL ফাইলটি পেতে অনলাইনে যাই, এটি সঠিক ফোল্ডারে রাখি এবং সফ্টওয়্যারটি চালু করি। এবং এটি হল - DLL ফাইল সম্পর্কে কেস বন্ধ।
যাইহোক, এই নির্দিষ্ট ফাইলগুলি সম্পর্কে আরও বুঝতে আকর্ষণীয় হওয়া উচিত। এগুলি গুরুত্বপূর্ণ বলে মনে হচ্ছে, কারণ তাদের অনুপস্থিতি সফ্টওয়্যারগুলিকে চলতে বাধা দিতে পারে, তাই যাইহোক তারা কী? এবং তারা কিভাবে কাজ করে? আসুন কিছু উত্তর পাই।
DLL ফাইল?
প্রায় প্রত্যেকেরই, সময়ে সময়ে, DLL ফাইলগুলি নিয়ে কাজ করে, প্রায়ই যখন একটি নতুন ইনস্টল করা সফ্টওয়্যার কাজ করে না কারণ সেই ফাইলগুলির মধ্যে একটি অনুপস্থিত থাকে৷
DLL এর অর্থ হল "ডাইনামিক-লিংক লাইব্রেরি" এবং এটি মাইক্রোসফট উইন্ডোজ এবং OS/2 অপারেটিং সিস্টেমে শেয়ার্ড লাইব্রেরি ধারণার বাস্তবায়ন। এগুলি মূলত EXE-এর মতোই, কিন্তু লিঙ্কিং প্রক্রিয়ার স্পষ্টতার জন্য আলাদাভাবে নামকরণ করা হয়েছে৷ যদিও DLL ফাইলগুলি সরাসরি চালানো যায় না, তাই rundll.exe এর মত টুলের অস্তিত্ব এবং rundll32.exe .
DLL ফাইলগুলি ডেভেলপারদের শেয়ার করা কোড এবং ডেটা ব্যবহার করার একটি মাধ্যম ছাড়া আর কিছুই নয়, অ্যাপ্লিকেশনগুলিকে পুনরায় লিঙ্ক বা পুনরায় কম্পাইল করার প্রয়োজন ছাড়াই কার্যকারিতাগুলি আপগ্রেড করার অনুমতি দেয়। অন্য কথায়, DLL ফাইলগুলিতে কোড এবং ডেটা থাকে যা বিভিন্ন অ্যাপ্লিকেশন দ্বারা ব্যবহৃত হয়। একটি একক DLL ফাইল বিভিন্ন অ্যাপ্লিকেশন দ্বারা ব্যবহার করা যেতে পারে, যদি তাদের এটির প্রয়োজন হয়, একই তথ্যের একাধিক কপির প্রয়োজনীয়তা দূর করে৷
কিভাবে DLL ফাইল কাজ করে?
দুটি স্বতন্ত্র ফাইল কল্পনা করুন:"example.exe," একটি সাধারণ এক্সিকিউটেবল ফাইল এবং "library.dll," একটি DLL যা সেই এক্সিকিউটেবল দ্বারা ব্যবহৃত হয়। যখন “example.exe” চলে তখন অপারেটিং সিস্টেমের মাধ্যমে সেই ফাইলগুলি কীভাবে সংযুক্ত থাকে?
যখন "example.exe" চলে, তখন অপারেটিং সিস্টেম এটিকে লোড করে এবং এর মধ্যে ডেটার একটি টেবিল খুঁজে পায়, যা বলে যে (স্পষ্টতই শব্দে নয়) "এই প্রোগ্রামটি DLL ফাইল library.dll থেকে নিম্নলিখিত ফাংশনগুলির তালিকা ব্যবহার করে," যা হল "example.exe" প্রোগ্রামে DLL "library.dll" থেকে প্রযুক্তিগতভাবে "imports" বা "imported functions" বলা হয়৷
তারপর, লোডার কোড "library.dll" এর জন্য অনুসন্ধান করে এবং, যদি এটি এটি খুঁজে পায়, তাহলে ফাইলটি লোড হয়৷ এই DLL ফাইলের ভিতরে, "রপ্তানি তালিকা" নামে আরেকটি তালিকা রয়েছে যা DLL ফাইলের প্রতিটি ফাংশনের সাথে নির্দিষ্ট ঠিকানাগুলিকে সংযুক্ত করে। এই বিন্দু থেকে, যখন "example.exe" কে "library.dll" থেকে একটি ফাংশন কল করার প্রয়োজন হয়, তখন এটি কেবল সেই ঠিকানাটি ব্যবহার করে।
কিভাবে DLL ফাইল পেতে এবং সংরক্ষণ করতে হয়
যখন একটি প্রদত্ত সফ্টওয়্যারটিতে একটি DLL ফাইলের অভাব থাকে, তখন সাধারণ পদ্ধতি হল সেই ফাইলটি অনলাইনে অনুসন্ধান করা এবং এটিকে আমাদের হার্ড ড্রাইভে সংরক্ষণ করা। আপনি যদি সফ্টওয়্যারের ফোল্ডারের ভিতরে DLL রাখেন তবে এটি কাজ করবে, কিন্তু আমি উপরে ব্যাখ্যা করেছি, বেশ কয়েকটি সফ্টওয়্যার সেই ফাইলটির প্রয়োজন হতে পারে, তাই এটি যেখানে তারা পৌঁছাতে পারে সেখানে এটি সংরক্ষণ করা ভাল - এবং এটি হল "সিস্টেম32" ফোল্ডার (সি :\Windows\System32)। x64 ব্যবহারকারীদেরও DLL ফাইলকে “C:\Windows\SysWOW64”-এ কপি করা উচিত (এই উভয় ক্রিয়াকলাপ সম্পাদনের জন্য প্রশাসকের বিশেষাধিকার প্রয়োজন)।
যাইহোক, এই পদ্ধতিটি প্রত্যেকের দ্বারা সুপারিশ করা হয় না, কারণ এটি পুরানো DLL, ভাইরাস সংক্রমণ ইত্যাদির মতো কিছু ঝুঁকি নিয়ে আসতে পারে। আমার ব্যক্তিগত অভিজ্ঞতা থেকে, ডিএলএল ফাইলগুলির সাথে আমার কখনই সমস্যা ছিল না (আমি সাধারণত সেগুলি এই সাইট থেকে পাই, তবে তৃতীয় পক্ষের সফ্টওয়্যার এড়াতে "ডাউনলোড জিপ ফাইল" বিকল্পটি বেছে নেওয়ার বিষয়ে নিশ্চিত হন), তাই শেষ পর্যন্ত এটি সমস্ত কিছুতে নেমে আসে। ব্যক্তিগত স্বাদ।
আপনি কি DLL ফাইল সম্পর্কে এই তথ্য জানেন? এই নিবন্ধ থেকে কিছু গুরুত্বপূর্ণ অনুপস্থিত আছে? কমেন্টে আমাদের জানান।