PDA

View Full Version : امکان attach کردن فایلها



Coda2008
شنبه 24 فروردین 1387, 22:35 عصر
با عرض سلام
من می خوام در برنامم به کاربر امکان attach کردن فایلها از هر نوعی رو بدم
فایلهای attach شده در یک ListView نمایش داده شده و به صورت varcharBinary در پایگاه داده ذخیره میشند.
مشکلی که دارم این هست که کاربر میخواد با doubleClick کردن رو ListViewItem فایلشو مشاهده کنه
اگر نمونه برنامه مشابه ای سراغ دارید ، یایه reference خوب ، لطفا راهنمایی کنید

razavi_university
یک شنبه 25 فروردین 1387, 15:04 عصر
فکر میکنم با Stream بتونین مشکل رو حل کنین

Coda2008
یک شنبه 25 فروردین 1387, 15:32 عصر
مشکل باز کردن فایلها رو با استفاده از MemoryStream و ایجاد فایل temporary حل کردم. به ازای هر کلیک روی نام فایل ، یک Process جدید شروع میشه برای اجرای برنامه مربوطه.
مشکل جدید این هست که چطوری تغییرات روی فایل ها رو Track کنم. برای توضیح بیشترمشکل ، فرض کنید که کاربر از Application من خارج شده ولی هنوز فایل attach شده باز هست و کاربر روش تغییرات میده. آیا به نظر شما راهی هست برای این مورد یا باید کاربر رو محدود کرد که مثلا وقتی از Application خارج میشه و فایل attach باز داره اونو در یک جای دیگه Save کنه و به کارش ادامه بده

sinpin
یک شنبه 25 فروردین 1387, 15:56 عصر
به ازای هر کلیک روی نام فایل ، یک Process جدید شروع میشه برای اجرای برنامه مربوطه.
مشکل جدید این هست که چطوری تغییرات روی فایل ها رو Track کنم. برای توضیح بیشترمشکل ، فرض کنید که کاربر از Application من خارج شده ولی هنوز فایل attach شده باز هست و کاربر روش تغییرات میده. آیا به نظر شما راهی هست برای این مورد یا باید کاربر رو محدود کرد که مثلا وقتی از Application خارج میشه و فایل attach باز داره اونو در یک جای دیگه Save کنه و به کارش ادامه بده
چه لزومی داره که پس از بسته شدن برنامه همچنان فایلهای ضمیمه شده باز باشند ؟
زمان بسته شدن برنامه پروسه های مرتبط رو kill‌ کنید.

razavi_university
یک شنبه 25 فروردین 1387, 15:56 عصر
فایل Attach شده در کجا بازه؟
شما مگه فایل رو به دیتابیست انتقال نمیدی؟ (در صورت تغییر فایل این میشه یک نسخه دیگه از فایل)
برای تشخیص تغییر کردن فایل میتونی از روشهای زیادی استفاده کنی
مثلا فایل رو به MD5 تبدیل کنی (یک امضای MD5 ازش تهیه کنی) هر زمانی که بخوایی متوجه بشی فایلت تغییر کرده یا نه امضای MD5 قبلی رو با امضایی که از فایل فعلی می گیری مقایسه می کنی در صورت مغایرت فایلت تغییر کرده (نکته در تاپیک 1001 نکته)
و یا یک monitoring بر اون فایل اعمال کنی (مثال در قسمت نمونه برنامه ها)

hassan razavi
یک شنبه 25 فروردین 1387, 16:14 عصر
اگه از Process.Start برای اجرای فایهاتون استفاده میکنید ، می تونید تا زمان بسته شدن فایل اجرا شده ، WaitForExit کنید و یا مدیریتهای دیگه