উইন্ডোজ অপারেটিং সিস্টেমগুলির অ্যাপ্লিকেশন প্রোগ্রামিং ইন্টারফেসটি ফাংশনের একটি সেট দ্বারা প্রতিনিধিত্ব করা হয়। যখন তাদের বলা হয়, বিভিন্ন অবজেক্ট (ফাইল, প্রসেস, থ্রেড, সিঙ্ক্রোনাইজেশন অবজেক্টস ইত্যাদি) তৈরি করা যেতে পারে। এই অবজেক্টগুলিতে পর্যাপ্ত বিমূর্ত এবং একীভূত অ্যাক্সেস সরবরাহ করতে তাদের সনাক্তকরণ বর্ণনাকারী - "নৈর্ব্যক্তিক" সংখ্যাসূচক মান ব্যবহার করে সম্পাদিত হয়।
প্রয়োজনীয়
- - একটি প্রোগ্রামিং ভাষা থেকে অনুবাদক যা উইন্ডোজ এপিআই ব্যবহারের অনুমতি দেয়;
- - সম্ভবত উইন্ডোজ প্ল্যাটফর্ম এসডিকে।
নির্দেশনা
ধাপ 1
উইন্ডো হ্যান্ডেলগুলি পান। এটি করার অনেকগুলি উপায় রয়েছে। সঠিক পদ্ধতিটি শেষ লক্ষের উপর নির্ভর করে।
উইন্ডো তৈরি করতে ক্রিয়েট উইন্ডো বা ক্রিয়েটউইনডেক্সএক্সআইপি ব্যবহার করুন। তারা সাফল্যের একটি হ্যান্ডেল ফিরিয়ে দেয় এবং ব্যর্থতার উপরে NULL দেয়।
যথাক্রমে FindWindow এবং FindWindowEx ফাংশনগুলি ব্যবহার করে বিভিন্ন পরামিতি দ্বারা শীর্ষ স্তরের উইন্ডোজ এবং শিশু উইন্ডোগুলি অনুসন্ধান করুন। সফল অনুসন্ধানে, উইন্ডো হ্যান্ডেলটি প্রাপ্ত হবে।
এনামউইনড উইন্ডোজ, এনামচিল্ড উইন্ডোস, এনাম থ্রেড উইন্ডো ফাংশন সহ উইন্ডোগুলি গণনা করুন। পাওয়া উইন্ডোগুলির হ্যান্ডলগুলি কলব্যাক ফাংশনে একটি প্যারামিটার হিসাবে দেওয়া হবে।
স্ক্রিনের একটি নির্দিষ্ট অবস্থানে অবস্থিত উইন্ডোটির হ্যান্ডেলটি সন্ধান করুন। ফাংশনগুলির মধ্যে একটিকে কল করুন: উইন্ডোফ্রোমপয়েন্ট, চাইল্ড উইন্ডো ফ্রেমপয়েন্ট বা চাইল্ড উইন্ডোফ্রোমপয়েন্টেক্স x
ধাপ ২
প্রক্রিয়া হ্যান্ডেল পান। ক্রেডিটপ্রসেস, ক্রিয়েটপ্রোসেসসউসার, ক্রিয়েটপ্রসেসবিথটোকেনডাব্লু, বা ক্রিয়েটপ্রসেসবিথলগনডাব্লু এপিআই ফাংশনগুলিকে কল করে একটি নতুন প্রক্রিয়া তৈরি করুন। তারা সকলেই প্রোসেসপেক্টরফর্মেশন কাঠামোর এইচ প্রসেস ক্ষেত্রের নতুন প্রক্রিয়াতে একটি হ্যান্ডেল ফিরিয়ে দেয়, যে পয়েন্টারটি তাদের কাছে শেষ প্যারামিটার হিসাবে প্রেরণ করা উচিত।
প্রক্রিয়াটির পরিচিত সনাক্তকারী দ্বারা হ্যান্ডেলটি সন্ধান করুন। ওপেনপ্রসেস কলটি ব্যবহার করুন। সমস্ত চলমান প্রক্রিয়াগুলির আইডিগুলি পাওয়া যেতে পারে, উদাহরণস্বরূপ, সরঞ্জাম সহায়তা লাইব্রেরির ক্রিয়েটুলহেল্প 32 স্নাপশট, প্রসেস 32 ফার্স্ট এবং প্রসেস 32 নেক্সট ফাংশন ব্যবহার করে।
গেটক্র্যান্টপ্রসেস ফাংশনটি ব্যবহার করে বর্তমান প্রক্রিয়াটির সিউডো হ্যান্ডেলটি পুনরুদ্ধার করুন।
ধাপ 3
থ্রেডের বর্ণনাকারী পান। ক্রিয়েটথ্রেড এবং ক্রিয়েটরিমোটথ্রেড ফাংশনগুলি হ্যান্ডলগুলি ফেরত যথাক্রমে তাদের নিজস্ব এবং অন্য কারও প্রক্রিয়ায় থ্রেড তৈরি করে। আপনি এটির সনাক্তকারী ব্যবহার করে একটি বিদ্যমান থ্রেড খুলতে এবং ওপেনথ্রেড ফাংশনটি ব্যবহার করে সংশ্লিষ্ট হ্যান্ডেলটি পেতে পারেন। গেটকন্ট্রেন্টথ্রেড বলা হলে বর্তমান প্রবাহের সিউডো-হ্যান্ডেলটি ফিরে আসে।
পদক্ষেপ 4
ফাইল, ডিরেক্টরি, শারীরিক ডিস্ক, ডিস্ক ভলিউম, কনসোল, যোগাযোগের সংস্থানসমূহ (আই / ও পোর্ট), মেল স্লট এবং নামযুক্ত পাইপের জন্য বর্ণনাকারী একটি একক ফাংশন, ক্রিয়েটফাইলে ফোন করে প্রাপ্ত করা যেতে পারে।
পদক্ষেপ 5
ফাইল-টু-মেমরি ম্যাপিং অবজেক্ট বর্ণনাকারী ক্রেডিটফিলম্যাপিং এবং ওপেন ফাইলেম্যাপিং-এর মাধ্যমে ফিরে আসে।
পদক্ষেপ 6
ক্রিয়েটমিটেক্স, ক্রিয়েটসিম্যাফোর, এবং ক্রিয়েটএভেন্ট ফাংশনগুলি তৈরি করে এবং ওপেনমুটেক্স, ওপেনসেমফোর এবং ওপেনভেন্ট ফাংশনগুলি বিদ্যমান সিঙ্ক্রোনাইজেশন অবজেক্টগুলিকে (মিটেক্সস, সেমোফোরস এবং ইভেন্টগুলি) খুলবে। তারা সমস্ত বর্ণনাকারী ফিরে।
পদক্ষেপ 7
সমস্ত জিডিআই অবজেক্ট (যেমন ডিভাইস প্রসঙ্গ, ফন্ট, ব্রাশ, পেনসিল, হার্ডওয়্যার নির্ভর ও বিটম্যাপস, ডিআইবি বিভাগ ইত্যাদি) তাদের বর্ণনাকারীদের মাধ্যমে ম্যানিপুলেট করা হয়। জিডিআই অবজেক্ট তৈরির কাজগুলি অসংখ্য এবং তাদের সম্পর্কিত তথ্যের জন্য এমএসডিএন বিভাগে পরামর্শ নেওয়া উচিত should
পদক্ষেপ 8
একটি প্রক্রিয়ায় প্রাপ্ত একটি বর্ণনাকারী, একটি নিয়ম হিসাবে, অন্যটিতে ব্যবহার করা যায় না। তবে কিছু ক্ষেত্রে প্রাথমিক অবজেক্টের সাথে অনুরূপ ডুপ্লিকেট বিবরণী পাওয়া সম্ভব obtain হ্যান্ডেলটির সদৃশ করতে ডুপ্লিকেটহ্যান্ডল এপিআই কল করুন। উদাহরণস্বরূপ, একাধিক প্রক্রিয়ার মধ্যে নামবিহীন সিঙ্ক্রোনাইজেশন অবজেক্ট বা চ্যানেলগুলি ভাগ করতে এটি ব্যবহার করা যেতে পারে।