نمایش نتایج 1 تا 10 از 10

نام تاپیک: سوال در مورد رجيستري ( چك كردن وجود يك كليد )

  1. #1
    کاربر دائمی آواتار debugger
    تاریخ عضویت
    اردیبهشت 1387
    محل زندگی
    Turkey
    پست
    843

    Question سوال در مورد رجيستري ( چك كردن وجود يك كليد )

    چطور بايد چك كنيم ببينيم اين كليد تو رجيستري هست يا نه ؟ اگر نبود اونو ايجاد كنه

    من ميخوام برنامه براي اولين بار كه اجرا ميشه چك كنه ببينه اين كليد تو رجيستري هست يا نه ؟ اگر نبود اونو ايجاد كنه


    RegistryKey
    k = Registry.CurrentUser.CreateSubKey(@"upkeeper");
    k.SetValue(
    "mypassword", "");

  2. #2
    کاربر دائمی آواتار shytonak
    تاریخ عضویت
    مرداد 1387
    محل زندگی
    بندرعباس
    پست
    529

    نقل قول: سوال در مورد رجيستري ( چك كردن وجود يك كليد )

    بايد از if استفاده كني و كليدي رو كه قراره باز كنه ( چك كنه هست) رو برابر با null قرار بده اگه null بود بگو ايجاد كنه.

  3. #3
    کاربر دائمی آواتار debugger
    تاریخ عضویت
    اردیبهشت 1387
    محل زندگی
    Turkey
    پست
    843

    نقل قول: سوال در مورد رجيستري ( چك كردن وجود يك كليد )

    نقل قول نوشته شده توسط shytonak مشاهده تاپیک
    بايد از if استفاده كني و كليدي رو كه قراره باز كنه ( چك كنه هست) رو برابر با null قرار بده اگه null بود بگو ايجاد كنه.

    if( RegistryKey k = Registry.CurrentUser.CreateSubKey(@"upkeeper")==null&&k.SetValue("mypassword", "")==null;)
    {
    RegistryKey k = Registry.CurrentUser.CreateSubKey(@"upkeeper");
    k.SetValue(
    "mypassword", "");
    }
    اينطوري نوشتم كار نكرد.

    من ميخوام چك كنه اگر اين مسير در رجيستري نباشه اونو بسازه و وقتي ديد هست . هيچ كاري نكند

    اينم مسير

    [HKEY_CURRENT_USER\upkeeper]
    "mypassword"=""

  4. #4
    کاربر دائمی
    تاریخ عضویت
    مرداد 1386
    محل زندگی
    تبریز-ایران
    سن
    37
    پست
    169

    نقل قول: سوال در مورد رجيستري ( چك كردن وجود يك كليد )

    دوست عزیز نمی دونم می خوای چیکار کنی ولی یک سر به این پست بزن اگه حل شد و تونستی یک کاری بکنی به ما هم کمک کن؟
    https://barnamenevis.org/showthread.php?t=145731

  5. #5

    نقل قول: سوال در مورد رجيستري ( چك كردن وجود يك كليد )

    این هم راه حل

     RegistryKey regkey = Registry.CurrentUser.OpenSubKey(@"upkeeper");
    if (regkey != null)
    {
    string pass = regkey.GetValue("mypassword").ToString();
    //کلید وجوددارد
    }
    else
    {
    //create key
    regkey=Registry.CurrentUser.CreateSubKey(@"upkeepe r",RegistryKeyPermissionCheck.ReadWriteSubTree) ;
    regkey.SetValue("mypassword", "reza");

    }

  6. #6

    نقل قول: سوال در مورد رجيستري ( چك كردن وجود يك كليد )

    البته باید در آخر هم دستور regkey .Flush(); رو اجرا کنی تا مطمئن بشی که داده ها نوشته شدند
    برای اطلاعات بیشتر به این ادرس مراجعه کن

    http://www.dijksterhuis.org/modifyin...registry-in-c/

  7. #7
    کاربر دائمی آواتار debugger
    تاریخ عضویت
    اردیبهشت 1387
    محل زندگی
    Turkey
    پست
    843

    نقل قول: سوال در مورد رجيستري ( چك كردن وجود يك كليد )

    رضا جان دستت درد نكنه . مشكلم حل شد . كد بسار عالي بود

    ميشه توضيح بدي اين @ چي كار مي كنه تو كد زير : چون بعضي جاها اينو نمي زارن ؟ دليلش چيه ؟


    RegistryKey
    regkey = Registry.CurrentUser.OpenSubKey(@"upkeeper");

  8. #8
    کاربر دائمی آواتار debugger
    تاریخ عضویت
    اردیبهشت 1387
    محل زندگی
    Turkey
    پست
    843

    نقل قول: سوال در مورد رجيستري ( چك كردن وجود يك كليد )

    نقل قول نوشته شده توسط mirage041 مشاهده تاپیک
    دوست عزیز نمی دونم می خوای چیکار کنی ولی یک سر به این پست بزن اگه حل شد و تونستی یک کاری بکنی به ما هم کمک کن؟
    https://barnamenevis.org/showthread.php?t=145731
    به اين لينك نگاه كردم . منم تقريبا همچين كاري كردم

    من يه برنامه نوشتم كه براي وارد شده به برنامه اجبارا بايد پسورد وارد كني . چون اين برنامه اطلاعات شخصي و مهم افراد را نگه ميداره . هيچ كس بجز شخصي كه از نرم افزار استفاده مي كنه نبايد بتونه به برنامه دسترسي داشته باشه.

    در اولين بار كه شخص برنامه را اجرا مي كنه كادر پسورد ظاهر ميشه و شخص براي اولين بار بدون پسورد وارد برنامه ميشه و در قسمت change password برنامه يه پسوردي براي خودش ثبت مي كنه . اين پسورد تو رجيستري ثبت ميشه و دفعه بعد كه شخص ميخواد وارد برنامه بشه پسورد خودش را ميزنه.

    مشكل من اين بود كه چون من پسورد را با ادرسي كه رجيستري بود مقايسه مي كردم
    براي شخصي كه براي اولين بار از برنامه استفاده مي كنه تو رجيستري ويندوزش اين مسير نبود. و بايد هنگاه لود برنامه اين مسير ساخته ميشد. كه اين كار هم به كمك كد رضا حل شد

    البته پسورد را من hash مي كنم و تو رجيستري قرار ميدم . و پسوردي كه كاربر وارد مي كنه ايتدا هش ميشه و با هش ي كه تو رجيستري هست مقايسه ميشه. اگر درست بود وارد برنامه ميشه

    قفل نرم افزاري هم به كمك اين روش ميشه نوشت . كه الان من مي تونم راحت اين كار را بكنم

  9. #9

    نقل قول: سوال در مورد رجيستري ( چك كردن وجود يك كليد )

    کاربرد @ در اینجا اینه که اگه در آدرس کلید از کاراکتر \ استفاده بشه به جای اینکه دوتا نوشته بشه یه دونه نوشته می شه مثلا دو رشته زیر در #c برابرند
    "rt\\kh"
    برابر است با رشته "rt\kh"@

  10. #10

    نقل قول: سوال در مورد رجيستري ( چك كردن وجود يك كليد )

    البته یادم رفت بگم من فکر می کنم این یکی از کاربردهای @ بود و شاید کاربرد دیگری هم داره که اگه از دوستان بلدند بگن تا ما هم یاد بگیریم

قوانین ایجاد تاپیک در تالار

  • شما نمی توانید تاپیک جدید ایجاد کنید
  • شما نمی توانید به تاپیک ها پاسخ دهید
  • شما نمی توانید ضمیمه ارسال کنید
  • شما نمی توانید پاسخ هایتان را ویرایش کنید
  •