پدرخوانده
چهارشنبه 03 اسفند 1384, 18:33 عصر
به دنبال نمایش یک فایل فلش در برنامه هستم و برای اینکه اطمینان حاصل کنم که فایل فلش در سیستم کاربر قابلیت پخش را دارد فایل موردنظر را در داخل فایل اجرایی include کردم و پس از تست عدم ایجاد آبجکت از نوع فلاش فایل موردنظر را در شاخه سیستم نصب و سپس رجیستر می کنم حال مشکل در این است که به علت تفاوت نوع کلاسهای پخش فلش برنامه به هنگام تست جهت اجرای فایل با مشکل مواجه می شود بدین صورت که برنامه تشخیص می دهد که فلاش در سیستم کاربر نصب می باشد.(از طریق چک ایجاد این آبجکت از طریق کدنویسی) ولی به هنگام پخش فایل فلاش موردنظر صفحه خالی را می آورد (شاید خیلی از دوستان اشاره کنند که مقدار پارامتر Movie از آبجکت فلاش را درست مقداردهی نکرده ام (یعنی مسیر کامل نداده ام) که عرض می کنم مسیر و نام فایل را بصورت کامل وارد کرده ام) ) به فایل ocx موردنظر دقت کردم دیدم فایل به نام swflash.ocx است و فایلی که برنامه بنده از آن استفاده کرده و .... سالم است فایل flash.ocx است (و هنگامی که این فایل وجود داشته و یا نصب باشد برنامه بدون مشکل کار می کند (فایل فلاش را به خوبی نمایش می دهد) ) حال می خواستم بدانم بین این دو چه تفاوتی است (این دو ocx) و چگونه تشخیص دهم که مثلا آبجکت ایجاد شده از چه فایلی استفاده می کند (که از این طریق درصورتی که از فایل موردنظر استفاده می کرد مجددا فایل ocx خود را نصب کنم)
کد ایجاد آبجکت جهت نمایش فلش که داخل try except اجرا می شود
FlashOCX := TShockwaveFlash.Create(nil);
(این کد در صورتی که فایل swflash.ocx نصب باشد نیز ایجاد می شود ولیکن فایل موردنظر فلش را پخش نمی کند)
و یک راه حل دیگر اینکه تست کنیم که این فایل (swflash.ocx) در رجیستری نصب شده است و در صورت مثبت بودن مجددا فایل جدید(flash.ocx) را نصب کنیم.
(یعنی بتوان در رجیستری سرچ کرد و ....) و آیا در کل این راه حل مناسب است یا خیر؟
کد ایجاد آبجکت جهت نمایش فلش که داخل try except اجرا می شود
FlashOCX := TShockwaveFlash.Create(nil);
(این کد در صورتی که فایل swflash.ocx نصب باشد نیز ایجاد می شود ولیکن فایل موردنظر فلش را پخش نمی کند)
و یک راه حل دیگر اینکه تست کنیم که این فایل (swflash.ocx) در رجیستری نصب شده است و در صورت مثبت بودن مجددا فایل جدید(flash.ocx) را نصب کنیم.
(یعنی بتوان در رجیستری سرچ کرد و ....) و آیا در کل این راه حل مناسب است یا خیر؟