PDA

View Full Version : ساخت برنامه ای که با سرویس های ویندوز ارتباط برقرار کند



delphiprog3000
شنبه 22 تیر 1387, 19:38 عصر
با سلام به اساتید و دوستان محترم.

در سایت جستجو کردم ولی مطلبی که به این موضوع اشاره کرده ندیدم.

در مورد ارتباط با سرویس های ویندوز یا کار با تردهای ویندوزی این سوال رو داشتم که میخوام

برنامه ای باشه که بعد از terminate آن به طور مثال در ساعتی خاص آلارم دهد.

حتی اگر برنامه ما از حالت اجرا خارج شد.

با تشکر از توجه شما..........................

vcldeveloper
یک شنبه 23 تیر 1387, 01:27 صبح
برنامه ای باشه که بعد از terminate آن به طور مثال در ساعتی خاص آلارم دهد.

بعد از Terminate چی؟ یک سرویس خاص؟ می تونید وضعیت سرویس را در فواصل زمانی معین (مثلا هر یک ثانیه) بررسی کنید.

حتی اگر برنامه ما از حالت اجرا خارج شد.
"حتی اگر برنامه شما از حالت اجرا خارج شد"، چی بشه؟
1- حتی اگر برنامه بسته شد، باز هم بسته شدن سرویس را گزارش بده؟! --> این که معنی نداره، برنامه ایی که بسته شده، چطور میتونه فعالیتی انجام بده.
2- حتی اگر برنامه بسته شد، بابت بسته شدن برنامه گزارشی داده شود --> خب هر وقت که برنامه داره بسته میشه، یک اخطار نمایش بدید.

حمیدرضاصادقیان
یک شنبه 23 تیر 1387, 07:20 صبح
سلام. شاید مجبور بشی دوتا سرویس داشته باشی که سرویس دوم وقتی فعال بشه که برنامه اول Terminate شده پس از اون هر یک ساعت یک بار یک پیغام خطا بدی.
ولی درکل میخوای چکار کنی؟ شاید راه مناسب تری هم باشه برای اینکار.

delphiprog3000
یک شنبه 23 تیر 1387, 09:06 صبح
با سلام به اساتید عزیز.

ببینید همونطور که گفتم من قصد دارم برنامه ای بسازم که به کاربر در موقعی خاص آلارم دهد که این آلارم شامل پیغام یاد آوری میباشد.

و قصد دارم هنگامی هم که برنامه بسته شد . در ساعت مقرر این پیغام رو بده. بدون توجه به باز بودن برنامه.

آیا حتما باید برنامه ران باشد؟
در این مورد چه راهی رو پیشنهاد میکنید.؟

با تشکر.................

Hsimple11
یک شنبه 23 تیر 1387, 12:04 عصر
واضح است که برنامه بسته نمیتواند Alarm دهد اما یک راه استفاده از Schedule ویندوز است. در چند پست اخیر بحث شد.

delphiprog3000
یک شنبه 23 تیر 1387, 12:13 عصر
سلام.

این رو میدونم دوست من. ولی شنیده بودم که با ارتباط با سروسیهای ویندوز این پروسس میتونه تداوم داشته باشه.

میخواستم بدونم چطوری میشه پروسس رو به برنامه های در حال اجرا ربط داد و یا در حافظه بار باشه حتی اگه فرمهای اون بسته باشه؟

Touska
یک شنبه 23 تیر 1387, 12:37 عصر
من همچین چیزی نوشم ، راه حلش اینکه شما یک Exe داشته باشید برای نمایش پیغام هاتون و برای

نمایش آنها به Exe پارامتر ارسال کنید که شماره پیغام باشد.

و برای اجرا شندنش از کامپوننت استفاده کنید که به Scheduled Task اضافه اش کند.

موفق باشید :)

delphiprog3000
یک شنبه 23 تیر 1387, 12:43 عصر
ممنون از پاسخت دوست من.

در این زمینه اطلاع زیادی ندارم. آیا سورس یا لینک خاصی داری که بتونه کمک کنه.

آیا همون Process injection منظور شماست؟

Hsimple11
یک شنبه 23 تیر 1387, 16:46 عصر
با اجازه دوست عزیزم.
فکر میکنم بتوان با تعریف پارامتر و استفاده در فایل Exe هدف اینکار را انجام داد.
در مورد اضافه کردن یک Scheduled Task هم در چند پست اخیر بحث شد.

Touska
یک شنبه 23 تیر 1387, 21:05 عصر
با سلام

منظورم process INjection نبود ، ارسال پارامتر به Exe

و کامپوننتی از شرکت Si برای اضافه کردن به Scheduled Task

دمو اگر خواستی آخر هفته می بینمت ، موفق باشید :)

dkhatibi
سه شنبه 25 تیر 1387, 13:50 عصر
با یک برنامه فکر نکنم که بشه!
اما اگر دو فایل کنار هم بگذارید می تونید هر یک دیگری را چک کنه!
با findWondow می تونید پنجره ی مذکور را چک کنید.

vahid64
شنبه 29 تیر 1387, 03:51 صبح
سوال خیلی جالبی پرسیدی.
اینایی که میگم یه پیشنهاد هست خودم تست نکردم.
فکر کنم می خوای برنامه رزیدنت بنویسی که تو رم جا خوش کنه و با بسته شدنش باز هم تو رم باقی بمونه مثه اسکرین سیور ها من قبلاً با C همچین کاری کردم ولی تو دلفی بلد نیستم.
یه کامپوننت بود آیکون برنامه رو میاورد تو سیستم تری اون نمی تونه بهت کمک کنه ؟؟؟
فکر کنم عملاً اگه بخوای با یک exe بنویسی terminate شدن رو باید بی خیال بشی.یه جوری فرم اصلیت رو هاید کنی.
به هر حال تاپیک با حالی بود اگه پایه باشی یه توضیح از برنامت بده با هم بنویسیم ببینیم نتیجه میده ؟!

delphiprog3000
شنبه 29 تیر 1387, 09:47 صبح
با سلام. از توجه شما متشکرم.

من هینطور که قبلا توضیح دادم قصدم این بود که برنامه ای زمان رو به کابر در موقعی نمایش دهد یا همان آلارم یادداشتهای شخصی

و وقتی که برنامه از حالت اجرا خارج میباشد نیز این عملکرد انجام شود.

دوست عزیزم مصطفی گفت که از Scheduled Task و یا Service استفاده کنم.

که سرویسی در این خصوص بسازم و سرویس این عملکرد رو انجام بده.