ប្រើ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
ដោយបំពេញកូដដូចខាងក្រោម។Private
Sub
btnCreateKey_Click(
ByVal
sender
As
System.Object,
ByVal
e
As
System.EventArgs)
Handles
btnCreateKey.Click
Dim
vRegistryKey1
As
RegistryKey
vRegistryKey1 = Registry.CurrentUser.OpenSubKey(
"Software"
,
True
)
vRegistryKey1.CreateSubKey(
"CM Magazine"
)
vRegistryKey1.Close()
MsgBox(
"Create Key Was Completed"
)
End
Sub
២- បង្កើត Value ក្នុង Registry
យើងនឹងបង្កើត Value ដែលមានឈ្មោះ Name, Description និង Version ដោយភ្ជាប់តម្លៃរបស់វាទៅ នឹង Textbox : txtName, txtDescription, txtVersion នៅក្នុងទីតាំង HKEY_CURRENT_USER\Software\CM Magazine
។
Private
Sub
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 ។
Private
Sub
ReadValue_Click(
ByVal
sender
As
System.Object,
ByVal
e
As
System.EventArgs)
Handles
ReadValue.Click
Dim
strMgr
As
String
Dim
vRegistryKey3
As
RegistryKey
vRegistryKey3 = Registry.CurrentUser.OpenSubKey(
"Software\CM Magazine"
,
True
)
strMgr = vRegistryKey.GetValue(
"Name"
).ToString
strMgr = strMgr + vbCrLf + vRegistryKey3.GetValue(
"Description"
).ToString
strMgr = strMgr + vbCrLf + vRegistryKey3.GetValue(
"Version"
).ToString
MsgBox(strMgr)
vRegistryKey3.Close()
End
Sub
៤- លុប 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.Click
Dim vRegistryKey4 As RegistryKey
vRegistryKey4 = 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.Click
Dim vRegistryKey5 As RegistryKey
vRegistryKey5 = 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 នោះដោយស្វ័យប្រវត្តក៏បាន៕