ورود

View Full Version : جلوگیری از اجرای برنامه بیش از یک بار



Rasool-GH
سه شنبه 28 مهر 1394, 10:50 صبح
سلام .
دوستان همون طور که اطلاع دارید یک فایل اکسس رو روی سیستم میشه همزمان چندین بار اجرا کرد و باز بودن فایل در هنگام اجرای مجدد بررسی نمیشه . حالا چه راهی وجود داره برای اینکه بشه جلوی اجرای تکراری برنامه رو گرفت ؟
با توجه به اینکه بانک در زیر سایه افیس اجدا میشه در نتیجه شناسه پروسس مخصوص به خودش ایجاد نمیکنه که قابل بررسی باشه . به فایل موقتی که در کنار فایل اصلی هم ایجاد میشه نمیشه تکیه کرد .

alirezabahrami
سه شنبه 28 مهر 1394, 18:40 عصر
سلام .
دوستان همون طور که اطلاع دارید یک فایل اکسس رو روی سیستم میشه همزمان چندین بار اجرا کرد و باز بودن فایل در هنگام اجرای مجدد بررسی نمیشه . حالا چه راهی وجود داره برای اینکه بشه جلوی اجرای تکراری برنامه رو گرفت ؟
با توجه به اینکه بانک در زیر سایه افیس اجدا میشه در نتیجه شناسه پروسس مخصوص به خودش ایجاد نمیکنه که قابل بررسی باشه . به فایل موقتی که در کنار فایل اصلی هم ایجاد میشه نمیشه تکیه کرد .
سلام
بنده شخصاً در برنامه هایم از یک فایل واسط که در محیط وی بی تهیه می کنم برای اینکار استفاده می کنم . اما چنانچه میخواهید بدون استفاده از فایل واسط این کار را بکنی یک نمونه فایل ساده اینجا بگذار تا بررسی و راهکار مناسب ارائه شود .
یا علی

alirezabahrami
چهارشنبه 29 مهر 1394, 10:58 صبح
سلام
بنده شخصاً در برنامه هایم از یک فایل واسط که در محیط وی بی تهیه می کنم برای اینکار استفاده می کنم . .
یا علی
سلام
توصیه میشود نمونه پست آخر دیتابیس ها و برنامه های کاربردی (http://barnamenevis.org/showthread.php?53141-%D8%AF%DB%8C%D8%AA%D8%A7-%D8%A8%DB%8C%D8%B3-%D9%87%D8%A7-%D9%88-%D8%A8%D8%B1%D9%86%D8%A7%D9%85%D9%87-%D9%87%D8%A7%DB%8C-%DA%A9%D8%A7%D8%B1%D8%A8%D8%B1%D8%AF%DB%8C&p=2255594#post2255594) که مربوط به سیستم محاسبه کمیسیون بنگاه است امتحان بفرمائید .
در این نمونه بعد از نصب شدن برنامه ، یک شورتکات ایجاد میشود که با کلیک بر روی آن برنامه اجرا میشود و چنانچه مجدداً بر روی آن کلیک نمائید پیغام برنامه در حال اجرا است صادر میشود .
و اما در خصوص اجرای این موضوع در محیط اکسس فکر می کنم بتوان از طریق ذخیره یک متغییر در رجیستری (با استفاده از متد SaveSetting و GetSetting ) و فراخوانی آن در رویداد open فرم اولیه عملی باشد .
یا علی

Rasool-GH
دوشنبه 04 آبان 1394, 11:00 صبح
سلام جناب بهرامی ممنون بابت راهنمایی .
راه کاری که بعد از بررسی اکثر راه حل های مطرح شده مورد نظر من هست اینه که در هنگام اجرا برسی کنه اگر فایل قفلی که در کنار فایل اصلی وجود داره قابل حذف بود برنامه اجرا بشه ولی اگه غیر قابل حذف بود نشون دهنده در حال اجرا بودن برنامه است .
سوال اینه که با چه دستوری میشه این مورد رو بررسی کرد ؟

136265

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

alirezabahrami
دوشنبه 04 آبان 1394, 14:27 عصر
سلام جناب بهرامی ممنون بابت راهنمایی .
راه کاری که بعد از بررسی اکثر راه حل های مطرح شده مورد نظر من هست اینه که در هنگام اجرا برسی کنه اگر فایل قفلی که در کنار فایل اصلی وجود داره قابل حذف بود برنامه اجرا بشه ولی اگه غیر قابل حذف بود نشون دهنده در حال اجرا بودن برنامه است .
سوال اینه که با چه دستوری میشه این مورد رو بررسی کرد ؟

136265

در مورد فایل هم مطابق فرمایش قبلی شما از فایل واسط برای این کار استفاده شده و خود فایل اکسس به صورت توکار دارای این قابلیت نیست
سلام
اجرای مجدد برنامه در اکسس معمولاً در حالتی اتفاق می افتد که برنامه در فرمت mde یا Accde باشد و در حالت mdb یا accdb مادامیکه برنامه در حال اجراست اجرای مجدد آن امکان پذیر نخواهد بود .
دو نمونه داخل فایل ضمیمه را که یکی دارای فرمت mdb و یکی هم mde است و کدها در هر دو یکی است را امتحان بفرما!
یا علی

Rasool-GH
سه شنبه 05 آبان 1394, 08:18 صبح
سلام . بله فرمایش شما درسته . نیت بنده هم رسیدن به همین قابلیت در حالت MDE برنامه است . اگر بتونید در مورد دستورات بررسی فایلهای جانبی و بخصوص دستور حذف یک فایل کمکم کنید مشکل حل شده است

abas1388
سه شنبه 05 آبان 1394, 09:29 صبح
سلام . بله فرمایش شما درسته . نیت بنده هم رسیدن به همین قابلیت در حالت MDE برنامه است . اگر بتونید در مورد دستورات بررسی فایلهای جانبی و بخصوص دستور حذف یک فایل کمکم کنید مشکل حل شده است

برادر بزرگوار ! اول بابت نمونه خیلی مفیدی که جناب بهرامی ارائه نموده اند و برای بسیاری از دوستداران اکسس بسیار کاربردی است یک تشکر خشک و خالی بکن بعد درخواست حل مشکل بعدی داشته باش !
فکر کنم با ارائه راهکاری که ایشان در نمونه فوق بکار برده اند واقعاً به خواسته ات که همانا جلوگیری از اجرای مجدد برنامه است رسیده باشی ، پس دیگر چه نیازی به بررسی فایل جانبی و حذف آن را دارید ؟ اگر منظورت از فایل جانبی همان فایلی است که با اجرای برنامه ایجاد شده و پسوند آن idb است که بدیهی است این فایل مادامیکه برنامه در حال اجرا است غیر قابل حذف است .

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

Rasool-GH
سه شنبه 05 آبان 1394, 10:26 صبح
سلام .
دوست عزیز اینجا که مسابقه جمع اوری تشکر نیست هرچند که همه با این قابلیت اشنا هستند و از اون به قدر کافی استفاده میکنند . بنده هم اگر به مقصودم برسم که دیگه نیازی به پیگیری مطلب ندارم پس با توجه به زحمتی که جناب بهرامی کشیدند و البته بررسی نمونه های ارائه شده من به مقصودم نرسیدم.

abas1388
سه شنبه 05 آبان 1394, 10:46 صبح
سلام .
دوست عزیز اینجا که مسابقه جمع اوری تشکر نیست هرچند که همه با این قابلیت اشنا هستند و از اون به قدر کافی استفاده میکنند . بنده هم اگر به مقصودم برسم که دیگه نیازی به پیگیری مطلب ندارم پس با توجه به زحمتی که جناب بهرامی کشیدند و البته بررسی نمونه های ارائه شده من به مقصودم نرسیدم.
سلام
یکبار دیگر سوالی که در پست اول مطرح کرده اید مرور کن !


سلام .
دوستان همون طور که اطلاع دارید یک فایل اکسس رو روی سیستم میشه همزمان چندین بار اجرا کرد و باز بودن فایل در هنگام اجرای مجدد بررسی نمیشه . حالا چه راهی وجود داره برای اینکه بشه جلوی اجرای تکراری برنامه رو گرفت ؟
.
آیا با ارائه نمونه ای که جناب بهرامی ارائه نموده اند (پست 5 ) راه را به شما نشان نداده اند .
لطفاً اگر منظور شما چیز دیگری است خیلی واضح توضیح بده .
موفق باشید

Rasool-GH
سه شنبه 05 آبان 1394, 12:16 عصر
سلام
بله ایشون لطف کردند و نمونه ای قرار دادند که تا حد زیادی راه گشاست .
ایرادی که وارده اینه که در صورتی که نرمافزار به هردلیلی با روشی غیر از روش استاندارد بسته بشه دیگه هرگز قابل اجرا نخواهد بود . بنده همین مشکل رو در بررسی فایل مجاور نرمافزار هم دارم .

به هرحال . دنبال راه بهتری میگردم

در بررسی فایل جانبی هم مشکلی که وجود داره اینه که اگر شرط رو وجود فایل قرار بدیم در اجرای اول هم به واسطه وجود فایل امکان اجرا از بین میره

نمونه رو میزارم شاید کسی چیزی به نظرش برسه
در این نمونه ادرس جاری و نام و پسوند فایل استخراج میشه و بعد از این کار وجود فایل قفل بررسی میشه .

abas1388
سه شنبه 05 آبان 1394, 12:46 عصر
سلام
بله ایشون لطف کردند و نمونه ای قرار دادند که تا حد زیادی راه گشاست .
ایرادی که وارده اینه که در صورتی که نرمافزار به هردلیلی با روشی غیر از روش استاندارد بسته بشه دیگه هرگز قابل اجرا نخواهد بود . بنده همین مشکل رو در بررسی فایل مجاور نرمافزار هم دارم .

به هرحال . دنبال راه بهتری میگردم

در بررسی فایل جانبی هم مشکلی که وجود داره اینه که اگر شرط رو وجود فایل قرار بدیم در اجرای اول هم به واسطه وجود فایل امکان اجرا از بین میره

نمونه رو میزارم شاید کسی چیزی به نظرش برسه
در این نمونه ادرس جاری و نام و پسوند فایل استخراج میشه و بعد از این کار وجود فایل قفل بررسی میشه .
سلام
فایل را در قالب ورژن پائین تر 2003 یا 2007 قرار بده ! با اکسس 2007 قابل اجرا نمی باشد .
موفق باشید

Rasool-GH
چهارشنبه 06 آبان 1394, 10:02 صبح
نمونه 2003 ضمیمه شد .