PDA

View Full Version : یه مثال کوچیک برای نوشتن سرویس در ویندوز



tc1000
شنبه 03 فروردین 1387, 18:12 عصر
با سلام
آیا کسی مثال کوچیک برای درست کردن یک سرویس در ویندوز رو داره به من بده

amirsajjadi
یک شنبه 04 فروردین 1387, 14:43 عصر
با سلام
نکته : سرویس های ویندوز یک سری محدودیت هایی داره مثلا بعضی مواقع توابع API توی سرویس های ویندوز درست کار نمیکنن
--------------------------------------------------------------------------------
برای ساختن سرویس ویندوز باید مراحل زیر رو به ترتیب انجام بدید :


ابتدا از منوی File گزینه ی New Project رو انتخاب کنید ، سپس گزینه ی Windows Service رو انتخاب کنید
حالا یک سرویس Service1.vb به پروژه ی شما اضافه میشه
در قسمت کدنویسی این سرویس دوتابع به نام های :
OnStart : زمانی که پروژه ی شما استارت میشه این تابع فراخوانی میشه

OnStop : زمانی که پروژه ی شما استوپ میشه این تابع فراخوانی میشه

به قسمت Service1.vb Design برگردیم ؛ کلیک راست کنید و گزینه ی Add Installer رو انتخاب کنید ، بعد از انتخاب این گزینه یک سرویس به نام ProjectInstaller.vb به همراه دو کامپوننت به پروژه ی شما اضافه میشه به نامهای :
ServiceProcessInstaller1 :
Name : نام کامپوننت
Account :
LocalService : مجوزهای رسمی گسترده ای رو و گواهینامه های کامپیوتر رو به سرورهای راه دور ارائه میده
NetworkService : عمل اعتبار سنجی رو با استفاده از کنترل Domain یا حساب کاربری سرویس گروه کاری (Workgroup) انجام میده
LocalSystem : بر روی کامپیوتر محلی بصورت یک کاربر بدون مجوز عمل میکنه و گواهینامه های شخص ناشناس (Anonymous) رو به سرورهای راه دور ارائه میده
User : بعنوان یک کاربر بدون مجوز بر روی کامپیوتر محلی عمل میکنه و گواهینامه های کامپیوتر رو به سرورهای راه دور ارائه میده
شما میتونید نوع LocalSystem رو انتخاب کنید
ServiceInstaller1 :
Name : نام کامپوننت
Description : توضیحات مربوط به سرویس
DisplayName : اسم سرویس
ServiceName : نام سرویس
StartType : طریقه ی شروع به کار سرویس
Automatic : هنگام شروع به کار کردن ویندوز به صورت اتوماتیک سرویس فعال میشه
Manual : سرویس به صورت دستی باید فعال شود
Disabled : یک سرویس غیر فعال رو معرفی میکنه که نه کاربر و نه سیستم نمیتونه اونو فعال کنه
شما میتونید نوع Automatic رو انتخاب کنید
قسمت اصلی ساخت و کامپایل سرویس هست ، به این ترتیب که :
پروژه ی خودتون رو ذخیره کنید (به عنوان مثال در درایو C)
Cmd.exe رو اجرا کنید ، به آدرس VisualStudio.NET رفته و فایل Installutil.exe رو به این صورت اجرا کنید :
Installutil.exe "C:\A\Service1.exe"