For Android device For iOS device

ឧសភា

ការ​បង្កើត Trial Version របស់​កម្មវិធី​ភាសា C# ឬ VB.Net

​នៅពេល​លោកអ្នក​បង្កើត​កម្មវិធី​មួយរួចហើយ លោកអ្នក​ចង់ដាក់​កម្មវិធី​ទៅ​ឲ្យ អ្នក​ប្រើ​ប្រាស់​ប្រើ​ក្នុង កំឡុងពេល​ណាមួយ​ដូចជា ១ខែ , ២ខែ ឬ​ក៏ ៣ខែ... ក្នុង​ការសាកល្បង ។ លោកអ្នក​អាច​បង្កើត Trial Version របស់​កម្មវិធី​បាន ។ យើង​ខ្ញុំ​សូមលើកយកពី​កម្មវិធី​ប្រើ​ប្រាស់ .Net ​ដូចជា C# និង VB.Net មក​បង្ហាញ ។ សូមអនុវត្តន៍តាមជំហានដូច​ខាងក្រោម​៖

ចុច Like គេហទំព័រ www.antkh.com  ដើម្បី​ទទួលបាន​ព័ត៌មាន​ថ្មីៗ​ទាក់ទងនឹង​បច្ចេកវិទ្យា​

១) បង្កើត Project ថ្មីមួយដោយ​ប្រើ​ប្រាស់​ភាសា C# VB.Net

) ​បង្កើត Class ថ្មីមួយដោយ Click លើ Project រួច​ជ្រើសរើស​យក Add Class

ដាក់​ឈ្មោះ​របស់ Class ឩទាហរណ៍​ខ្ញុំ​ដាក់​ឈ្មោះ​ថា TrialVersion បន្ទាប់ទៀតចុច Add

អ្នកនឹងទទួលបាន Blank Class ថ្មីមួយ ។ មុននឹងអ្នក​សរសេរ Definition ទៅ​ឲ្យ Class សូម​ប្រើ​ប្រាស់ Namespace មួយចំនួនដូច​ខាងក្រោម​៖

- Micorsoft.Win32 អាច​ឲ្យ​លោកអ្នក Access Registry ដូចជា​ Open Key, Create Key, Close Key…

- System.windows.Forms  អាច​ឲ្យ​លោកអ្នក​ប្រើ​ប្រាស់ Class (MessageBox) បាន ។ យើង​ប្រើ វា ដើម្បី​បង្ហាញ Message ទៅដល់អ្នក​ប្រើ​ប្រាស់​បានដឹង ។

- Systemអាច​ឲ្យ​លោកអ្នក​ប្រើ​ប្រាស់ (Exception Class និង Convert Class ឬ​ក៏ Struct DateTime និង Sturct Timespane) បាន​ផងដែរ ។

៣) Add Definition ទៅ​ឲ្យ class (TrialVersion) Definition ទាំងនោះ​មាន​ដូចជា​៖

a) . FuncRegedit () សម្រាប់​បង្កើត Key និង រក្សាទុក​តម្លៃ នៅ​ក្នុង Registry

♦ Code C#:

♦ Code VB.NET:

♦ ពន្យល់ Code:

RegistryKey regKey: statement នេះ​មានន័យថា regKey គឺជា Object មួយ​ដែល តំណាង​ឲ្យ​ Key-level node នៅ​ក្នុង​ Registry

regKey = Registry.CurrentUser.OpenSubKey  (@"SOFTWARE\AppSecurity1", true)  : Statement នេះ​មានន័យថា regKey នឹងទទួល ឬ​ក៏​ចាប់យក Key (AppSecurity1) ពី​ក្នុង Registry ​បន្ទាប់មក​ទៀត វានឹង​ធ្វើការ​សិក្សា ប្រសិនបើ​អត់មាន Key (AppSecurity1) នោះទេ វានឹង​បង្កើត​ Key ចូល​ក្នុង Registry ​តាមរយៈ  regKey.CreateSubKey ​បន្ទាប់មក​ទៀត​វានឹង Add ​ទិន្នន័យ​ទៅ​ឲ្យ Key តាមរយៈ Method (FuncWriteValue) ។ នៅពេល FuncWriteValue ​ដំណើរ​ការ​តម្លៃ Return ត្រលប់មកវិញគឺ True និង False ។ បើ False នោះ Message “setting fail” នឹង​ផ្ដល់​ទៅ​ឲ្យ Method (FuncRegedit) ផ្ទុយមកវិញបើ Key (AppSecurity1) មាន វានឹង​អាន ទិន្នន័យ​ចេញពី​ក្នុង Registry តាមរយៈ  Method (FuncGetValueFromReg) ។ ហើយ​តម្លៃ ឬ​ក៏​ទិន្នន័យ ដែល​ទទួល បានពី FuncGetValueFromReg ​វានឹង​ផ្ដល់​ទៅ​ឲ្យ Method (FuncRegedit)

b) . FuncWriteValue () សម្រាប់​ Write ​ទិន្នន័យ​ចូល​ក្នុង Registry ។ ទិន្នន័យ​ដែល​ត្រូវ Write ចូលនោះ មាន​ដូចជា ថ្ងៃ​ចាប់ផ្តើម​ប្រើ​ប្រាស់​កម្មវិធី ថ្ងៃ​បញ្ចប់​នៃការ​ប្រើ​ប្រាស់​កម្មវិធី និង​ឈ្មោះ​របស់ Application

♦ Code C#:

♦ Code VB.NET:

♦ ពន្យល់ Code:

strStartDate = DateTime.Today.ToString ("dd/MM/yyyy") : Statement នេះ​មានន័យថា strStartDate នឹងចាប់យក Current date របស់ Computer ហើយ រក្សាទុក​ក្នុង​ទម្រង់ ឩទាហរណ៍ (04/04/2016)

strLastDate = Format (Today.AddDays (ustTrialPeriod) , "dd/MM/yyyy") : Statement នេះ​មានន័យថា​វានឹង​ចាប់យក Current date របស់ Computer ហើយ add ចំនួន​ថ្ងៃ​បន្ថែម​ដែល​ទទួលបានពី ustTrialPeriod ហើយ​រក្សាទុក​ក្នុង​ទម្រង់ ឩទាហរណ៍ (01/10/2013)

regKey.SetValue ("System_In", strStartDate & ";" & strLastDate) : Statement នេះមាន ន័យថា​វានឹង​ចាប់យក​តម្លៃ​របស់ strStartDate និងstrLastDate ហើយ​រក្សាទុក​ក្នុង​ទម្រង់ ឩទាហរណ៍ (01/09/2013;01/10/2013)  

 strSaveFirstAccessdate = DateTime.Today.ToString  ("dd/MM/yyyy") + ";" + DateTime.Now.ToString ("hh:mm:ss tt") : Statement នេះមាន ន័យថា​វានឹង​ចាប់យក Current date and time របស់ computer ហើយ​រក្សាទុក​ក្នុង​ទម្រង់ ឩទាហរណ៍ (01/09/2013;11:05:45 AM)  

c) . FuncGetValueFromReg () ​សម្រាប់​ Read ​តម្លៃ ចេញពី Registry

♦ Code C#:

♦ Code VB.NET:

♦ ពន្យល់ Code:

strStartDateLastDate = regKey.GetValue  ("System_In")  .ToString () : Statementនេះមាន ន័យថា strStartDateLastDate ចាប់យក​តម្លៃ​របស់ System_In ពី​ក្នុង Registry តម្លៃ​នោះតំណាង​ឲ្យ​ថ្ងៃ ចាប់ផ្តើម និង​បញ្ចប់ របស់ការ​ប្រើ​ប្រាស់​កម្មវិធី ដែល​មាន ២១ តួអក្សរ​ដែល​មាន​ទម្រង់​ដូចនេះ (01/09/2013;01/10/2013) ។

strStartDateLastDate.Length.ToString () =="21" : statement នេះ​មានន័យថា ប្រៀបធៀប ចំនួនតួអក្សររបស់ strStartDateLastDate បើសិនជាស្មើ ២១ តូអក្សរពិតប្រាកដមែន វានឹង​ចាប់ផ្តើមប្រៀបធៀប ថ្ងៃ​ចាប់ផ្តើម ដែល​ទាញចេញពី Registry ​ជាមួយនឹង Current Date របស់ Computer ​តាមរយៈ FuncDiffDate (CDate (strStartDate) ) ។ ផ្ទុយមកវិញ បើវាមិនស្មើ ២១ តួអក្សរនោះ​វានឹង​បង្ហាញ Message " ​តម្លៃ​របស់ Key ​ត្រូវបាន​កែប្រែ ខុសពី​ទម្រង់​ដើម ដោយសារ​អ្នកបានចូលកែ នៅ​ក្នុង​ Registry" 

strStartDate = strStartDateLastDate.Substring (0, 10) : statement នេះ​មានន័យថា ចាប់យក១០ តួអក្សរដំបូងរបស់ strStartDateLastDate ដែល​តំណាង​ឲ្យ​ថ្ងៃ​ចាប់ផ្តើម​ប្រើ​ប្រាស់​កម្មវិធី ។

strEndDate = strStartDateLastDate.Substring (11) : statement នេះ​មានន័យថា ចាប់យក ១០ តួអក្សរ​ចុងក្រោយ​របស់ strStartDateLastDate ដែល​តំណាង​ឲ្យ​ថ្ងៃ​ផុត​កំណត់​ប្រើ​ប្រាស់ កម្មវិធី ។

intNumSystem_UsedTrialDays = FuncDiffDate (Convert.ToDateTime (strStartDate) ) : statement នេះ​មានន័យថា​រាប់ចំនួន​ថ្ងៃ​ដែល​នៅសល់ តាមរយៈ​ Method (FuncDiffDate)

 d) . FuncDiffDate () ​សម្រាប់​ធ្វើការ​ដក​ថ្ងៃ​បច្ចុប្បន្ន​ជាមួយនឹង​ថ្ងៃ​ពីមុន ។

♦ Code C#:

♦ Code VB.NET:

4) នៅ​ក្នុង Form ចូរ​សរសេរ Code ដូច​ខាងក្រោម​៖

♦ Code C#:

♦ Code VB.NET:

To See your registry :

Click on Start → RUN and Type regEdit and press OK Buton…

Select (HKEY_CURRENT_USER → SOFTWARE → AppSecurity1)

♦ រៀបរៀងអត្ថបទដោយៈ លោក អ៊ិន សុភា កែ​សម្រួល​អត្ថបទដោយៈ លោក ង៉ែត ណារ៉េត

 ដកស្រង់ចេញពី​ទស្សនាវដ្ដី​អាន-ANT ច្បាប់​ទី ៥៣ ប្រចាំខែ កញ្ញា ឆ្នាំ ២០១៣

♦ កម្មវិធី​ដែល​កង្កើតដោយអាន-ANT ទើបចេញថ្មីៗ​
 ​សម្រាប់​ព័ត៌មាន​ទំនាក់ទំនងមកយើង​ខ្ញុំ ៖ លេខ​ទូរសព្ទ ០១០ / ០១៦ ៦៦៦ ៦៥៣
Facebook: https://www.facebook.com/anttrainning
Facebook Page: ANT Magazine
Facebook Group: https://www.facebook.com/groups/ANTTrGroup/
website: www.antkh.com 

មតិ និង​យោបល់​ទៅលើ​អត្ថបទ​នេះ (តាម Facebook)

ខាងក្រោម​នេះ​ជា​យោបល់​ផ្សេងៗ​របស់​អ្នកទស្សនា