سؤال

لدي برنامج نصي TCL يعمل على نظام التشغيل Windows.أحتاج إلى التواصل مع تطبيق vc++ 6 قديم يعمل في عملية مختلفة.أحتاج إلى اتصال ثنائي الاتجاه.في Linux، سأستخدم dbus، ولكن ما هي استراتيجية IPC التي يجب أن أستخدمها لنظام التشغيل Windows؟

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

المحلول

وتى سى ال على ويندوز لديها DDE الدعم المدمج في (انظر مستندات للأمر DDE) التي يمكن أن تساعد إذا كان التطبيق الآخر يدعم هذا. وثمة خيار آخر هو TWAPI (API تى سى ال ويندوز) الإرشاد، والتي لديها مرافق لإرسال لوحة المفاتيح والماوس الإدخال إلى تطبيق آخر، يرى <وأ href = "http://twapi.magicsplat.com/input.html" يختلط = "نوفولو noreferrer "> http://twapi.magicsplat.com/input.html .

نصائح أخرى

Boost.interprocess ديه بطرق مختلفة مثل كما المشتركة الذاكرة ورسالة يمر ل C ++. هل يمكن أن تبدأ دائما هناك ونرى ما هو متوافق مع البرنامج النصي.

ومآخذ القديمة عادي بجهد كبير في TCL على ويندوز (ولينكس، وفي كل مكان ينفذ TCP / IP:)

قائمة الخيارات من MSDN: http://msdn.microsoft.com/en-us/library/aa365574(VS.85).aspx

إذا كنت تريد شيئًا أكثر "مغامرة"، فهناك أيضًا قائمة انتظار الرسائل في ويندوز.

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

هنا لمزيد من التفاصيل من أول و< وأ href = "http://www.tcl.tk/man/tcl8.4/TclCmd/socket.htm" يختلط = "نوفولو noreferrer"> هنا عن بعض المعلومات حول مآخذ.

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