سؤال

أقوم بتصميم تطبيق ويب يحتوي على بعض المعلومات التي يجب نقلها إلى تطبيق جانب العميل (غير متصفح) (IE Outlook). على افتراض أن التطبيق الجانبي العميل يحتوي على واجهة برمجة تطبيقات من نوع ما، أحتاج إلى تطبيق الويب لتشغيل جانب العميل (استنادا إلى مستخدم ينقر على رابط) للحصول على المعلومات ونقلها إلى تطبيق العميل من خلال API.

سيكون فكرتي الأولى لكتابة عنصر تحكم ActiveX الذي يمكنني تمرير رمز آمن له، ثم يستخدم هذه المعلومات للتحدث مرة أخرى إلى تطبيق الويب من خلال خدمة ويب قمت بإنشائها ثم يمكن للتحكم ActiveX بتنفيذ الواجهة في تطبيق جانب العميل (أي النظرة). بناء على ما قرأته، فإن هذا قابل للقيام به مع ActiveX.

مشكلتي هي أن ActiveX لن يعمل في متصفحات Mozilla أو Chrome التي تشكل مشكلة حقيقية لأنني أحتاج إلى أن تكون منصة متعددة. لقد قرأت عن NPAPI والتي من المفترض أن تكون التقنية الأصلية. قرأت أيضا عن المكونات الإضافية ل Firefox و Chrome التي من المفترض أن تدعم ActiveX، لكنها ليست أصلية. أحتاج إلى الخروج من دعم الصندوق حتى لا يتعين على المستخدمين القيام بأي شيء خاص، فقط انقر وتشغيل. إذا هذه هي اسئلتي:

1) ActiveX خياري الوحيد ل IE؟

2) هل أحتاج إلى تطوير ActiveX و NPAPI لدعم جميع العملاء؟

3) هل هناك طريقة أفضل للقيام بذلك أنني لست على علم؟ أنا منفتح على التقنيات الأخرى لأن التركيز على تجربة مستخدم سلس.

شكرا لأي نظرة ثاقبة!

هل كانت مفيدة؟

المحلول

إذا فهمت الاحتياجات الخاصة بك بشكل صحيح، لا أعتقد أن أي شيء سيكون سلسا. تحتاج إلى تنزيل نوع من الوحدة النمطية على جهاز العميل الذي سيكون لديه حق الوصول إلى موارد النظام المحلية الخاصة بهم. أي متصفح لائق سوف يرمي التحذيرات الرهيبة للمستخدم.

نصائح أخرى

أخشى إحدى حلولك المحتملة هي تطوير مكون إضافي لكل المتصفحات التي تريدها هذا التطبيق للعمل معه، تماما مثل Google فعلت Gears

ومع ذلك، يمكنك دائما محاولة القيام بالحيلة باستخدام مفتاح Java، لكنني لا أعرف ما إذا كانت سياسة أمان المتصفح ستسمح لك بالتحدث إلى تطبيق مثل Outlook، وأعتقد أنه سوف

في صحتك

اعتمادا على نوع المعلومات التي تنقلها، من الممكن أن تحصل على Outlook لفتح ومعالجتها عند تنزيلها. على سبيل المثال، يتم تعيين Outlook عادة كملفات التطبيق الافتراضي لملفات .ics (تقويم الإنترنت). عندما أقوم بتنزيل ملف .ics، سيطلق Outlook، وفتح الملف كإدخال تقويم.

لذلك، ستكون فكرة مجنونة واحدة تكتب تطبيقا صغيرا سيقوم المستخدم بتثبيته على نظامه. سيتم تسجيل هذا التطبيق كبرنامج افتراضي لنوع ملف فريد من نوعه. عندما تريد نقل المعلومات، ما عليك سوى تنزيل الملف كمرفق. سيتم استدعاء برنامجك لمعالجة ذلك. يمكن للبرنامج بعد ذلك استخدام API Outlook لإرسال البيانات إلى Outlook بأي طريقة تحتاج إليها.

إذا كان التفاعل غير مناسب لملف واحد، فلا يزال بإمكانك استخدام ملف دمية. سيكون الهدف هو إطلاق برنامجك الصغير من جانب العميل وإعطائه التعليمات. يمكن أن يقوم برنامجك بعد ذلك بالتواصل مرة أخرى إلى خدمة ويب لك على جانب واحد، ومن خلال Outlook API على الجانب الآخر. ستكون قادرا على فعل أي شيء تريده في هذه البيئة، خاصة إذا قمت أيضا بإنشاء وظيفة إضافية في Outlook.

لم أفعل برمجة Outlook لعدة إصدارات. من الممكن أنه مع أدوات Outlook 2007 و Visual Studio للمكتب، قد تتمكن من الجمع بين بعض هذه القطع. الفائدة الرئيسية هي أنك لن تحتاج إلى القلق بشأن المتصفح على الإطلاق.

يعمل ActiveX فقط على IE، ولكن NPAPI يعمل على Firebreath، كروم، إلخ.

يمكنك استخدام مشروع FireBreath، الذي يوفر التجريد سهل الاستخدام نسبيا لإنشاء واجهة مساعدية واحدة تعمل كتحكم ActiveX أو عنصر تحكم NPAPI.

الصفحة الرئيسية للمشروع هنا: http://www.firebreath.org.

على الرغم من عدم وجود إصدار رسمي، فإنه قريب جدا من الإصدار 1.0 فقط؛ التي تبدو وكأنها هي كل ما تهتم به.

للحصول على معلومات "QuickStart"، تحقق من هذه الصفحة Wiki: http://www.firebreath.org/display/documentation/creating+a+new+plugin+project. - هناك برنامج نصي بيثون الذي سيولد مشروع عينة، يمكنك تشغيله وتشغيله في 30 دقيقة مع البرنامج المساعد الأساسي.

أيضا، انضم إلى القائمة البريدية - أنا المطور الرئيسي، وأؤكد لكم أننا سنرد على الاستعلامات على الفور إذا كان لديك مشاكل في البدء. =

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top