این مقاله شامل ترفندهایی جهت بدست آوردن مشخصات سیستم مانند نام ماشین، ورژن سیستم عامل و همچنین کاربردهای آنهاست.
در این مقاله به بررسی روشهایی پرداخته میشود که به کمک آن میتوان چند مشخصه از مشخصات سیستم را بدست آورد و از آنها در برنامههای کاربردی خود استفاده کرد. این ویژگیها با استفاده از فضانام System.Environment بدست می آیند. کلاس Environment شامل اطلاعاتی در مورد محیط کار و پلاتفرم حاضر روی سیستم و همچنین وسایلی در این زمینه می باشد. این کلاس نمیتواند به ارث برده شود.
نام ماشین (MachineName):
به کار بردن خصوصیت MachineName از این کلاس نام NetBIOS کامپیوتر مربوطه را برمیگرداند. با بکار بردن کد زیر در رویداد کلیک یک Button میتوان نام ماشین را در یک جعبه متن نمایش داد:
کد:
TextBox1.Text = System.Environment.MachineName.ToString
ورژن سیستم عامل (OSVersion):
با استفاده از خصوصیت OSVersion میتوانید ورژن سیستم عامل کامپیوتر کاربر را شناسایی کنید. برای مثال با بکار بردن کد زیر روی ویندوز ایکس پی، عدد 5.1.2600 به عنوان نتیجه برگردانده میشود.
کد:
TextBox1.Text = System.Environment.OSVersion.ToString
از موارد استفاده این خصوصیت میتوان به کنترل نسخه ویندوز قبل از اجرای برنامه اشاره کرد. به عنوان مثال اگر برنامه شما برای اجرا روی ویندوز ایکس پی نوشته شده است با کنترل مقدار خروجی این خصوصیت از اجرای آن روی نسخههای پایینتر ویندوز جلوگیری شود.
دایرکتوری سیستم (SystemDirectory):
خصوصیت SystemDirectory، نام دایرکتوری سیستم کاربر را برمیگرداند. من با اجرای این کد در کامپیوترم نتیجهء F:WinNTSystem32 را گرفتم. (ویندوز ایکس پی من روی درایو F نصب شده است).
کد:
TextBox1.Text = System.Environment.SystemDirectory.ToString
نام دامنه (UserDomainName):
این خصوصیت نام دامنه شبکهء کامپیوتر میزبان را اعلام میکند. مقدار این خصوصیت به طور معمول همان نام کامپیوتر میزبان است. برنامه شما باید تحت ویندوز ان تی 3.1 و یا بالاتر از به اجرا درآید؛ درغیراینصورت یک استثناء برپا خواهد شد (PlatformNotSupportedException).
کد:
TextBox1.Text = System.Environment.UserDomainName.ToString
نام کاربر (UserName):
مقدار خروجی این خصوصیت نام کاربری شخصی است که به سیستم وارد شده است. این خصوصیت میتواند جهت شناسایی کاربر حاضر در سیستم به کار گرفته شود و از آن برای کنترل دسترسی به برنامه و اهداف امنیتی بهره برد. از دیگر کاربردهای این خصوصیت، سفارشی کردن برنامه برای هر کاربر است.
کد:
TextBox1.Text = System.Environment.UserName.ToString
ورژن CLR (Version):
این خصوصیت نگارش زبان معمول زمان اجرا (Common Language Runtime) را برمیگرداند.
کد:
TextBox1.Text = System.Environment.Version.ToString
TickCount:
این ویژگی یکی از ویژگیهای جالب ویندوز است که کاربردهای فراوانی دارد. این خصوصیت یک عدد 32 بیتی را برمیگرداند که نشان دهندهء زمانی است (بر حسب میلی ثانیه) که از روشن شدن سیستم میگذرد. این مقدار از تایمر سیستم گرفته میشود و در یک متغیر عددی 32-بیتی علامتدار ذخیره میشود. با توجه به اینکه این مقدار 32 بیت طول دارد، بنابراین اگر سیستم شما 24.9 روز روشن بماند، این مقدار صفر شده و ازنو شروع به شمردن میکند. دقت کنید این خصوصیت نمی تواند کمتر از 500 میلی ثانیه باشد. با بکار بردن کد زیر میتوان این مقدار را در یک جعبه متن نمایش داد:
کد:
TextBox1.Text = System.Environment.TickCount.ToString
از جمله کاربردهای خصوصیت TickCount میتوان به محدود کردن زمان استفاده از کامپیوتر توسط کاربر اشاره کرد که میتواند کاربردهای فراوانی داشته باشد.
نکته: توجه داشته باشید که TickCount با Tick تفاوت دارد. Tick عددی است با وقفه های به مدت 100 نانو ثانیه که شامل مدت زمانی است که از ساعت 12:00am مورخ 1/1/0001 میگذرد. این خصوصیت را میتوانید با استفاده از System.DateTime.Now.Ticks بدست بیاورید.