Колдонуучулар dll файлын Windows 7 жана 8-де кантип каттоого болот деп сурашат, адатта, "Программаны ишке киргизүү мүмкүн эмес, анткени компьютерде dll файлы жок" сыяктуу каталарга туш болгондон кийин. Бул жөнүндө сүйлөшөбүз.
Чындыгында, китепкананы тутумга каттоодон өткөрүү анчалык деле кыйын иш эмес (бир ыкманын үч вариантын көрсөтөм) - чындыгында бир гана кадам керек. Жалгыз шарт - бул сизде Windows администраторунун укуктары бар.
Бирок, бир катар нюанстар бар - мисалы, DLLдин ийгиликтүү катталуусу сизди "китепкана компьютерде эмес" катасынан сактап калбайт, ал эми RegSvr32 катасы модул бул компьютердеги Windows версиясына туура келбейт же DLLRegisterServer кирүү чекити табылган жок, Бул сиз туура эмес иш кылып жатасыз дегенди билдирбейт (макаланын аягында эмнени түшүндүрүп берейин).
OS'те DLL каттоонун үч жолу
Кийинки кадамдарды сүрөттөө менен, сиз китепканаңызды көчүрө турган жерди таптыңыз деп ойлойм, ал эми DLL буга чейин System32 же SysWOW64 папкасында (жана ал жерде дагы болушу мүмкүн) дагы бар.
Эскертүү: төмөндө биз regsvr32.exe программасынын жардамы менен DLLди кантип каттагандыгыбызды сүрөттөп беребиз, бирок сизге көңүл бурам, эгерде сизде 64 биттик тутум болсо, анда эки regsvr32.exe бар - бири C: Windows SysWOW64 папкасында. экинчиси C: Windows System32. Бул ар кандай файлдар, 64 биттик System32 папкасында жайгашкан. Мен мисалдарда көрсөтүлгөндөй, файлдын аталышын эле эмес, ар бир ыкмада regsvr32.exe үчүн толук жолду колдонууну сунуш кылам.
Биринчи ыкма Интернетте башкаларга караганда көбүрөөк сүрөттөлөт жана төмөнкүлөрдөн турат:
- Windows + R баскычтарын басыңыз же Windows 7 Баштоо менюсунан "Иштөө" баскычын тандаңыз (албетте, сиз анын дисплейи күйгүзүлбөсө).
- кирүү regsvr32.exe path_to_file_DLL
- OK же Enter басыңыз.
Андан кийин, эгерде баары ойдогудай болсо, анда сиз китепкананын ийгиликтүү катталгандыгын билдирген билдирүүнү көрүшүңүз керек. Бирок, ыктымалдуулук менен, сиз дагы бир билдирүүнү көрө аласыз - Модуль жүктөлгөн, бирок DllRegisterServer кириш чекити табылган жок жана DLL файлыңыз туура экендигин текшерүү керек (мен айткандай, бул жөнүндө кийинчерээк жазам).
Экинчи жол - буйрук сабын администратор катары иштетүү жана мурунку параграфта көрсөтүлгөндөй буйрукту киргизүү.
- Буйрук сабын Администратор катары иштетиңиз. Windows 8де Win + X баскычын басып, керектүү меню пунктун тандаңыз. Windows 7де сиз Баштоо менюсунан буйрук тилкесин таба аласыз, аны оң баскыч менен чыкылдатып, "Администратор катары иштетүү" баскычын тандаңыз.
- Командасын киргизиңиз regsvr32.exe path_to_library_DLL (скриншотто көрө турган мисал).
Дагы бир жолу, сиз DLLди системада каттай албай каласыз.
Акыркы ыкма, айрым учурларда пайдалуу болушу мүмкүн:
- Катталгыңыз келген DLLди оң баскыч менен чыкылдатып, "менен ачуу" менюсун тандаңыз.
- "Карап чыгуу" баскычын чыкылдатып, Windows / System32 же Windows / SysWow64 папкасынан regsvr32.exe файлын табыңыз, аны менен DLLди ачыңыз.
Системде DLL каттоонун бардык сүрөттөлгөн ыкмаларынын маңызы бирдей, бир эле команданы иштетүүнүн бир нече жолу бар - кимге ыңгайлуу. Эми эмне үчүн ийгиликке жете албайсың.
Эмне үчүн DLL каттала албайт
Демек, сизде эч кандай DLL файл жок, андыктан оюн же программаны баштоодо ката байкалып, бул файлды Интернеттен жүктөп, катталууга аракет кылдыңыз, бирок DllRegisterServer кирүү чекити же модул Windowsтун учурдагы версиясына туура келбейт жана балким, дагы бир нерсе, башкача айтканда, DLL каттоосу мүмкүн эмес.
Эмне үчүн мындай болуп жатат (мындан ары аны кантип оңдоого болот):
- Бардык DLL файлдары каттала турган эмес. Ушундай жол менен катталышы үчүн, ал ошол эле DllRegisterServer функциясын колдошу керек. Кээде ката китепкананын буга чейин каттоодон өткөндүгүнөн улам келип чыгат.
- DLL файлдарын жүктөп алууну сунуш кылган айрым сайттарда, чындыгында, сиз издеп жүргөн аты-жөнү жок файлдар бар, бирок катталбайт, анткени бул китепкана эмес.
Эми аны кантип оңдоого болот:
- Эгер сиз программист болсоңуз жана DLL'ди каттсаңыз, regasm.exe аракет кылып көрүңүз
- Эгер сиз колдонуучу болсоңуз жана компьютериңизде DLL жок экендиги жөнүндө билдирүү менен башталбасаңыз, анда файлдын эмне экендигин Интернеттен издеп, аны кайдан жүктөп алсаңыз болот. Адатта, муну билип, баштапкы китепканаларды орнотуп, аларды тутумда каттай турган расмий орноткучту жүктөп алсаңыз болот - мисалы, d3d деп аталган бардык файлдар үчүн, Microsoftтун расмий веб-сайтынан DirectX орнотсоңуз болот, msvc үчүн - Visual Studio кайра бөлүштүрүлө турган версиялардын бири. (Эгерде кээ бир оюн торренттен башталбаса, анда антивирустук отчетторду караңыз, ал зарыл DLLлерди жок кылышы мүмкүн, бул кээ бир өзгөртүлгөн китепканаларда болот).
- Көбүнчө, DLL каттоонун ордуна, файлды ушул эле китепкананы талап кылган exe аткарыла турган файл менен бир папкага жайгаштыруу демилгеленет.
Мен мындай жыйынтыкка келдим, бир нерсе болуп көрбөгөндөй айкын болду деп ишенем.