როგორ დარეგისტრირდეთ DLL- ში Windows- ში

მომხმარებელი ითხოვს თუ როგორ უნდა დარეგისტრირდეთ DLL ფაილი Windows 7 და 8. როგორც წესი, შემდეგ encountering შეცდომები, როგორიცაა "პროგრამა არ შეიძლება დაიწყო, რადგან საჭირო DLL არ არის კომპიუტერი." ამის შესახებ და ისაუბრეთ.

სინამდვილეში, სისტემაში ბიბლიოთეკის დარეგისტრირება ისეთი რთული არ არის (მეჩვენება ერთი მეთოდის სამი ვარიაცია) - ფაქტობრივად, მხოლოდ ერთი ნაბიჯი აუცილებელია. ერთადერთი მოთხოვნა ის არის, რომ თქვენ გაქვთ Windows Administrator უფლებები.

თუმცა, არსებობს გარკვეული ნიუანსი - მაგალითად, DLL- ის წარმატებული რეგისტრაცია არ არის აუცილებელი თქვენს კომპიუტერში დაკარგული შეცდომის გამო, და RegSvr32- ის შეცდომის გამოჩენა იმ შეტყობინებით, რომ მოდული არ შეესაბამება Windows- ს ვერსიასთან ამ კომპიუტერზე ან DLLRegisterServer შესვლის წერტილი ვერ მოიძებნა. ეს არ ნიშნავს იმას, რომ რაღაცას აკეთებთ (მე ამას ავუხსენი სტატიის ბოლოს).

DLL- ში დარეგისტრირების სამი გზა OS- ში

აღწერეთ შემდეგი ნაბიჯები, მე ვივარაუდოთ, რომ თქვენ იპოვეს, სადაც თქვენ უნდა დააკოპიროთ თქვენი ბიბლიოთეკა და DLL უკვე System32 ან SysWOW64 საქაღალდეში (და იქნებ სხვაგან, თუ ეს უნდა იყოს იქ).

შენიშვნა: ქვემოთ აღწერს, თუ როგორ უნდა დარეგისტრირდეთ DLL ბიბლიოთეკის გამოყენებით regsvr32.exe, თუმცა მე ყურადღებით მიმაჩნია ის ფაქტი, რომ თუ თქვენ გაქვთ 64-ბიტიანი სისტემა, მაშინ თქვენ გაქვთ ორი regsvr32.exe - ერთი საქაღალდე C: Windows SysWOW64 მეორე არის C: Windows System32. და ეს არის სხვადასხვა ფაილი, 64-bit რომელიც მდებარეობს System32 საქაღალდეში. ვურჩევ გამოყენებით სრული გზა regsvr32.exe თითოეულ გზები, და არა მხოლოდ ფაილის სახელი, როგორც მე ნაჩვენები მაგალითები.

პირველი მეთოდი აღწერილია ინტერნეტში უფრო ხშირად, ვიდრე სხვები და მოიცავს შემდეგს:

  • დააჭირეთ Windows + R გასაღებები ან აირჩიეთ Run ვარიანტი Windows 7 Start მენიუში (თუ, რა თქმა უნდა, თქვენ საშუალება მისცა საშუალება).
  • შეიყვანეთ regsvr32.exe path_to_file_dll
  • დააჭირეთ OK ან შეიყვანეთ.

ამის შემდეგ, თუ ყველაფერი კარგად გადიოდა, უნდა დაინახოს შეტყობინება, რომ ბიბლიოთეკა წარმატებით დარეგისტრირდა. მაგრამ მაღალი ალბათობით ნახავთ სხვა გზავნილს - მოდული დატვირთულია, მაგრამ შესვლის წერტილი DllRegisterServer ვერ მოიძებნა და ღირს შემოწმება, რომ თქვენი DLL სწორი ფაილია (მე მოგვიანებით დავწერ ამას).

მეორე გზა ბრძანებათა სტრიქონის ადმინისტრატორს აწარმოებს და წინა პუნქტში შევა იგივე ბრძანება.

  • გაუშვით ბრძანება ბრძანებად Administrator. Windows 8-ში შეგიძლიათ დააჭიროთ Win + X ღილაკებს და აირჩიეთ სასურველი მენიუ. Windows 7-ში შეგიძლიათ იპოვოთ ბრძანებათა სტრიქონი მენიუში, დააწკაპუნეთ მარჯვენა ღილაკით და აირჩიეთ "ადმინისტრატორის მართვა".
  • შეიყვანეთ ბრძანება regsvr32.exe path_to_library_dll (შეგიძლიათ იხილოთ მაგალითი სკრინშოტში).

კიდევ ერთხელ, სავარაუდოა, რომ თქვენ ვერ შეძლებთ დარეგისტრირდეთ DLL სისტემაში.

და ბოლო მეთოდი, რომელიც ასევე შეიძლება სასარგებლო იყოს ზოგიერთ შემთხვევაში:

  • მარჯვენა ღილაკს DLL რომ გსურთ დარეგისტრირდეთ და აირჩიეთ მენიუ "გახსენით".
  • დააჭირეთ "Browse" და იპოვეთ ფაილი regsvr32.exe- ში Windows / System32 ან Windows / SysWow64 საქაღალდეში, გახსენით DLL- ის გამოყენება.

სისტემაში არსებული DLL- ის დარეგისტრირების ყველა აღწერილი გზების არსი იგივეა, რამოდენიმე განსხვავებული გზა იმავე ბრძანების გასაშვებად, ვისთვისაც უფრო მოსახერხებელია. და ახლა რატომ არ შეგიძლიათ არაფერი.

რატომ ვერ დარეკოთ DLL

ასე რომ, თქვენ არ გაქვთ DLL ფაილი, იმის გამო, თუ რას ხედავთ შეცდომას თამაშის ან პროგრამის დაწყებისას, გადმოწერილი ეს ფაილი ინტერნეტში და ცდილობენ დარეგისტრირდეთ, მაგრამ არც DllRegisterServer შესვლის წერტილი ან მოდული არ შეესაბამება Windows- ის მიმდინარე ვერსიას იქნებ რაღაც სხვა, რომ არის, DLL რეგისტრაციის შეუძლებელია.

რატომ მოხდა ეს (შემდგომში და როგორ უნდა დააფიქსიროს):

  • ყველა DLL ფაილი განკუთვნილია რეგისტრირებული. იმისათვის, რომ იგი დარეგისტრირდეს ამ გზით, მას უნდა ჰქონდეს მხარდაჭერა DllRegisterServer- ის ფუნქცია. ზოგჯერ შეცდომაა გამოწვეული იმით, რომ ბიბლიოთეკა უკვე რეგისტრირებულია.
  • ზოგიერთი საიტი, რომელიც გთავაზობთ DLL- ს გადმოტვირთვას, სინამდვილეში შეიცავს dummy ფაილებს სახელით, რომელსაც ეძებთ და არ შეიძლება დარეგისტრირდეთ, რადგან სინამდვილეში ეს არ არის ბიბლიოთეკა.

და ახლა როგორ უნდა გაასწორონ ის:

  • თუ თქვენ ხართ პროგრამისტი და დარეგისტრირდეთ თქვენი DLL, სცადეთ regasm.exe
  • თუ მომხმარებელი ხართ და არ დაიწყებთ რაიმე შეტყობინებას, რომ DLL არ არის კომპიუტერში, მოძებნეთ ინტერნეტში, თუ რა სახის ფაილია და არა მისი ჩამოტვირთვა. ამის გაგება შეგიძლიათ, როგორც წესი, გადმოტვირთოთ ოფიციალური ინსტალერი, რომელიც სისტემაში თავდაპირველ ბიბლიოთეკებს ათავსებს და მათ სისტემაში დარეგისტრირებას ახდენს - მაგალითად, d3d- ით დაწყებული ყველა ფაილის სახელით, უბრალოდ დააყენეთ DirectX- ის ოფიციალური Microsoft- ის ვებსაიტიდან, msvc- სთვის, Visual Studio Redistributable- ის ერთ-ერთი ვერსიისთვის. (და თუ თამაში არ იწყება ტორენტიდან, მაშინ შეისწავლეთ ანტივირუსული ანგარიშები, შეიძლება ამოიღონ აუცილებელი DLL, ხშირად ხდება ზოგიერთ შეცვლილ ბიბლიოთეკასთან ერთად).
  • ჩვეულებრივ, DLL- ის დარეგისტრირების ნაცვლად, იგივე საქაღალდეში მდებარე ფაილების ადგილმდებარეობა, როგორც ექსპლუატაციური exe ფაილი, რომელიც მოითხოვს ამ ბიბლიოთეკას.

ამ მიზნით, იმედი მაქვს, რაღაც უფრო ნათელია, ვიდრე ეს იყო.