តើសោចុះបញ្ជី CLSID គឺជាអ្វី?

CLSID ឬ Class Identifier គឺជាខ្សែអក្សរនៃអក្សរក្រមលេខ (ទាំងលេខ និងតួអក្សរអក្ខរក្រម) ដែលត្រូវបានប្រើដើម្បីតំណាងឱ្យឧទាហរណ៍ជាក់លាក់នៃ Component Object Model ឬកម្មវិធីផ្អែកលើ COM ។ វាអនុញ្ញាតឱ្យប្រព័ន្ធប្រតិបត្តិការ និងសូហ្វវែរ ជាពិសេសសម្រាប់វីនដូ រកឃើញ និងចូលប្រើសមាសធាតុកម្មវិធីដោយមិនកំណត់អត្តសញ្ញាណពួកវាតាមឈ្មោះរបស់ពួកគេ។ ទោះបីជាក្រុមហ៊ុន Microsoft បានបញ្ឈប់ការប្រើប្រាស់ COM ដើម្បីគាំទ្រដល់ហេដ្ឋារចនាសម្ព័ន្ធ .NET ក៏ដោយ ក៏ COM នៅតែស្ថិតក្នុងការប្រើប្រាស់ជាធាតុផ្សំដ៏សំខាន់សម្រាប់កម្មវិធីដែលប្រើជាទូទៅជាច្រើន ហើយមិនមានគម្រោងឈប់ដំណើរការទេ។

ឧទាហរណ៍នៃវត្ថុដែលប្រើ COM និង CLSID ដែលត្រូវគ្នារួមមាន ActiveX, My Computer directory និង Windows Start Menu ។ CLSID ធម្មតានៅក្នុង Windows Registry របស់អ្នកអាចមើលទៅដូចនេះ៖

{48E7CAAB-B918-4E58-A94D-505519C795DC}

ការជួបទំនងបំផុតរបស់អ្នកជាមួយ CLSID គឺនៅពេលដែលគេហទំព័រសុំឱ្យអ្នកធ្វើបច្ចុប្បន្នភាព ActiveX ឬកម្មវិធីផ្សេងទៀត។ កម្មវិធីរុករកតាមអ៊ីនធឺណិតរបស់អ្នករកឃើញកំណែកម្មវិធីរបស់អ្នកដោយពិនិត្យមើល CLSID របស់វា ហើយបញ្ជូនព័ត៌មាននេះទៅគេហទំព័រដោយមិនធ្វើឱ្យខូចកុំព្យូទ័ររបស់អ្នក។

ទោះជាយ៉ាងណាក៏ដោយ ការអាប់ដេតប្រព័ន្ធផ្សព្វផ្សាយក្លែងក្លាយជាញឹកញាប់ត្រូវបានប្រើដើម្បីចែកចាយកម្មវិធីព្យាបាទ និងការគំរាមកំហែងកុំព្យូទ័រផ្សេងទៀត ហើយអ្នកគួរតែជៀសវាងការទាញយកបច្ចុប្បន្នភាពពីគេហទំព័រដែលអ្នកមិនទុកចិត្តដោយប្រយោល។

នៅពេលដែលការចូល CLSID ល្អនឹងអាក្រក់

ប្រសិនបើ CLSID ខូច កុំព្យូទ័ររបស់អ្នកអាចជួបប្រទះបញ្ហាទាក់ទងនឹងកម្មវិធីដែល CLSID ត្រូវបានភ្ជាប់ទៅ។ បញ្ហាទូទៅមួយគឺការខូចខាត CLSID ដែលបណ្តាលឱ្យកម្មវិធីមិនអាចផ្ទៀងផ្ទាត់កំណែផ្ទាល់ខ្លួនរបស់វា និងធ្វើបច្ចុប្បន្នភាពដោយខ្លួនឯង។ ជាដំណោះស្រាយងាយស្រួលអនុវត្ត ការលុប និងដំឡើងកម្មវិធីរបស់អ្នកឡើងវិញជាធម្មតាអាចដោះស្រាយបញ្ហានេះបាន។

បញ្ហាទូទៅបំផុតដែលទាក់ទងនឹងការចុះឈ្មោះ CLSID គឺជាការបរាជ័យរបស់កម្មវិធីក្នុងការលុប CLSID របស់វាចេញពី Registry នៅពេលដែលកម្មវិធីដែលនៅសល់ត្រូវបានលុបចេញ។ ទោះបីជានេះគឺជាការអនុវត្តន៍ការសរសេរកម្មវិធីមិនល្អដែលធ្វើអោយមានការរំខានដល់ការចុះបញ្ជីរបស់កុំព្យូទ័រជាមួយនឹងធាតុអត្ថបទដែលគ្មានន័យក៏ដោយ ធាតុ CLSID ដែលមិនបានប្រើទំនងជាមិនបង្កគ្រោះថ្នាក់ដល់កុំព្យូទ័ររបស់អ្នកទេ។ ទោះជាយ៉ាងណាក៏ដោយ អ្នកសម្អាតបញ្ជីឈ្មោះមួយចំនួន និងកម្មវិធីថែទាំប្រព័ន្ធផ្សេងទៀតមានជំនាញក្នុងការដក 'សារធាតុឥតបានការ' ដែលមានមូលដ្ឋានលើ CLSID នេះ។ ក្នុងកាលៈទេសៈធ្ងន់ធ្ងរ ដូចជាកុំព្យូទ័រដែលមានធនធានប្រព័ន្ធទាប ការចុះបញ្ជីដែលមានធាតុ CLSID ច្រើនពេកអាចបណ្តាលឱ្យមានបញ្ហាដំណើរការ។

ប្រសិនបើអ្នកចាប់អារម្មណ៍ក្នុងការកែតម្រូវធាតុចុះបញ្ជី CLSID ដោយដៃ ការប្រុងប្រយ័ត្នខ្ពស់គួរតែត្រូវបានប្រើ។ ការផ្លាស់ប្តូរទៅលើការចុះបញ្ជីរបស់អ្នកអាចបំផ្លាញប្រព័ន្ធប្រតិបត្តិការរបស់អ្នកតាមវិធីជាច្រើន ជាពិសេសដោយធ្វើឱ្យវាបរាជ័យក្នុងការទទួលស្គាល់សមាសធាតុ និងកម្មវិធីសំខាន់ៗ។ មិនថាអ្នកចាប់អារម្មណ៍ក្នុងការផ្លាស់ប្តូរធាតុ CLSID របស់កុំព្យូទ័រអ្នកឬអត់នោះទេ ការមាន Windows Registry បម្រុងទុកតាមរយៈចំណុចស្ដារប្រព័ន្ធ ឬវិធីសាស្ត្រផ្សេងទៀតត្រូវបានណែនាំក្នុងគ្រប់ករណីទាំងអស់។

ការបាត់ខ្លួន CLSID

ទោះបីជា CLSID ជាធម្មតាគឺជាការបញ្ចូលអត្ថបទអចិន្រ្តៃយ៍នៅក្នុងបញ្ជីឈ្មោះរបស់អ្នកក៏ដោយ - យ៉ាងហោចណាស់រហូតដល់អ្នកលុបកម្មវិធីដែលវាត្រូវបានភ្ជាប់ទៅ - ថតបណ្តោះអាសន្ន និងឯកសារក៏អាចបង្ហាញធាតុ CLSID នៅក្នុងឈ្មោះរបស់ពួកគេផងដែរ។ នេះច្រើនតែបង្កឡើងដោយអ្នកដំឡើងកម្មវិធីដែលបំប្លែងឯកសារដើម្បីប្រើសម្រាប់ដំឡើងមុននឹងយកវាចេញ។ ឯកសារ និងថតឯកសារបែបនេះភាគច្រើនគួរតែលុបខ្លួនឯងដោយស្វ័យប្រវត្តិ បន្ទាប់ពីការដំឡើងបានបញ្ចប់។ ក្នុងករណីមានការសរសេរកូដមិនល្អ ឬការដំឡើងរំខាន អ្នកប្រហែលជាត្រូវលុបវត្ថុទាំងនេះដោយខ្លួនឯង ទោះបីជាវាមិនគួរធ្វើឱ្យកុំព្យូទ័ររបស់អ្នកខូចក៏ដោយ។

មិនមែនកម្មវិធីដែលប្រើ CLSID ទាំងអស់ត្រូវបានបង្ខំឱ្យសរសេរធាតុ CLSID របស់ពួកគេទៅក្នុង Windows Registry របស់អ្នកទេ។ សមាសធាតុ RegFree ឬ Registration-Free COM មានសមត្ថភាពរក្សាទុកធាតុ CLSID របស់ពួកគេនៅក្នុងឯកសារ EXE ផ្ទាល់របស់ពួកគេ ឬនៅក្នុងឯកសារ XML ដាច់ដោយឡែក។ វាមានគុណសម្បត្តិជាក់លាក់ ដូចជាអនុញ្ញាតឱ្យកម្មវិធីមួយត្រូវបានដំឡើងច្រើនដងជាកំណែផ្សេងៗគ្នា។ ទោះយ៉ាងណាក៏ដោយ ការគាំទ្រ RegFree COM គឺមានកម្រិតច្រើន ហើយជួនកាល (ក្នុងករណីកម្មវិធីពេញប្រព័ន្ធដូចជា DirectX) មិនអាចប្រើបានទាំងស្រុង។

ភាពខុសគ្នារវាង COM របស់ CLSID និងនៅសល់នៃ COM Universe

ចំណុចប្រទាក់ COM ជាមួយ CLSID គឺជាគំរូវត្ថុធាតុដែលជាវិធីសាស្ត្រអន្តរការីដែលប្រើទស្សនវិជ្ជានៃការសរសេរកម្មវិធីតម្រង់ទិសវត្ថុ (ឬ OOP) ។ វាមិនមានទំនាក់ទំនងផ្ទាល់ជាមួយបច្ច័យដែនគេហទំព័រ .COM ដែលតំណាងឱ្យកម្រិតកំពូល 'ពាណិជ្ជកម្ម' ដែន។

ដូចគ្នានេះដែរ សមាសធាតុ COM របស់ CLSID មិនទាក់ទងនឹងឯកសារ .COM ដែលជាប្រភេទរងនៃឯកសារដែលអាចប្រតិបត្តិបាន ឬ EXE ទេ។ ទោះបីជាសមាសធាតុ Windows មួយចំនួន និងកម្មវិធីផ្សេងទៀតប្រើ .COM ក៏ដោយ ទម្រង់ឯកសារហួសសម័យនេះតម្រូវឱ្យមានការត្រាប់តាម MS-DOS ដែលមិនត្រូវបានរួមបញ្ចូល (តាមលំនាំដើម) នៅលើប្រព័ន្ធប្រតិបត្តិការ Windows 64 ប៊ីត។

កន្លែងរបស់ CLSID នៅក្នុងឧស្សាហកម្ម Malware

ធាតុ CLSID អាចត្រូវបានប្រើដើម្បីដំណើរការកម្មវិធីដែលបង្កគ្រោះថ្នាក់ ក៏ដូចជាកម្មវិធីដែលមានសុវត្ថិភាពផងដែរ។ Rootkits, trojans, malicious Browser Helper Objects និងប្រភេទ malware ផ្សេងទៀតទាំងអស់អាចប្រើប្រាស់ប្រព័ន្ធ CLSID ដើម្បីបើកដំណើរការដោយខ្លួនឯងដោយស្វ័យប្រវត្តិ ឬនៅពេលដែលលក្ខខណ្ឌមួយចំនួនត្រូវបានបង្កឡើង។ កម្មវិធីប្រឆាំងមេរោគមានសមត្ថកិច្ចភាគច្រើននឹងរកឃើញ និងលុបធាតុ CLSID ព្យាបាទ រួមជាមួយនឹងមេរោគដែលមានទំនាក់ទំនងជាមួយពួកគេ។ ទោះយ៉ាងណាក៏ដោយ ដូចជាធាតុ CLSID ធម្មតា ធាតុមេរោគ CLSID ដែលមិនបានលុបសម្រាប់កម្មវិធីដែលត្រូវបានយកចេញគឺមិនអាចបង្កការខូចខាតដល់កុំព្យូទ័ររបស់អ្នកបានទេ។

កម្មវិធី Malware ក៏ត្រូវបានគេដឹងថាប្រើធាតុ CLSID ដើម្បីធ្វើការហៅទៅកាន់កម្មវិធីផ្សេងទៀត (ដូចជា Internet Explorer)។ កម្មវិធីទាំងនេះអាចឬមិនបង្ហាញការចង្អុលបង្ហាញដែលអាចមើលឃើញនៃការបើក ទោះបីជាក្នុងករណីភាគច្រើន អ្នកគួរតែអាចរកឃើញដំណើរការអង្គចងចាំរបស់កម្មវិធីដែលបើកតាមរយៈកម្មវិធីគ្រប់គ្រងភារកិច្ច និងឧបករណ៍ប្រើប្រាស់ស្រដៀងគ្នា។ ការវាយប្រហារបែបនេះអាចប្រើដើម្បីធ្វើការវាយលុកតាមប្រព័ន្ធអ៊ីនធឺណេតផ្សេងៗ ដោយមិនមានអ្នកប្រើប្រាស់កុំព្យូទ័របានដឹង។ ខណៈពេលដែលចំណេះដឹងអំពី CLSID គឺមិនចាំបាច់សម្រាប់ការប្រើប្រាស់កុំព្យូទ័រធម្មតា ការយល់ដឹងអំពីសមត្ថភាព និងដែនកំណត់របស់វាអាចជួយដោះស្រាយកម្មវិធី និងកំហុសដែលទាក់ទងនឹងការចុះបញ្ជីជាមួយនឹងការខកចិត្តតិចតួច។

កំពុង​ផ្ទុក...