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

إرسال نفس الرسالة إلى كمبيوترات متصلة بالشبكة

مغلق
بدأه frozen في 4 يونيو 2005 · 11 رد · 1,221 مشاهدة · في Microsoft Visual Basic.NET
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

بسم الله الرحمن الرحيم

=============

الأخوة الكرام

تحياتى للجميع

توجد شبكة فى العمل الخاص بى تسمى A.F.T.N وهى إختصار للكلمة Aeronoetical Fixed Telcommunication Network

وهى شبكة عالمية كل كمبيوتر متصل بهذه الشبكة له عنوان خاص - على سبيل المثال عنوان الكمبيوتر الذى أعمل به هو HECAZIZX

وكل عنوان مكون من ثمان حروف

وسؤالى هو

=======

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

مثال على ذلك

-------------

محتويات مربع نص العناوين هو HESHZIZX HESHZTZX HEGNZIZX HEGNZTZX

محتويات مربع نص الرسالة هو (FPL-AMV230-SI-HECA1200-HESH1300)

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

الكمبيوتر HESHZIZX

الكمبيوتر HESHZTZX

الكمبيوتر HEGNZIZX

الكمبيوتر HEGNZTZX

أرجو أن يتسع صدوركم لى وأرجو المساعدة

تقبلوا تحياتى

#2

يمكنك استخدام أمر الـ Net Send من خلال تطبيقك لتبعث من خلاله الرسائل الى الأجهزة المتصلة بالشبكة، و هذه هي الطريقة السهلة، اما الطريقة الأصعب فإقرأ قليلاً عن الـ System.Net Namespace

رأس الحكمة الإيمان بالله

#3

بسم الله الرحمن الرحيم

==============

مشرفنا الكريم

جزاك الله خيرا

حقيقة لا أعرف الطريقتين فهل من الممكن أن تدلنى على طريقة لمعرفة إستخدام أى الطريقتين

إذا كان من الممكن كتب أو مقالات تشرح الطريقتين وأكون لك من الشاكرين

تقبلوا تحياتى

#5

حسناً، سأقوم بشرح الطريقة السهل لأنها لا تأخذ وقتاً طويلاً عكس استخدام الـ System.Net namespace .

يمكنك تشغيل أمر الـ Net Send عن طريق تطبيقك بإستخدام الـ System.Diagnostics.Process class، فهذا الـ Class يتيح لك تشغيل أي برنامج موجود على جهاز الـ user .

عندما تريد ارسال رسالة الى أحد الأجهزة المتصلة بالشبكة فأنك تفتح الـ cmd و من ثم تبعث رسالة كهذه مثلاً:

net send 10.10.4.2 Hello World!

طبعاً يمكنك استبدال الـ IP Address بإسم الجهاز الذي تريد ارسال الرسالة اليه:

net send HESHZIZX Hello World!

و الأمر Net Send مثله مثل باقي البرامج، يمكنك تشغيله عن طريق الـ Process.Start()، مثال:

يمكنك وضع هذا الكود في الحدث Click للـ Button :

        
    Const _NetSend As String = "/net.exe"

    Private Sub btnSendMessage_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnSendMessage.Click
        Dim Pro As New System.Diagnostics.Process()
        Pro.StartInfo.FileName = System.Environment.SystemDirectory & _NetSend
        Pro.StartInfo.Arguments = " " & "send" & " " & txtComputerName.Text & " " & txtMessage.Text

        Pro.StartInfo.WindowStyle = ProcessWindowStyle.Hidden حتى لا يرى المستخدم الشاشة
        Try
        Pro.Start()
        Catch ex As Exception
            MessageBox.Show(ex.Message, "Error", MessageBoxButtons.OK, MessageBoxIcon.Error)
        End Try
    End Sub

txtComputerName هو الـ TextBox الذي تضع فيه اسم الكمبيوتر أو رقم الـ IP Address للكمبيوتر المراد ارسال الرسالة له.

txtMessage هو الـ TextBox الذي تكتب فيه محتويات الرسالة.

و الـ Pro.Startinfo.Arguments تأخذ الـ Arguments الخاصة بأمر Net ، بمعنى لو الـ Arguments الخاصة بأمر Net تكون Send ComputerName Message ، فإنك تساوي الـ Pro.StartInfo.Arguments بها..

حمل المثال..

SendMessage.zip

تم تعديل هذه المشاركة بواسطة محمد عبد العليم في 5 يونيو 2005 في 12:57

رأس الحكمة الإيمان بالله

#6

جزاك الله خير يالغالي محمد

ممكن خدمه لو سمحت انا عايز اتعمق اكثر في الكلاس system.digonistic.prosses هل مكتبه الـ MSDE فيها المعلومات هذي وكيف اتوصل اليها ؟

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

شكرا جزيلا لك

#7

و الله يا أخي لم أجد أفضل من الـ MSDN لمعرفة أي شيء يخص الـ Net Framework. ، اليك هذه الروابط المفيدة جداً بخصوص الـ Process class :

Process Class

System.Diagnostics.Process FAQ

Code: Stopping an Application (Visual Basic)

Walkthrough: Managing a Windows Process

Process.GetProcesses Method

و هكذا....

و ان بحثت في الـ MSDN ستجد المئات من المصادر ناهيك عن باقي المواقع المتخصصة...

رأس الحكمة الإيمان بالله

#8

بسم الله الرحمن الرحيم

=============

مشرفنا الغالى

جزاك الله خيرا كثيرا

والله إن لسانى ليعجز عن شكرك

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

أدعو من الله عز وجل أن يفرج عنك كربة من كربات الدنيا والآخرة وأن ييسر الله عز وجل كل عملك

تقبلوا تحياتى

#9

بسم الله الرحمن الرحيم

=============

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

وأريد أن أطرح عليك بعض الأسئلة أرجو أن يتسع صدركم لها ولى

إذا قمت بأخذ البرنامج الذى قمتم بعمله وقمت بتشغيله على الكمبيوتر المتصل بالشبكة وفى مربع النص الخاص بإسم الكمبيوتر كتبت HESHZIZX

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

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

تعتبر شبكة A.F.T.N من الشبكات العالمية فى التراسل ما بين الوحدات المختلفة مع بعضها البعض والغرض منها أن تقوم وحدة معينة بإرسال معلومة إلى وحدة أخرى أو وحدات قد تكون فى نفس البلد أو فى بلد أخر وهذه المعلومة يتم حفظها على الجهاز المرسل إليه فى مكان معين حتى يتم الرجوع اليها عند الحاجة

ولتوضيح ذلك أكثر يوجد برنامج يسمى IAT هذا البرنامج مسئول عن إرسال وعرض تلك الرسائل وهذا البرنامج موجود على جميع الأجهزة المتصلة بالشبكة

ومسار البرنامج على أى جهاز كالتالى

C:\Program Files\Sys France\IAT.exe

ويوجد فى المجلد Sys France مجلدأخر يسمى Messege هذا المجلد يحتوى مجلدات على حسب الأيام بمعنى اليوم هو 5 يونيو 2005 لذا يوجد مجلد إسمه 05062005 يحتوى هذا المجلد على الملف Messg.dat

هذا الملف هو بيت القصيد حيث أن أى رسالة يتم إرسالها يتم إضافتها الى هذا الملف

أى أن برنامج ال IAT عندما يقوم بإرسال رسالة يتم إضافتها الى الملف Mssg.dat على الجهاز المرسل إليه هذه الرسالة

وهذا البرنامج يقوم بعرض المعلومات الموجودة بالملف Mssg.dat وذلك عن طريق أداة ال TreeView التى تقوم بعرض ال مجلدات الموجودة المسار C:\Program Files\Sys France\Messege

وعند الضغط على أى Node التى تمثل قيمة التاريخ توجد ListView يتم تعبئتها بالرسائل الموجودة بالملف Messg.dat

أرجو أن أكون وفقت فى شرح فكرة عمل برنامج ال IAT

فكيف أستطيع مشرفنا الكريم من خلال برنامجى أن أقوم بإرسال معلومة فيتم إضافتها إلى الملف Messg.dat على جهاز المرسل إليهم

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

وإن كانت طريقة حلها سهل فأرجو أن تتكرم بشرح الطريقة

وجزاك الله خيرا

تقبلوا تحياتى

#10
اقتباس
إذا قمت بأخذ البرنامج الذى قمتم بعمله وقمت بتشغيله على الكمبيوتر المتصل بالشبكة وفى مربع النص الخاص بإسم الكمبيوتر كتبت HESHZIZX

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

نعم...

اقتباس
فكيف أستطيع مشرفنا الكريم من خلال برنامجى أن أقوم بإرسال معلومة فيتم إضافتها إلى الملف Messg.dat على جهاز المرسل إليهم

في هذه الحالة أنصحك بإستخدام الطريقة الأصعب System.Net Namespace و أيضاً أنصحك أن تقرأ عن الـ Binary Serialization

أرجو أن تعذرني أخي الفاضل على عدم المساعدة بأكثر من ذلك، لأني فعلاً منشغل هذه الأيام كثيراً هذا بالإضافة الى انني لم أجرب من قبل التعامل مع الـ System.Net .... و بالتوفيق...

رأس الحكمة الإيمان بالله

#11

بسم الله الرحمن الرحيم

=============

مشرفنا الغالى

جزاك الله خيرا

والله لقد وفيت ما قصرت وأدعو من الله عز وجل أن ييسر لك أعمالك

تقبلوا تحياتى

#12

شكرا جزيلا وفقك الله

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

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

عدد الزوار حالياً

المتواجدون خلال آخر دقيقتين · يتحدّث كل ٣٠ ثانية

—الإجمالي—أعضاء مسجّلون—زوار بدون تسجيل

جارٍ التحقق من المتواجدين…