21-04-17, 05:33 PM
عايز اعمل عداد سرعة الانترنت عند تشغيل رابط فى الويب داخل المشروع
زاى كدة
[VB.NET] عايز كود خاص بقياس السرعة
|
21-04-17, 05:33 PM
عايز اعمل عداد سرعة الانترنت عند تشغيل رابط فى الويب داخل المشروع
زاى كدة
تم الشكر بواسطة: asemshahen5
21-04-17, 05:58 PM
(آخر تعديل لهذه المشاركة : 21-04-17, 06:09 PM {2} بواسطة silverlight.)
النوع هذا من الكونترول إما أن تشتريه من شركات او تكتب الكود الخاص به بنفسك
و علي ما أعتقد بعض المواقع البرمجية بها كود مفتوح المصدر لمثل هذا النوع من الكونترول عموما الحل الاسهل لك هو ان تستخدم الكلاس StopWatch بحيث تبدأ الكلاس عند الضغط علي اللينك و الكلاس علي ما اعتقد به عداد ثم تقوم بإيقاف الكلاس عند الانتهاء من تحميل الصفحة بالكامل تم الشكر بواسطة: asemshahen5
21-04-17, 06:10 PM
(آخر تعديل لهذه المشاركة : 21-04-17, 06:17 PM {2} بواسطة MOSTAFA.KAMEL.)
اخى اشترى ايه ؟ انا اصدى زاى برنامج التحميل كده لما باجى احمل رابط بيبقى فى عداد بيقراء سرعة النت الخاصة بى وهو بيحمل انا عايز بدل ما يقراء السرعة من ملف تحميل لا يقراءة عند تشغيل رابط فى الويب فى المشروع الخاص بى بس
اخى انا بحثت كثير ولكن مش عارف اعملو عشان كده قولت حد بساعدنى بالكود تم الشكر بواسطة: asemshahen5
21-04-17, 06:25 PM
(آخر تعديل لهذه المشاركة : 21-04-17, 06:32 PM {2} بواسطة silverlight.)
انا فقط حين رأيت الصورة الموجودة في سؤالك اعتقدت انك تريد استخدام كونترول مشابه للموجود في الصورة
استخدم ProgressBar مع الكلاس StopWacth بحيث ان ProgressBar تاخذ القيمة الخاصة بها من StopWach ,وهذا الاسهل لك تماما لأن كتابة الكود الخاصة به ستكون سهلة و بسيطة عموما بعض المبرمجين يستخدمون BackgroundWorker بهدف تنفيذ الفكرة الخاصة بك وهي نفس الفكرة التي قد تراها في برامج downLoad انا لم اعمل مع WebBrwoser لكن أفترض اأنه به شئ اسمه PageLoaded و بها عليك ان تقوم بإيقاف العداد الخاص ب StopWatch تم الشكر بواسطة: asemshahen5
21-04-17, 06:34 PM
(آخر تعديل لهذه المشاركة : 21-04-17, 06:43 PM {2} بواسطة MOSTAFA.KAMEL.)
طيب ممكن تعمل الكود بعد ازنك وشكرااااا
لا انا عايزو يشتغل مع الويب تم الشكر بواسطة: asemshahen5
21-04-17, 10:06 PM
السلام عليكم اخي الكريم
انا رديت عليك في موضوع سابق بس واضح ان وجهة نظري لم تكن واضحة بما يكفي قلت ان الموضوع ليس بالبساطة اللتي تتصورها لعدة اسباب لحساب سرعة تحميل مجموعة من البيانات يجب ان يكون لك القدرة على معرفة مقدار البيانات الواردة في فترة معينة للاسف الاداة web browser لا تتيح ذلك بحسب علمي في المثال اللذي ارفقته لك في الموضوع السابق https://code.msdn.microsoft.com/windowsd...0a#content في مثاله ذلك يستفيد من الكلاس PerformanceCounter واللذي يقوم بمراقبة قيم معينة في البرامج اللتي تعمل وكذلك قيم خاصة بالحاسب نقسه ، مثل القيم لتي تقوم ال Task manager بمراقبتها ( cpu , memory usage والى اخره ) وبمقدور ايضا هذا الكلاس ان يراقب كم البيانات الداخلة والخارجة من برنامج معين يعمل على ".NET CLR Networking 4.0.0.0" ولكن للاسف الاداده web browser لم يتم تطويرها على ال ( .net 4 ) فلا يستطيع ال PerformanceCounter ان يراقبها ( اعتقد ذلك هو السبب ) ولكنه يستطيع ان يراقب كمية البيانات الداخلة والخارجة من البرنامج فيما عدا ذلك ، كأن تقوم بتحميل ملف مثلا دون الحاجة ل webbrowser في هذه الحالة سيكون بالامكان مراقبتها وتحديد سرعة البيانات ( او سرعة الداونلود ) في الحقيقة لست بحاجة ان تتعمق اكثر من ذلك في ال PerformanceCounter ففي المثال اعلاه قام باعداد كلاس لتسهيل التعامل معها واسماه NetworkTraffic في مثاله يقوم بعرض صفحة في اداه Webbrowser و كذلك يقوم بتحميل ملف كمثال ، وتلاحظ بان السرعة تكون حقيقة فقط في حالة تحميل الملف فانت الان امامك حل من 2 : ان تجد طريقة لعرض ما تريد بدون اللجوء للاداه web browser كأن تستخدم ادوات عرض محتوى انترنت بديلة تم تطويرها باستخدام ( .net 4 ) او ان تستخدم web browser وتعرض السرعة المسحوبة من الجهاز كله ( وليس من البرنامج فقط ) وهذا امر بسيط وهناك طرق كثيره لمراقبه ذلك عموما سأحاول ان اجد لك حلا لذلك ، وارفقت لك مثال يقوم بتحميل ملف برابط معين وكذلك يقوم بالدخول على صفحة ويب معينة بطريقتين ، قياس استهلاك الانترنت ككل ، واستهلاك البرنامج فقط الكود بسيط ، ولكن اذا اردت شرح للكود اخبرني تم الشكر بواسطة: أسامة السالمي , asemshahen5
22-04-17, 04:26 AM
لو الأمر مرتبط فعليا بموضوع NetworkInformation فالأمور تختلف قليلا لكن ما زال من الممكن الحصول علي سرعة الانترنت او أي معلومات مشابهة عن طريق استخدام الكلاس Progress Of T و ذلك بأن تمرر لها الكلاس NetworkInformation
تم الشكر بواسطة: asemshahen5
22-04-17, 06:06 AM
(آخر تعديل لهذه المشاركة : 22-04-17, 06:08 AM {2} بواسطة silverlight.)
الكود التالي سيوضح لك كيف تعمل في الخلفية للحصول علي سرعة النت
للأسف انا معلوماتي ضعيفة جدا في التعامل مع كلاسات النت لذلك وبعد إلقاء نظرة سريعة علي بعض كلاسات النت يمكنك ان تستخدم الكود التالي ليعطيك فكرة بسيطة عن كيفية الاجابة علي سؤالك لتنفيذ الكود افتح مشروع بسيط و ضع علي الفورم باتون و Label ثم اكتب الكود بالشكل التالي وأفترض هنا انك متصل بالنت عند تنفيذ الكود PHP كود : Private Async Function InvokeNetworkInterface(delay As Integer, progress As IProgress(Of NetworkInterface())) As Task تم الشكر بواسطة: asemshahen5
|
|