ប្រើVB.Net បង្កើតកម្មវិធីដើម្បីគ្រប់គ្រងដំណើរការ Windows Registry
VB.Net ជា កម្មវិធីសម្រាប់អ្នកយកទៅប្រើដើម្បីបង្កើតកម្មវិធីផ្សេងៗសម្រាប់ ដំណើរការលើម៉ាស៊ីនកុំព្យូទ័រនិងនៅក្នុងទូរស័ព្ទដៃដោយបង្កើតបាន ជា Applicationផ្សេងៗគ្នានិងមានដំណើរការដោយឡែកពីគ្នាអាស្រ័យលើអ្នកដែលជាអ្នកបង្កើតកម្មវិធីឬអ្នក Programmer។មុននឹងឈានដល់ការសរសេកម្មវិធីជាមួយនិង Windows Registry , CM សូមណែនាំពីអត្ថន័យ និងអត្ថប្រយោជន៍របស់ Windows Registryជាមុនសិន។
តើ Windows Registry ជាអ្វី?
Windows Registry គឺជា hierarchical database ដែលមានតួនាទីផ្ទុកនូវទិន្នន័យនៃការធ្វើការ Configuration setting និង Options ជាច្រើនក្នុងប្រព័ន្ធដំណើរការMicrosoft Windows ។
ឧទាហរណ៍៖ Windows Registry វាផ្ទុកនូវព័ត៌មានរបស់កម្មវិធី (Software) ដូចជា Product Name, Version, User name, Serial នៃកម្មវិធីដែលយើងបានដំឡើងដោយរួមទាំងព័ត៌មានរបស់ផ្នែក Hardware និង Configuration របស់ Windows ផងដែរ។
តើហេតុអ្វីបានជាយើងត្រូវការសរសេរកម្មវិធីដើម្បីភ្ជាប់ទៅកាន់ Windows Registry?
ជាធម្មតា Program ដែល បានបង្កើតឡើងជាលក្ខណៈស្តង់ដារគេតែងតែបង្កើតកូដខ្លីមួយក្នុង នោះដើម្បីរក្សាទុកនូវព័ត៌មានរបស់កម្មវិធីនៅក្នុង Registry ហើយខ្លះទៀតគេផ្ទុកនូវ Serial ដើម្បីផ្ទៀងផ្ទាត់ជាមួយនឹងកម្មវិធីមុនពេលដំណើរការកម្មវិធី។
ដោយឡែកមេរោគនៅពេលបច្ចុប្បន្នភាគច្រើនវាក៏សរសេរកូដទៅបិទ Registry, Taskmgr, Run … ដោយស្វ័យប្រវត្តិផងដែរតែក្រោយការ Scan virus រួចយើងនូវតែមិនអាចប្រើ Run, Registry និង Taskmgr… បានដដែលដូច្នេះយើងត្រូវការចូលទៅកាន់ gpedit.msc ដើម្បីបើកវាវិញ។ តែយើងក៏អាចសរសេរកម្មវិធីបានដោយខ្លួនឯងក្នុងការបើកឬបិទ options ទាំងនោះនៅក្នុង Registryផងដែរដើម្បីចូលទៅបិទវាមុនមេរោគចូលទៅបិទRegistry មុនអ្នក។

របៀបសរសេរកូដក្នុង VB.net ដើម្បីបញ្ជាទៅកាន់ Windows Registry
យើងនឹងបង្កើតកម្មវីធីតូចមួយ ដូចខាងក្រោមដោយយើងបង្កើតប៊ូតុងសម្រាប់កំណត់បញ្ជាលើមុខងារនីមួយៗ ដែលអ្នកចង់កំណត់ទៅលើដំណើរការរបស់ Registry។

មុខងារData Dictionary នៃ Program ដែលបានកំណត់នៅលើផ្ទាំង Windowខាងលើមានបង្ហាញនៅក្នុងតារាងខាងក្រោម។

* ចំណាំ : ដើម្បីប្រើប្រាស់ Code បញ្ជា Registry ក្នុង VB.net បានយើងត្រូវ Import name : Microsoft.Win32
១- បង្កើត Key ក្នុង Registr
យើងនឹងបង្កើត Key មួយឈ្មោះថា CM Magazine នៅក្នុងទីតាំង HKEY_CURRENT_USER\Softwareដោយបំពេញកូដដូចខាងក្រោម។PrivateSub btnCreateKey_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnCreateKey.ClickDim vRegistryKey1 As RegistryKeyvRegistryKey1 = Registry.CurrentUser.OpenSubKey("Software", True)vRegistryKey1.CreateSubKey("CM Magazine") vRegistryKey1.Close()MsgBox("Create Key Was Completed")EndSub
២- បង្កើត Value ក្នុង Registry
យើងនឹងបង្កើត Value ដែលមានឈ្មោះ Name, Description និង Version ដោយភ្ជាប់តម្លៃរបស់វាទៅ នឹង Textbox : txtName, txtDescription, txtVersion នៅក្នុងទីតាំង HKEY_CURRENT_USER\Software\CM Magazine។PrivateSub btnCreateValue_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnCreateValue.Click
Dim vRegistryKey2 As RegistryKey
vRegistryKey2 = Registry.CurrentUser.OpenSubKey(“Software\CM Magazine”, True)
vRegistryKey2.SetValue(“Name”, txtName.Text)
vRegistryKey2.SetValue(“Description”, txtDescription.Text)
vRegistryKey2.SetValue(“Version”, TxtVersion.Text)
vRegistryKey2.Close()
MsgBox(“Create Value Was Completed”)
EndSub

ក្រោយពីការដាក់ Value រួចហើយយើងនិងហៅតម្លៃរបស់វាចេញមកបង្ហាញតាម Message box ។
PrivateSub ReadValue_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ReadValue.ClickDim strMgr AsStringDim vRegistryKey3 As RegistryKeyvRegistryKey3 = Registry.CurrentUser.OpenSubKey("Software\CM Magazine", True)strMgr = vRegistryKey.GetValue("Name").ToStringstrMgr = strMgr + vbCrLf + vRegistryKey3.GetValue("Description").ToStringstrMgr = strMgr + vbCrLf + vRegistryKey3.GetValue("Version").ToString MsgBox(strMgr)vRegistryKey3.Close()EndSub
៤- លុប Value របស់ Registry
ក្នុងកំណត់កូដខាងក្រោមនេះយើងនិងធ្វើការលុប Value ឈ្មោះ Version ចេញពីទីតាំង HKEY_CURRENT_USER\Software\CM Magazine។Private Sub btnDeleteValue_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnDeleteValue.ClickDim vRegistryKey4 As RegistryKeyvRegistryKey4 = Registry.CurrentUser.OpenSubKey("Software\CM Magazine", True)vRegistryKey4.DeleteValue("Version")vRegistryKey4.Close()MsgBox("Delete Value Was Completed")End Sub
5- លុប Key របស់ Registry
ក្នុងកំណាត់កូដខាងក្រោមនេះយើងនិងធ្វើការលុប Keyឈ្មោះ CM Magazine ចេញពី HKEY_CURRENT_USER\Software\ តែម្ដង។Private Sub btnDeleteKey_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnDeleteKey.ClickDim vRegistryKey5 As RegistryKeyvRegistryKey5 = Registry.CurrentUser.OpenSubKey("Software", True)vRegistryKey5.DeleteSubKey("CM Magazine")vRegistryKey5.Close()MsgBox("Delete Value Was Completed")End Sub
-ក្រោយ
ពីបានបញ្ចប់តាមជំហាននីមួយនៃការបង្កើតកម្មវិធីដែលយើងខ្ញុំបាន
បង្ហាញខាងលើអ្នកអាចយកវាទៅដាក់ឱ្យដំណើរការលើកុំព្យូទ័រផ្សេងៗ
ដោយគ្រាន់តែអ្នកយក .NetFramework របស់ VB.Net ទៅដំឡើងលើកុំព្យូទ័រនោះក្នុងករណីអ្នកមិនទាន់បានបម្លែងវាទៅជា file សម្រាប់ Setup ទេនោះ។ប៉ុន្តែមុននឹងដំណើរការអ្នកត្រូវតែចូលទៅបង្កើត Folder នៅ
ក្នុងទីតាំងដូចបានបង្ហាញនៅក្នុងចំណុចទី១ខាងលើតែបើអ្នកមិន
ចង់ចូលទៅបង្កើតដោយផ្ទាល់ទេអ្នកអាចសរសេរដើម្បីឱ្យកម្មវិធីចូល
ទៅបង្កើត Folder នោះដោយស្វ័យប្រវត្តក៏បាន៕