PDA

View Full Version : Run a win app from web app (اگه موضوع تکراریه دلیل داره!)



mehrdotnet
پنج شنبه 24 آذر 1384, 00:49 صبح
با سلام خدمت دوستان برنامه نویس و اساتید محترم
قبل از اینکه سوالم رو مطرح کنم لازم میدونم یک نکته رو جهت مشروعیت دادن به این پست که از نظر موضوع به نظر تکراری میاد ، متذکر بشم :
از اونجایی که من خودم توی 10 درصد از پستهام به دوستان عزیزی که سوالاتی رو مطرح میکنن توصیه می کنم قبل از ایجاد tread جدید "یه سرچ کوچولو" بکنن ، قبل از اینکه این مبحث رو ایجاد کنم سعی کردم مفصلاً در تاپیک های مختلف جستجو کنم حالا تاچه حد موفق بودم بماند! ولی باور بفرمایین نهایت سعیم رو هم کردم و به نتایجی هم رسیدم اما به دلایلی که ذیلاً اعلام می کنم قانع نشدم.

و اما سوال :
یک سری عکس وجود داره که لازمه در database ذخیره بشه. به منظور کم کردن حجم این تصاویر از یک کامپوننت خاص دلفی استفاده شده که میتونه تصویر رو فشرده کنه و در database ذخیره کنه و بعد هم برعکس اون رو بخونه و بازش کنه. معادل این کامپوننت رو برای ASP.Net پیدا نکردم و از طرفی این پروژه دو بخش اتوماسیون اداری به صورت windows application و بخش سایت وب داره که windows App اون با تکنولوژی گفته شده طراحی و پیاده سازی شده و قابل تغییر نیست من هم ناچار باید وب رو با اون وفق بدم و از همون database استفاده کنم.

برای رفع این مشکل یک برنامه win app به زبان دلفی نوشتم و روی سرور گذاشتم که توسط پارامترهای خط فرمان ، نام کاربری شخص رو دریافت میکنه و تصویر رو از DB می خونه و اون رو به صورت یک تصویر jpg معمولی توی یکی از sub folder های فولدر web application ذخیره میکنه و بعد یک وقفه 20 ثانیه ای بهش دادم که بهتون میگم چرا. حالا من قصد دارم که هنگام لاگین کاربر پس از تایید اعتبار اون این win app رو run کنم و نام کاربری رو بهش بفرستم تا کارش رو انجام بده.

تا اینجا مشکلی نیست و وقتی بدون استفاده از web application این برنامه دلفی رو run میکنم مشکلی نداره فایل ساخته میشه و تاخیر 20 ثانیه ای هم انجام میشه. توی web application هم توسط system.diagnostics.process یک process جدید ایجاد میکنم و برنامه دلفی رو باهاش اجرا میکنم ولی فایل ساخته نمیشه اما تاخیر 20 ثانیه ای دقیقاً انجام میشه!!!!!

توی جستجوهایی که در همین مورد "اجرای فایل win app در web app" انجام دادم دوستان اعلام کردن که اصلاً به هیچ وجه امکان انجام این کار وجود نداره! حالا برای من این ابهام پیش اومده که : من پروژه رو روی سرور قرار دادم و از چندین کلاینت هم اون رو همزمان اجرا کردم و مشاهده کردم که روی سرور به ازای هر کلاینت اجرا کننده این process ایجاد میشه و دقیقاً 20 ثانیه هم باقی میمونه! اگر اصلاً امکانش نبود که نباید اصلاً تاخیر هم بوجود میومد!
همه کارها هم روی سرور قراره انجام بشه و ربطی به کاربر نداره که browser اش اجازه بده یا نه!

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

Behrouz_Rad
پنج شنبه 24 آذر 1384, 11:12 صبح
عجب داستان طویل الدرازی!!!
مسلما اجازه ی اجرای فایل های اجرایی بر روی سرور به شما داه نمیشه...
البته مطلبی که فرمودید مقدار عجیب به نظر می رسه...
ولی به هر حال سیستم سعی در kill کردن پروسس اجرایی توسط شما خواهد کرد.

این اواخر کسی دیگه جواب ما رو نمیده! چه اتفاقی افتاده؟ خدای نکرده خطایی سرزده؟؟؟
اگر منظورت بنده ی حقیرم که یک نگاهی به امضام بندازی بد نیست...
موفق باشید.

mehrdotnet
پنج شنبه 24 آذر 1384, 16:07 عصر
عجب داستان طویل الدرازی!!!

بالاخره باید یه جوری بگم که ابهامی نمونه و دوستان نگن منظورت رو نمی فهمیم ، مگه میخوای چیکار کنی و از این حرفها!
حالا به نظر شما برای رفع این مشکل چیکار باید کرد؟ یه راه حلی ، روشی ، چیزی؟ :ناراحت:
پس من چیکار کنم ؟؟؟؟ :افسرده: :گریه:
هر چی به نظرتون میرسه لطف کنین شاید یکیش جواب بده!!!!



اگر منظورت بنده ی حقیرم که یک نگاهی به امضام بندازی بد نیست...

قربونت برم که اینقدر مهربونی ولی تو رو خدا لااقل روزی یکبار رو سر بزنین. آخرش جواب شما یه چیز دیگه است. (البته سوء تفاهم نشه ما چاکر همه برو بج برنامه نویس هم هستیم. همگی سرور و استاد ما هستن. ولی آخرش راد...

Behrouz_Rad
پنج شنبه 24 آذر 1384, 16:50 عصر
در اکثر سوالاتی که مطرح می فرمایید، کلمه ی "مجبورم" به کار رفته!
همیشه هر تغییری، "هزینه ای" رو در بر داره.
به طور کلی، باید امکانات و جوانب کار رو در نظر گرفت و بعد به ارباب رجوع گفت که کاری که شما قصد انجامش رو دارید، نیازمند فلان تغییر اساسی در سیستم هست و ...
به هر حال...
با شرایطی که می فرمایید، یک سرور شخصی تنها راه حل مشکل شماست!
موفق باشید.

Amir Shekari
پنج شنبه 24 آذر 1384, 21:41 عصر
ببین اولین کاری که من بجات بودم انجام میدادم. بررسی دسترسی های کاربر IUSR بود احتمالا نمی تونه فایل write کنه

Behrouz_Rad
پنج شنبه 24 آذر 1384, 22:00 عصر
ببین اولین کاری که من بجات بودم انجام میدادم. بررسی دسترسی های کاربر IUSR بود احتمالا نمی تونه فایل write کنه http://us.i1.yimg.com/us.yimg.com/i/mesg/emoticons7/68.gif

mehrdotnet
شنبه 26 آذر 1384, 08:32 صبح
اتقاقاً سرور هم شخصیه! همه چیش دست خودمونه! حالا باید چه کاری روش انجام بدم؟

mehrdotnet
دوشنبه 28 آذر 1384, 19:33 عصر
با شرایطی که می فرمایید، یک سرور شخصی تنها راه حل مشکل شماست!

خوب ما این راه حل رو انتخاب کردیم و ازشون خواستیم یک سرور و Valid IP در اختیارمون قرار بدن که دادن!
حالا چه چیزی رو باید روش ست کرد ؟

Behrouz_Rad
سه شنبه 29 آذر 1384, 06:56 صبح
برنامه ی اجرایی رو بر روی سرور قرار بده!!!!!

mehrdotnet
سه شنبه 29 آذر 1384, 08:47 صبح
خوب عزیز جان این هم هست. من با همین شرایط به مشکل برخورده ام و سوالم رو مطرح کردم.
حالا اشکالش کجاست؟ یه مساله جالب دیگه اینکه من یک برنامه اجرایی نوشتم که کارش کپی کردن یک فایل از یک پوشه به پوشه دیگه است. تا زمانی که مسیرهای غیر از فولدر web app ام رو به کار می برم کار میکنه ولی وقتی می خوام همون فایل رو توی فولدر web app کپی کنم کار نمیکنه !!!!!!!!
اگه ممکنه با در نظر گرفتن شرایط جدیدی که ازش اطلاع پیدا کردین (سرور شخصی) یک بار دیگه سوالم رو مرور بفرمایین و اگه امکانش هست لطفاً راهنمایی کنین
با تشکر

Behrouz_Rad
چهارشنبه 30 آذر 1384, 04:24 صبح
از اول می فرمودید سرور شخصیه تا تاپیک اینقدر ادامه دار نشه.
اینجور مشکلات رو نمیشه از راه دور پاسخگو بود.
باید پای سیستم بود و بررسی دقیق کرد.
موفق باشید.

mehrdotnet
چهارشنبه 30 آذر 1384, 17:06 عصر
حق با شماست!! اشکال از منه. باید کلیه جوانب و شرایط رو توضیح می دادم! این یکی جا افتاد!
حالا نمیشه چندتا از مواردی که احتمال داره مشکل از اونجا باشه و باید تنظیم بشه رو بفرمایین تا بررسی کنم؟