الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

ربط البى اتش بى ب WebBrowser بدل Winsock

مغلقرائج
بدأه xhacker في 1 أغسطس 2007 · 62 رد · 5,097 مشاهدة · في منتدى تطوير المواقع بـ PHP
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

يوجد ملفان مرفقان

الملف الاول هو الملف المقصود..و هو مشروع فيجوال بيسك يقوم برفع ملفات عن طريق الوين سوك..

و لكننى أرغب فى أستخدام web browser الموجودة فى Microsoft Internet Control

الملف الثانى هو ملف البى أتشش بى المستخدم

صراحة لا أدرى الصواب وضع الموضوع فى منتدى البى أتش بى أم هنا

الفكرة تقوم ببساطة شديدة على أن ال Winsock يقوم بإرسال ال Post و لكننى أرغب فى أستخدام الدالة Navigate الموجودة فى ال WebBrowser Control فى Microsoft Internet Controls و التى تحتوى على الParameter Post و Header

صراحة حاولت و لكن خبرتى معدومة فى البى أتش بى و لذلك لم أتمكن من النجاح لأننى لا أعرف حتى ما الفارق بين ال Header و ال Post و ما إلى ذلك

المشروع ضغير جدا جدا على أى حال و انا متأكد أنه ليس صعبا بحال على الفريق

file_upload.ZIP

post_dump.php.zip

تم تعديل هذه المشاركة بواسطة xhacker في 1 أغسطس 2007 في 03:48

#2

للرفع

أرجوكم أفيدونى بأى شىء..الرجاء...

#3

اتصور ان فائدتك ستكون في قسم PHP.

Do as I say, not as I do

We are Anonymous. We are Legion. We don't forgive. We don't forget

#4

هل يمكن إذن أن أطلب منك أو من أى مشرف هنا أن ينقله إلى قسم البى أتش بى ؟

أم أقوم بكتابة الموضوع من جديد فى قسم البى أتش بى ؟

#5

صعب أنك تستعمل الـ PHP بى فى برنامج Desktop هتوزعه على الناس , لأن لازم ينصبوا الـ PHP و يحطوا الملف فى الـ Localhost و ما الى ذلك.

أما أن كنت تقصد أن الملف على Server فيبقى السؤال لمبرمجى الـ PHP

#6

ملف البى أتش بى سيكون موضوعا على سيرفر بالطبع

و يقوم المستخدم بإستخدام برنامج الفى بى لرفع الملفات للسيرفر

الموضوع شغال 100% و لكننى لا أريد أستخدام الوين سوك و أريد أستبدالها بإداة ال WebBrowser الموجودة فى Microsoft Internet Controls و أنا متأكد أنه يمكن ذلك لأنه هذه الأداة فى الدالة Nvaigate تحتوى على الباراميتر Post و Hedears و لكننى لم أتمكن من تطويع لكود كما ينبغى لأنه ليست لدى معرفة بلغة البى أتش بى و برمجة الأنترنت

#7

انا خبرتى فى البى اتش بى صفر 0

لكن احب ان اوضح لك اشياء ربما تكون مفيدة لك او لغيرك

انا الحمد لله خبرتى جيدة فى تصميم برامج ال Download و ال Upload

بالنسبة للوين سوك فهى ابسط وسيلة للاتصال بين برنامجين فقط لارسال TextString وهذه الطريقة تستخدمها كل برامج والادوات المعقدة

مثل Microsoft internet control و telNeالخ

لذلك فان عمل ال Upload و ال Download يتم باستخدامها WinSock لكى تنقل بيانات الملف

لكن اولا دعنا نتطرك للغات مثل البى اتش بى

قديما كانت متصفحات الانترنت تستخدمها فقط فى عرض نصوص وصور وفيديو وبعض الاصوات وذلك باستخدام بروتوكول Http

اولا عندما تطلب صفحة انترنت يوقم متصفح الانترنت عندك وبكل بساطة بتحليل ال Url المطلوب

حيث انه يفصل ال Header "Http://" ليعرف ان البروتوكول المستخدم هو بروتوكول ال Http

وبذلك يبقى من العنوان اسم السيرفر ومسار الملف المطلوب ويقوم بفصل الاثنين

يقوم المتصفح بالاتصال على اسم الخادم عند فصله من العنوان الموجود على ال URL على Port 80 وهو البورت المحجوزة لسيرفر ال Http

واول ما يتم الاتصال يعث بطلب تحميل ملف ال Html وذلك بمساره الموجود فى العنوان Url ثم تتم الخطوات ( لا يتسع الوقت لذكرها ) ثم يقوم بتحميل الملف

بعد ان يفتح الملف ويقو بتجليله اى انه يرى روابط الصور مثلا فيقوم تحميلها بنفس الطريقة ويعرضها فى نفس النافذة حتى تتكون الصفحة التى تراها

لكن هذه الطريقة عقيمة جدا حيث ان تحديث تلك الصفحات يتم بصعوبه وايضا يشترط وجود تلك الصفحة بالسيرفر

وايضا لم يكن متاحا عمل منتدى مثل هذا والا كانت كل رد يتم عمل له صفحة جديدة ويمسح القديمة

لغات مثل البى اتش بى تقوم بتكوين صفحة الانتنت فى الحال وذلك اعتمادا على النصوص فى قاعدة بيانات و قالب مسجل عندها وبذلك اصبحت صفحات الانتر نت اكثر حيوية

اما تلك اللغات فعمها يكون داخل المتصفح فقط لانها عبارة عن لغة وصفية يترجمها المتصفح فى الحال ةلا تستطيع بها عمل ملف Exe

الان ارجو ان تحدد اى نوع من البرامج تريد عملها

موقع البرنامج

مبارك لشعب تونس photo-thumb-42837.png

#8

يا أخى

فى مشاركتى الأولى أنا وضعت البرنامج بالفعل

و وضعت أيضا ملف البى أتش بى

و هو يعمل بصورة جيدة جدا عن طريق إرسال ال Header و ال Post من خلال الWinsock

و لا أحتاج لأى تعديلات فى ملف البى أتش بى

و ها هو رابط ليمكنكم أستخدامه أيضا

http://www.zendurl.com/a/alexo///post_dump.php

النشكلة الوحيدة هى أننى أرغب فى إرسال ال Header و ال Post من خلال Microsoft Internet Controls WebBrowser

و هى أداة موجودة فى ال فى بى و يمكنك إختيارها بسهولة من Project >Components

و هذه الأداة تحتوى على الدالة Navigate

و تلك الدالة تحتوى على الParameters Post و Header

ما فى القصة ببساطة هو أننى أرغب فى أستخدام هذه الدالة بتلك الأداة بدل من ال Winsock

المشكلة هى أننى لا أعرف كيف أفرق بين ال Header و ال Post لتطويع الكود كما ينبغى

رجاء ممن يملف أى فكرة عن الموضوع أن يقوم بتنزيل المرفقات فى مشاركتنى الأولى و يلقى نظرة

#9

اخى اذا كنت انت من صمم البرنام الذى ارفقته فانت تفهم ما اقوله

لقد قمت بتجربة البرنامج وكما قلت لك كله باستخدام الوين سوك وبروتوكول ال Http

رفعت ملف باستخدام هذا البرنامج وقام السيرفر بالرد على لكن لم تحرلل هذا الرد حيث انه كان رد Dpwnlpad لملف Html

اخذت البيانات التى ارفقها السيرفر وكانت تلك الصفحة فى المرفقات

يجب ان تذهب لمبرمجى ال Php ليقومو بعمل صفحة بها رابط Upload مباشر مثل الذى عندك لترفع الملف عليه

t.html

موقع البرنامج

مبارك لشعب تونس photo-thumb-42837.png

#10

اسف لم اقرا مشاركتك السابقة

يمكنك عمل البرنامج ك Active x و اعرضها داخل صفحة انت نت

او استخدم الجافا

موقع البرنامج

مبارك لشعب تونس photo-thumb-42837.png

#11

الـ ActiveX للويب تقنية أنتهى أجلها بسبب خطورتها , و ده اللى خللى Mozilla لا تدعم التقنية دى فى الـ Firefox ( بالأضافة للـ VBS ) , فلا أنصح بها أطلاقا.

لو جيه يوم و منتدى الفريق العربى قاللى أنى محتاج ActiveX علشان أتصفحة هنفضلة خالص ;)

#12

يا أخى لو فحصت ملف الرد الذى أرسله السيرفر تجد أنه ملف للرابط للملف الذى أنت رفعته و هذا يعنى أن البرنامج يعمل

فالفكرة أنه يرسل الملف إلى السيرفر ثم يرد السيرفر برابط تنزيل الملف بعد نجاح الرفع

المكوضوع ببساطة أننى أريد إرسال ال Headers و ال Post Data بواسطة Microsoft Internet Controls web Browser

و لكننى لا أملك المعلومات الكافية..فقد حاولت تحويل ما يرسله ال Winsock و لكن توجد لدى مشكلة فى التفريق بين ال Headers و ال Post

حقا لا أدرى ما دخل ال ActiveX فى الموضوع !!!

تم تعديل هذه المشاركة بواسطة xhacker في 1 أغسطس 2007 في 21:20

#13

اخى انا اعرف ان البرنامج يعمل وانا اقوم بتصميم برنامج دونلود الان

لكن الذى اريد ان افهمه منك هل تريد البرنامج ان يعمل داخل صفحة انترنت وهذا طبعا لا ينصح به

والان لا يتبقى سوى ال Java script وطبعا المتصفح هيطلع رسائل تحزير كتير جدا

او تستخدم ال php

_______________________________________

المهم لو كان فهمى لقصدق صحيح انت عاوز تعمل Uploader لاحد السيرفرات داخل صفحة انترنت اى انك لا تريد المستخدم ان يجبر على تثبيت برنامج من نوع DeskTop عنده اى مثل ال Uploader الخاص بال 4Share

موقع البرنامج

مبارك لشعب تونس photo-thumb-42837.png

#14

اه صح انا نسيت همروح بعيد ليه

زى رفع الملفات فى الفريق العربى للبرمجة

اذا كان ده قصدك يبقى الموضوع مكانه ليس منتدى ال Visual basic

موقع البرنامج

مبارك لشعب تونس photo-thumb-42837.png

#15

!!!

البرنامج يعمل بالفعل و يرفع الملفات إلى أى سيرفر يدعم بى أتش بى بواسطة ملف بى أتش بى و هو موجود أيض فى المرفقات

و هو يقوم بإستغلال ملف البى أتش بى لرفع الملف إلى سيرفر

و أنت جربته و رفعت ملف بالفعل

و لكن الفكرة أن البرنامج بصورته الحاليه يرسل الأوامر إلى السيرفر بواسطة ال Winsock

بينما أنا أرغب فى جعله يستخدم الMicrosoft Internet Controls WebBrowser

و يمكنك إضافة تلك الأداة من

Project>Components

تم تعديل هذه المشاركة بواسطة xhacker في 1 أغسطس 2007 في 21:34

#16

لقد وضعت هذا الموضوع فى قسم ال VB لأن ما أحتاج إلى تعديله هو كود ال VB

و لكن كود ال VB هذا يحتاج إلى من لديه خبرة فى الPHP أو ال HTTP Post و Header

فأنا حائر حقا و لا أدرى هل ينبغى أن أنقله إلى قسم الPHP ؟؟

على أى حال الكود صغير جدا جدا و لا يحتوى على أى تعقيدات و هو مستخدم بشدة و ألاف التطبيقات

#17

للرفع أو للنقل إلى منتدى بى أتش بى

#18

للرفع

أرجوكم لا تتجاهلوننى

أرجوكم..أعطونى الإفادة..

#20

ارجوا ان توضح انت لماذا تريد استخدام الMicrosoft Internet Controls WebBrowser بدلا من الوين سوك

لانى لم افهمك

تم تعديل هذه المشاركة بواسطة حريف برمجة في 2 أغسطس 2007 في 03:35

موقع البرنامج

مبارك لشعب تونس photo-thumb-42837.png

#21

ألف شكر على أهتمامك يا أخى

و لكن فى ذلك الموضوع, قام الأعضاء يأستخدام طرق ملتوية للألتفاف حول ما أريده

بينما هنا الموضوع أبسط

ففى مثالى أقوم بأتسخدام الWinsock لإرسال الملف إلى الصفحة مباشرة

و لكننى أريد أستخدام WebBrowser لأنها تتيح التفعل المباشر بدلا من الWinsock و التى تعطى معتياط لا يمكن أستخدامها فى برنامج للشخص العادى

بينما الWebBrowser Control بعدما ترسل المحتويات سوف تقوم بإرجاع صفحة إنترنت عادية كما أن نسبة أخطائها منعدمة تقريبا قياسا بWinsock

أخى جرب التالى

Project>Components

و أختار Microsoft Internet Controls

ثم أضف الاداة الجديدة التى سوف تظهر لك و هى WebBrowser فى صندوق الأدوات

ثم و فى الكود الرئيسى بدل من Winsock.SendData أستخدم WebBrowser.Navigate

سوف تجد أن هذه الدالة تحتوى على المعيارين Post و Headers و يمكن أستخدامهم لإرسال ما يرسله الWinsock

و لكن..كيف أستطيع التفريق ؟..لأنه فى الWinsock أقوم بإرسال الأثنين معا بالإضافة إلى الأمر Post

فياريت ممن يفهم فى ال PHP أو فهم عام فى ال HTTP أن يدلنى على الطريق السليم و يقوم بتنزيل الملف المرفق فى مشاركتى الأولى

أنا قد حاولت و لكننى لم أنجح على الإطلاق

تم تعديل هذه المشاركة بواسطة xhacker في 2 أغسطس 2007 في 12:36

#22

للرفع

#23

على فكرة انت معقد الموضوع

المهم لو انا فهمتك صح يبقى انت عاوز الصفحة الى بيرجعهالك السيرفر تظهر فى متصفح

يعنى المستخدم يشوفها ان شاء الله ربنا يوفقنى واعدلك فى البرنامج

موقع البرنامج

مبارك لشعب تونس photo-thumb-42837.png

#24

أنا مكش معقد أى حاجة

أنا ببعت الPost و Headers عن طريق Winsock

أريد أن أبعتهم من خلال WebBrowser لأن هذا أسهل

بس !!!

لا شىء أخر

و لكننى لا أعرف كيف أفرق فى أستخدام الدالة WebBrowser1.Navigate و التى تحتوى على الParameters Post و Header

#25

اخى الصفحة الى بيرجعها السيرفر بيتم تخزينها فى ملف وفتحها عن طريق المتصفح جرب وقولى

fl_op.rar

موقع البرنامج

مبارك لشعب تونس photo-thumb-42837.png

هذا الموضوع مغلق.

مواضيع مشابهة