ممنون ؛ من یکی داشتم ولی یه قسمتشو خوب تبدیل نکرد ؛ یه نگاه بهش بنداز
Printable View
ممنون ؛ من یکی داشتم ولی یه قسمتشو خوب تبدیل نکرد ؛ یه نگاه بهش بنداز
خب اون قسمت رو دستی خودتون کدنویسی کنید.نقل قول:
امتحان کردم . ولی نتونستم .
حالا شما یه نگاه بنداز ببین می تونی
برای مشاهده این لینک/عکس می بایست عضو شوید !برای عضویت اینجا کلیک کنید ] تبديل و كلاس مربوطه پيوست شده.
آرمين
سلام
من میخوام برای گذاشتن تعداد روز های فعال برنامه یه فایل درست کنم که توش تاریخ نصب و تاریخ غیر فعال شدن برنامه رو بزارم و
تعداد روز های باقی مانده . و به همین دلیل این فایل باید رمزگزاری شده باشه و یه جوری باشه که کسی نتونه توش دست ببره و عوض
کنه اطلاعاتش رو .
به نظرتون چی کار میشه کرد ؟
با سلام!نقل قول:
دوست عزيز شما مي تونيد تاريخ هاي مورد نظر خودتون رو درون يك فايل قرار بديد و بعد اون فايل رو توسط الگوريتمي مثل DES با يك كليد رمزنگاري كنيد. در اين صورت محتويات اين فايل زماني قابل رويت ميشه كه فايل با همون كليد از رمز در بياد. مسلما" اين كليد بايد از چشم كاربران پنهان بمونه. اگر كاربري هم بدون داشتن كليد قصد ويرايش فايل رمز شده رو داشته باشه، تنها باعث ميشه ساختار فايل به هم بريزه و ديگه قابل خوندن نباشه. برنامه ي شما هم بايد به گونه اي باشه كه اگه نتونست فايل رو بخونه، ليسانس برنامه رو منقضي كنه (با استفاده از بلوك Try Catch).
براي اطلاعات بيش تر به لينك هاي زير مراجعه كنيد:
برای مشاهده این لینک/عکس می بایست عضو شوید !برای عضویت اینجا کلیک کنید ]
برای مشاهده این لینک/عکس می بایست عضو شوید !برای عضویت اینجا کلیک کنید ]
موفق باشيد
آرمين
خیلی خیلی ممنون.
به نظر شما این فایل رو در چه محلی ذخیره کنم بهتر ه ؟
خواهش مي كنم.
نمي تونم يه نظر قطعي در اين زمينه بدم اما قاعدتا" محل قرارگيري اين فايل بايد در يك مسير كلي باشه مانند زير شاخه هاي ويندوز نظير System32 ، شاخه ي Program Files و يا Documents and Settings زيرا اين شاخه ها به صورت پيش فرض در تمام ويندوز ها موجود هستد. شايد System32 گزينه ي مناسبي باشه چون حجم زيادي از فايل ها و پوشه ها رو در بر مي گيره. براي دستيابي به ساير اين پوشه ها مي تونيد از كد زير استفاده كنيد:
مثلا" كد زير مسير All Users رو برمي گردونه:کد:My.Computer.FileSystem.SpecialDirectories
کد:My.Computer.FileSystem.SpecialDirectories.AllUsersApplicationData
موفق باشيد
آرمين
بازم ممنون . واقعا ممنون که بدون هیچ چشم داشتی کمک می کنید .
به نظرتون اگه فایل Hidden بشه بهتر نیست ؟
یا اینکه اصلا میشه Read Only کردش ؟
میشه بگید چه جوری؟
به نظر منم همون مسیر System32 بهتره . حالا مسیر این رو چه جوری به دست بیارم ؟ میشه مسیر ویندوز رو به دست آورد و بعدش یه System32/ گذاشت .
یه چیز دیگه که می خوام اول چک کنم آیا فایل مورد نظر وجود داره یا نه که اگه وجود داشت بعدش اطلاعات رو ازش بخونم .
راستی یادتوه یه فایل C# گذاشتم که اطلاعات هارد و مادر برد و اینجور چیزارو میگرفت و به سریال تبدیل میکرد ؟
میخواستم ببینم میشه همون سریال تولید شده رو دوباره به همون اطلاعات هارد و مادر برد و ... برگردوند ؟
خواهش مي كنم...
با توجه به نياز شما مخفي كردن، فقط خواندني كردن و حتي سيستمي كردن (System) اين فايل فكر خوبي مي تونه باشه.
كد زير با دستور Exist از مجموعه ي System.IO.File بررسي مي كنه كه آيا فايل MyFile.dat در مسير System32 وجود داره يا نه؟ اگه وجود داشته باشه، محتويات فايل رو به صورت بايت و متني مي خونه. اگر اين فايل وجود نداشته باشه با دستور Create چنين فايلي رو ايجاد مي كنه و با دستور SetAttributes، فايل رو به صورت مخفي، سيستمي و فقط خواندني در مياره.
کد:If System.IO.File.Exists("\Windows\System32\MyFile.dat") Then
'Return the file content in byte:
System.IO.File.ReadAllBytes("\Windows\System32\MyFile.dat")
'Return the file content in text:
System.IO.File.ReadAllText("\Windows\System32\MyFile.dat")
Else
'File creation:
System.IO.File.Create("\Windows\System32\MyFile.dat")
'Set the file attributes (Hidden, System and ReadOnly):
System.IO.File.SetAttributes("\Windows\System32\MyFile.dat", IO.FileAttributes.Hidden)
System.IO.File.SetAttributes("\Windows\System32\MyFile.dat", IO.FileAttributes.System)
System.IO.File.SetAttributes("\Windows\System32\MyFile.dat", IO.FileAttributes.ReadOnly)
End If
در واقع \Windows\System32 بيان گر مسير System32 هست.
در مورد سوال آخر هم آره يادمه...در اون كد از MD5 استفاده شده كه يك رمز نگاري يكطرفه هستش. در نتيجه وقتي شما مشخصات سخت افزار رو با اون سورس به يك شماره شريال تبديل كنيد ديگه نميشه اون شماره سريال رو به اطلاعات سخت افزاري تبديل كرد.
موفق باشيد
آرمين