নেটওয়ার্ক প্রিন্টার কানেক্ট করার সময় 0x0000007e এররটি Windows 10 এবং Windows 7-এ খুবই সাধারণ। অধিকাংশ ক্ষেত্রে এই এররটি তখন দেখা যায় যখন প্রিন্টার সরাসরি অন্য একটি Windows কম্পিউটার (প্রিন্ট সার্ভার) এর সাথে সংযুক্ত থাকে এবং নেটওয়ার্কের মাধ্যমে অন্য কম্পিউটার থেকে প্রিন্ট করার জন্য শেয়ার করা থাকে।
সমস্যার পরিস্থিতি
আমার কেসে, 32-বিট Windows Server 2008 x86-এ একটি প্রিন্ট সার্ভার ছিল যেখানে বেশ কিছু শেয়ার করা HP (Hewlett-Packard) প্রিন্টার ছিল। এই সার্ভার থেকে যেকোনো প্রিন্টার 64-বিট ক্লায়েন্ট (Windows 10 বা Windows 7) এর সাথে কানেক্ট করার চেষ্টা করলে, অপারেটিং সিস্টেম প্রিন্ট সার্ভার থেকে HP প্রিন্টার ড্রাইভারের সঠিক 64-বিট ভার্সন সফলভাবে ডাউনলোড করলেও, সেটি ইনস্টল করতে ব্যর্থ होता এবং 0x0000007e এরর দেখাত।
Windows cannot connect to the printer.
Operation failed with error 0x0000007e.

Windows 10 কম্পিউটারে প্রিন্টার কানেকশন এররটি কিছুটা ভিন্ন দেখায়:
Operation could not be completed (error 0x0000007e).
The specified module could not be found.

একই প্রিন্ট সার্ভার থেকে 32-বিট Windows এডিশন ব্যবহার করে শেয়ার করা নেটওয়ার্ক প্রিন্টার কানেক্ট ও ইনস্টল করার সময় কোনো সমস্যা হয় না।
0x0000007e এরর শুধুমাত্র 64-বিট ক্লায়েন্টে দেখা যায় যখন 32-বিট প্রিন্ট সার্ভার-এ (Windows Server 2003 x86 বা Windows Server 2008 x86) ইনস্টল করা Hewlett Packard প্রিন্টার-এর সাথে কানেক্ট করার চেষ্টা করা হয়। সাধারণত এই সমস্যাটি সব HP প্রিন্টারের সাথে হয় না, বরং যেসব প্রিন্টার HP Universal Print Driver (HP PCL) ব্যবহার করে শুধু সেসবের সাথে হয়।
সমাধান: রেজিস্ট্রি কী ডিলিট করুন
প্রথমে চেক করুন যে প্রিন্ট সার্ভারে 32-বিট এবং 64-বিট উভয় ড্রাইভার ভার্সন ইনস্টল্ড আছে কিনা। নিচের ছবিতে দেখা যাচ্ছে x64 এবং x86 উভয় ভার্সনের HP Universal Printing PCL 6 ড্রাইভার ইনস্টল্ড আছে।

HP এবং Technet ফোরাম থেকে জানা যায়, Universal HP Printing ড্রাইভারের সেটিং-এ 32-বিট সিস্টেমের জন্য একটি ফিক্সড পাথ স্পুলার ফাইল (প্রিন্ট কিউ) এর জন্য নির্দিষ্ট করা থাকে (spool\drivers\w32x86\3), যা 64-বিট ক্লায়েন্ট খুঁজে পাচ্ছে না, ফলে 0x0000007e এররটি দেখা দেয়। ফাইল পাথটি প্রিন্ট সার্ভারের প্রিন্টার ড্রাইভার সেটিং-এ নির্দিষ্ট থাকে। আমার কেসে এটি ছিল spool\DRIVERS\W32X86\3\hpcpn112.dll, কিন্তু DLL ফাইলের নাম Universal HP Printing ড্রাইভার ভার্সনের উপর ভিত্তি করে ভিন্ন হতে পারে। এইভাবে, HP Universal Printing প্রিন্টার ড্রাইভারের 32-বিট ভার্সন Windows-এর x64 ভার্সনের সাথে असंगত। কিন্তু এটিকে ম্যানুয়ালি ঠিক করা সম্ভব।
প্রিন্ট সার্ভারে রেজিস্ট্রি কী ডিলিট করার পদ্ধতি:
- রেজিস্ট্রি এডিটর খুলুন (regedit.exe)।
- HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Print\Printers\ রেজিস্ট্রি কী-এ যান এবং প্রিন্টার নেমের ব্রাঞ্চটি এক্সপ্যান্ড করুন (আমাদের কেসে HP Color LaserJet 5550 PCL 6)।

- সমস্যা যেই প্রিন্টারের, তার রেজিস্ট্রি কী-তে CopyFiles সেকশনের অধীনে BIDI কীটি ডিলিট করুন।
নোট: প্রোডাকশন এনভায়রনমেন্টে ডিলিট করার আগে রেজিস্ট্রি কীটি এক্সপোর্ট করে আলাদা .reg ফাইলে রাখা ভালো। তারপর থেকে আপনি মূল সেটিংস ফেরত আনতে পারবেন। - ক্লায়েন্টে প্রিন্ট স্পুলার সার্ভিস রিস্টার্ট করুন:
net stop spooler net start spooler
- সার্ভার সাইডে BIDI রেজিস্ট্রি কী ডিলিট করার পর, আপনার Windows 10 x64 ক্লায়েন্ট থেকে শেয়ার করা HP প্রিন্টার আবার কানেক্ট করার চেষ্টা করুন। এখন এটি কোনো এরর ছাড়াই সফলভাবে ইনস্টল হওয়া উচিত।
বিকল্প সমাধান: লোকাল পোর্ট দিয়ে প্রিন্টার কানেক্ট করুন
যদি উপরের পদ্ধতিটি কাজ না করে, বা নন-HP প্রিন্টারের জন্যও 0x0000007e এরর দেখায়, তবে আপনি লোকাল পোর্ট ব্যবহার করে প্রিন্টার কানেক্ট করার চেষ্টা করতে পারেন। পদ্ধতিটি নিচে দেওয়া হলো:
- কন্ট্রোল প্যানেল থেকে আপনার কম্পিউটারে একটি নতুন (লোকাল!!!) প্রিন্টার যোগ করুন (Add a local printer or network printer manual settings)।

- নতুন একটি লোকাল পোর্ট তৈরি করার অপশন সিলেক্ট করুন (Port Local type)।
- পোর্ট নেম হিসেবে শেয়ার করা প্রিন্টারের ফুল UNC পাথ নির্দিষ্ট করুন। উদাহরণস্বরূপ, ManchPC1 হলো প্রিন্টার সংযুক্ত কম্পিউটারের নাম এবং শেয়ার করা প্রিন্টারের নাম Xerox2320, তবে এই প্রিন্টারের UNC অ্যাড্রেস হবে:
\\ManchPC1\Xerox2320, অথবা কম্পিউটারের নামের বদলে IP অ্যাড্রেসও ব্যবহার করতে পারেন\\192.168.1.55\Xerox2320।
- उसके बाद উপযুক্ত প্রিন্টার ড্রাইভার সিলেক্ট করুন (বা নতুন ড্রাইভার ইনস্টল করুন)।
LPT পোর্ট ম্যাপিং পদ্ধতি
একই ধরনের আরেকটি পদ্ধতি হলো LPT পোর্ট ম্যাপিং ব্যবহার করে নেটওয়ার্ক প্রিন্টার কানেক্ট করা।
- কানেক্ট করা প্রিন্টারের ড্রাইভার ড্রাইভার রিপোজিটরি থেকে রিমুভ করুন। Print Server Properties → Drivers ট্যাব → ড্রাইভার সিলেক্ট করুন (32 ও 64-বিট উভয়) → Remove ক্লিক করুন।

- নতুন লোকাল LPT2 পোর্ট ব্যবহার করে একটি লোকাল প্রিন্টার তৈরি করুন।
- তারপর এই ভার্চুয়াল LPT পোর্টকে শেয়ার করা প্রিন্টারের UNC অ্যাড্রেসের সাথে পেরmanent ম্যাপিং করার জন্য নিচের কমান্ড ব্যবহার করুন:
net use LPT2 \\ManchPC1\Xerox2320 /persistent:yes
- বাকি হলো প্রিন্টার ড্রাইভার ইনস্টল করা এবং একটি টেস্ট ডকুমেন্ট প্রিন্ট করার চেষ্টা করা।