مكتبتي غير المكتملة لمحاكاة steamclient.dll ، والتي طورتها لمشروع واحد ، لكنني في وقت لاحق تخلت عن التطوير بسبب حقيقة أنني تركت المشروع.
في جوهرها ، هذه هي المكتبة التي تعترض قناة Steam "الأنبوب المسماة" ، والتي تستخدم للتواصل بين Steam و Game التي يتم إطلاقها. لم أكن أرغب في تنفيذ واجهات steamclient بالطريقة التي يفعلها المحاكسون الآخرون ، ويبدو لي أن خطاف أنابيب البخار سيكون أبسط بكثير وأكثر أناقة (لا) ، بالإضافة إلى أنني كنت مهتمًا دائمًا بكيفية عمل هذه الأنابيب ، ولا توجد معلومات على الإنترنت كيفية عملها.
عند تحميلها في اللعبة ، تقوم المكتبة بتشغيل مؤشر ترابط يقوم بمسح المخزن المؤقت للذاكرة المشتركة حيث تتم كتابة أوامر الأنابيب المسماة ، وتطبق أيضًا بعض خطافات DLLS Steam. فئة TSTeamPipeserver هي المسؤولة عن خطاف الأنابيب ، إنها فئة يمكنها قراءة أوامر أنابيب البخار.
يعمل المشروع بدلاً من ذلك للأغراض التعليمية ، ومن الصعب تطبيقه في مكان ما في شكله الحالي. مع ذلك ، تمكنت من إطلاق CS: GO بدون Steam باستخدام SteamPipeemu ومشاهدة القائمة الرئيسية ، ولكن هذا كل شيء. لقد خططت على الأقل الانتهاء من إنشاء بيانات شهادة Steam من أجل الاتصال بخوادم بدون خطوط ، لكنني تخلت عن المشروع مبكرًا.
ومع ذلك ، بمساعدة هذا المشروع ، يمكنك دراسة بالتفصيل كيفية عمل أنبوب البخار: كيف تتم قراءة الأوامر وكتابتها وتنفيذها ، والتواصل بين Steam و The Game ككل ، بالإضافة إلى عمليات الاسترداد للبخار. أعتقد أن هذه معلومات مفيدة للغاية ومثيرة للاهتمام.
أنت حر في استخدام هذا المشروع ومعرفته في عملك ، ومع ذلك ، سأكون ممتنًا للغاية إذا كنت تشير إلي.