ايران ويج

نسخه‌ی کامل: سوال در مورد startup
شما در حال مشاهده‌ی نسخه‌ی متنی این صفحه می‌باشید. مشاهده‌ی نسخه‌ی کامل با قالب بندی مناسب.
صفحه‌ها: 1 2 3
نقل قول: برای قرار دادن برنامه در استارت آپ روش های خیلی بهتری وجود داره.
بگو....
دوستان فکر کنم جای این سوال اینجا نباشه ما دیدم در رابطه باSvchost.exe هم صحبت کردین گفتم این سوال رو مطرح کنم که:
چطور میشه که ما برنامه ای رو دوبار پشت سرهم باز می کنم وقتی توTaskmgr نگاه میکنیم تو لیست پروسس این برنامه یا فایل اجرایی روی قبلی Over write میشه امااز فایل Svchost.exe 6تا رو تو لیست پروسس شاهدیم هیچ کدام هم Over Write نمیشن؟؟؟
ممنون اگر پاسخ دقیق بدین.
دوست عزيز

Over Write‌ديگه چيه!! اصلا همچين چيزي كه مي گيد وجود نداره و شما اگه برنامه اي رو دوبار اجرا كنيد مطمئنا دوتا پروسه

جداگونه در ويندوز خواهيد داشت.

اگر هم يه زماني برنامه اي رو دوبار اجرا كرديد ولي تنها يك پروسه از اون رو تو تسك منيجر ديديد، اين به اين معنا نيست

كه اون پروسه آر رايت شده!! بلكه برنامه در هنگام اجرا تشخيص مي ده كه قبلا پروسه اش اجرا شده و به همين

دليل پروسه دوم به سرعت بسته مي شه.
خوب همین که شما فرمودید چطور اینو تشخیص میده منظورم اینه که من هربرنامه ای رو امتحان کردم اینطوری میشه منظورم از Over write همین بود که میاد پروسه که میبینه اجرا شده بسته میشه اما اینا چرا بسته نمیشه؟
ببينيد تشخيص اين امر چيزي هست كه برنامه نويس داخل كد برنامه اش خواسته و قرار داده. مثلا شما ماشين حساب ويندوز

رو هر چندبار كه مي خواي اجرا كن، براي هركدومشم يه دونه پروسه تو تسك منيجر مي بيني ولي مثلا برنامه

yahoo رو فقط يه بار مي توني اجرا كني. اين به ميل برنامه نويسنده اون برنامه بستگي داره
میشه با این کد از اجرای دوباره یک برنامه از یک مسیر جلو گیری کرد :
کد:
Private Sub Form_Load()
If App.PrevInstance Then End
End Sub
میشه قبل از End کردن پروسه جدید، کاری کنم که پروسه قبلی بالا بیاد؟
منورم از بالا اومدن اینه که اگه توی Tray یا Minimize هست Restore بشه؛
اگه Normal یا Maximize هست Focus بگیره.
این کار رو با استفاده از Caption فرم اصلی امتحان کردم ولی اصلا جالب نبود.
مثلا اگه Caption فرم اصلی Form1 باشه:
کد:
If App.PrevInstance Then
        ShowWindow FindWindow(vbNullString, "Form1"), 1
        SetForegroundWindow FindWindow(vbNullString, "Form1")
        End
End If
روش بهتری بجز استفاده از عنوان پنجره فرم اصلی هست؟
به نظر من حتی App.PrevInstance هم خیلی قابل اعتماد نیست. وقتی دو فایل اجرایی یکسان رو از دو مسیر متفاوت اجرا می کنید App.PrevInstance مقدار False رو بر میگردونه؛
اما به عنوان مثال فایل Regedit رو دو جای مختلف کپی کنید و بعد از اجرای اولی دومی رو اجرا کنید ببینید چی میشه؟
هدف از رسیدن به پاسخ: ما هم باید برنامه های استاندارد بنویسیم چون کاربران به استانداردهای ویندوز عادت دارند.
سلام دوستان
اگه ممکنه یه راهی هم بفرمایید که بشه فقط این برنامه مورد نظر روطوری hidden کرد که از طریق فرمان show در ویندوز قابل مشاهده نباشه ممنون مرسی سحر
سلام دوستان
اگه ممکنه یه راهی هم بفرمایید که بشه فقط این برنامه مورد نظر روطوری hidden کرد که از طریق فرمان show در ویندوز قابل مشاهده نباشه ممنون مرسی سحر
سلام براي دستكاريه فايل ها سرويس cryptographic ويندوز رو stop كنيد. (نمي دونم اسمش رو درست نوشتم يا نه! يه Remote همين جا گذاشته بودم. اونو ببينيد)
صفحه‌ها: 1 2 3