PDA

View Full Version : سوال: تشخیص نوع ویندوز



MP.C-Writer
پنج شنبه 16 تیر 1390, 22:35 عصر
سلام.

می خواستم بدونم چه جوری میشه نوع ویندوزی که روی سیستم نصبه رو فهمید؟

منظورم xp,vista,7... هستش.

ممنون

returnx
جمعه 17 تیر 1390, 00:34 صبح
اگه جستجو میکردی یا کلمه ی Environ رو جستجو میکردید زود تر به جواب میرسیدید تا اینکه تاپیک بزنید...
از تابع Environ میتونید برای اینکار استفاده کنید :

MsgBox (Environ("OS"))
مطالعه این تاپیک ها رو هم به شما توصیه میکنم:
http://barnamenevis.org/showthread.php?171671-Environ
http://barnamenevis.org/showthread.php?270013-%D8%AA%D9%85%D8%A7%D9%85%DB%8C-%D8%AF%D8%B3%D8%AA%D9%88%D8%B1%D8%A7%D8%AA-%D8%AA%D8%A7%D8%A8%D8%B9-Environ-(%D8%A8%D8%B3%DB%8C%D8%A7%D8%B1-%D8%A8%D8%AF%D8%B1%D8%AF%D8%A8%D8%AE%D9%88%D8%B1)
http://barnamenevis.org/showthread.php?150170-get-windows-directory
البته یک نکته ای وجود داره که اگه از این کد در Winxp استفاده کنید Windows Nt رو بر میگردونه و اگه اشتباه نکنم Win7 هم همینطور بخاطر هسته ی سیستم عامل هست اما Win Vista باید متفاوت باشه...
از دایرکتوری های سیستم عامل ها هم برای شناسایی میتونید استفاده کنید...

MP.C-Writer
جمعه 17 تیر 1390, 14:19 عصر
ممنون. ولی منظورم همین دایرکتوری ویندوز ها بود. می خواستم بدونم با استفاده از دایرکتوری نصب ویندوز، چه طوری میشه پی برد چه ویندوزی نصب شده؟

returnx
شنبه 18 تیر 1390, 00:24 صبح
خوب اگه دقت کنید مثلا در Window XP ما Document & Setting داریم اما تو Seven ما Users داریم...
در مورد Vista دقیقا اطلاع ندارم دایرکتوری های سیستم عامل به چه صورت هست چو تا حالا رو سیستمم نصب نکردم ، خیلی هم کم باهاش کار کردم ، الانم متاسفانه سیستمی ندارم که روش نصب باشه وگرنه مطمئنا یک سری تغیرات داره که شما میتونید از روی اون نتشخیص بدید مثلا یکی از ساده ترین راه ها اینه که یک فایل تو دایرکتوری Document & Setting درست کنید اگه Error داد معلومه که Seven هست اگه Error نداد معلوم میشه Xp هست ، بعد خطا رو خیلی راحت میتونید مدیریت کنید...
تو برنامه نویسی نیاز نیست همیشه از راه های پیچیده استفاده کرد...

majjjj
شنبه 18 تیر 1390, 07:41 صبح
قبلا یک api بود بنام get versionEx که میشد روایت os را باهاش تشخیص داد تو ویندوزهای 7 یا ویستا نمیدونم کار کنه یا نه بد نیست یک تستش بکنید.

ali.rezaei7
شنبه 18 تیر 1390, 15:08 عصر
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion

در مسیر بالا اطلاعاتی در مورد نسخه فعلی سیستم عامل نگهداری میشه. نام سیستم عامل در Valueه ProductName نگه داری میشه. و نسخه سیستم عامل در CurrentVersion ذخیره میشه(NT Version). برای خواندن از رجیستری این مطلب (http://support.microsoft.com/kb/145679) رو مطالعه کنید.(قسمت Querying a Value).

پ.ن: در نسخه های 9x از این روش نمیشه استفاده کرد.

موفق باشید