مشاهدة النتائج 1 الى 17 من 17
  1. #1

    how windows application work on server




    السلام علكيم ورحمة الله وبركاته


    مساء الخير جميعا أعضاء مكسات الكرام ... كيف الحال ان شاء الله بخير

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

    وهى محتاجة للمساعدة فى مشروعها من ذوي الخبرة فى البرمجيات ..
    وهذي اسئلتها ^^


    "اذا كان عندي برنامج بالسي شارب هو عباره عن برنامج محاسبه كيف اجعله يشتغل عالسيرفر؟؟ على هذا الاساس لابد يكون برنامجنا يعمل بجهتين للمستخدم وadmin الموجود بالسيرفر فكيف اجعلهم يتواصلون مع بعضهم البعض بحيث ان الadmin يقدر يسوي شكل من اشكال التحكم بالبرنامج المشغل عن اليوزر"صحيح هذا البرنامج ويندوز فورم
    فأرجو المساعدة لها ^_^

    ودمتم بحفظ الله جميعا ^^
    sigpic675296_9

    لنرسم بألوان مشاعرنا أجمل اللوحات


  2. ...

  3. #2

    وعليكم السلام ورحمة الله وبركاته

    مساء الأنوار أختي الكريمة ^_^

    يُنقل للقسم المناسب!

    بإمكانك استخدام مبدأ الخادم المستفيد (Client-Server) بأن تجعل تطبيق المحاسبة على سيرفر وينتظر من المستخدمين (Clients) الاتصال به وطلب عملية محاسبية معينة وهو يقوم بجميع الحسابات اللازمة ويعيد الناتج للمستخدمين.

    الطريقة الأفضل مما سبق هي أن يتم استخدام الـ Web Services.. وعن طريقها يمكن الوصول إلى السيرفر وخدمات السيرفر عن طريق الويب،
    مثال بسيط على خدمات الويب حتى أستطيع التفصيل أكثر.. وربما المساعدة بشكل أفضل لدي بعض الاستفسارات:
    - هل تطبيق المحاسبة جاهز أم أنه من كتابتها؟
    - هل من الضرورة استخدام الـ Windows Forms؟
    - هل لدى اختك تصور عن الـ Multi-Threading Programming و الـ Socket Programming؟

    أتمنى لها التوفيق
    سبحانك اللهم وبحمدك أشهد أن لا إله إلا أنت، أستغفرك ربي وأتوب إليك

  4. #3
    أشكرك أخي الكريم على الرد السريع لي بالنسبة للأسئلة هذا أجاباتها ..
    تطبيق المحاسبه تتم كتابته ليس جاهز والفكره الاساسيه التي نقوم ببنها عليه هو انه يكون مفيد اذا لدينا شركه وعدة فروع في اماكن مختلفه مثل شركات الصرافه حيث يكون كل فرع لديه نسخه عن البرنامج ولكن ك يوزر والفرع الريئسي يكون adminبالنسبه انه هل من الضروره اتسخدام windows form نعم ضروري بالنسبه لي نعم ادري انه الكثير ينصح ان ابنيه كweb formلكني افضل ويندوز فورموللاسف ليس لدي فكره عن Multi-Threading Programming و الـ Socket Programmingولكن اذا كانوا مهمين لامشكله سأقراء عنهم

    انه اي بالنسبه
    Multi-Threading Programming سمعت عن هالمفهوم ولكن ماطبقته

    وإذا كان لديك أي أقتراحات تفضل رجاءً
    اخر تعديل كان بواسطة » ألوان القلب في يوم » 16-11-2012 عند الساعة » 19:31

  5. #4

    أهلين فيكِ أختي،

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

    البرنامج المحاسبي الموجود على السيرفر سيقدم خدمات بالشكل التالي:
    1) يستقبل نوع العملية المحاسبية عن طريق الشبكة.
    2) يستقبل البيانات التي سيجري عليها العملية المحاسبية عن طريق الشبكة أيضاً.
    3) يقوم بتنفيذ تلك العملية على تلك البيانات ويعيد الناتج إلى الجهة التي طلبت إجراء تلك العملية.

    يجب أن تتوافر كل النوافذ (Windows Forms) في جهة الـ Client حتى يتم تحديد العمليات المحاسبية والقيود التي ستجرى عليها تلك العمليات،
    أما في جهة الـ Server فلا تحتاجين إلى أي واجهة رسومية.. حيث أن واجهات الـ Windows Forms لن يتم إرسالها عبر الشبكة.

    من هنا نستنتج أن التخاطب بين الـ Clients والـ Server هو من أهم الخطوات التي يجب التركيز عليها.

    أضع بعض الخطوات التي ستحتاجين إليها لتنظيم هذا التخاطب:

    أولاً، عليكِ إحصاء وحصر العمليات المحاسبية التي تودين القيام بها،

    ثانياً، عليكِ تحديد طريقة إرسال البيانات بين الـ Clients والـ Server.. هنا بإمكانك كتابة Serializable Class يحتوي على التركيب (Structure) الذي تحتاجينه وتستخدميه في عملية التراسل..
    أيضاً (وهو الخيار الأفضل) بإمكانك استخدام SOAP أو حتىى XML-عادي في عملية التراسل هذه.

    ثالثاً، عليكِ تحديد طريقة قراءة الـ Server لتلك البيانات المرسلة والقيام باللازم من عمليات محاسبية.

    رابعاً، إرسال الرد من الـ Server للـ Client بعد إتمام العملية.. أيضاً بإمكانك إرسال الرد بنفس الطريقة التي اخترتها في النقطة الثانية.

    إذا انتهيتِ مما سبق، سيسهل عليك المتابعة..
    .
    .

    بصراحة ليس لدي تصور واسع عن برامج المحاسبة.. فهل تحتاجين إلى ربط بقواعد البيانات؟
    لكني أعطيكِ حلاً من منظور برمجي بحت.

  6. #5
    ما ذكره أخي Diamond mas صحيح 100% ،لكن بإمكانك صنع مثل هكذا برنامج بأكثر من طريقة ،ولكل طريقة سلبيات وإيجابيات ،وتتفاوت الطرق بسهولة التطبيق وصعوبتها،طبعا السبب هو لوجود تقنيات كثيرة ،أنا أتمنى أن تكتبي جميع التقنيات التي بإمكانك استخدامها حتى يسهل علي صياغة جواب مناسب لك ،وهل هناك تقنيات محددة من قبل المشرفين على مشروع التخرج (عادة يضعون أسماء التقنيات الواجب استخدمها)

    شكرا
    اخر تعديل كان بواسطة » sun1 في يوم » 17-11-2012 عند الساعة » 09:01
    [SIGPIC][/SIGPIC]

  7. #6

    السلام عليكم ورحمة الله وبركاته

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


    كلامك صحيح انه هنالك عدة تقنيات ولكل تقنيه سلبياتها وايجابياتهاوالحمدلله المشرفين الى الان لم يقيدونا بتقنيه معينه لاستخدامهالكن نحن اخترنا التقنيه الاكثر خبره وتعامل معها لبناء البرنامج بحيثsql server as adatabase....&& .NET C# (windows form cation)ولكي تكون الصوره واضحه ليست لدي خبره كافيه في مجال الNetwork من حيث ربط وعمل الاجهزه مع بعضها البعض لذلك سأشرج لكم فكرة المشروع رجايئةً منكم توجيهي :مشروعي هو برنامج محاسبه يقوم يهتم بعدة عمليات يستطيع مثل ادخال القيود اليوميه..تنظيم الاصناف وانواعها واضافة اصناف اخرى اذا احتجنا..انشاء فواتير سواء كان فواتير مبيعات اومشتريات ادارة حركة الصندوق اليوميه والبنك وغيرها من العمليات المتعلقه بالمحاسبهعلى هذا الاساس يكون عندنا نوعين من المستخدمين المحاسب والadmin الذي يقوم اعطاء الصلاحيات لكل محاسب واضافة محاسبين جددفبالدايه كنت اريده ان اكونه لشركه حيث ان هذه الشركه يكون لها عدة فروع ولها فرع ريئسي حيث انه يطبق بينهم مفهوم client server... لكن وجدت انها ستكون معقده اكثر خصوصا انه لايوجد لدي خبره كايفه بهالمشروعفوجدت ان اجعله يخضع لمفهوم ال LAN network ززحيث انه هذه الشركه تكون مرتبطه مع بعضها البعض بLANعلى هذا الاساس بنية البرنامج ستكون:1)يكون لدي data base محمله بجهاز واحد وجميع الاجهزه الاخرى تعمل عملية قراءه/كتابه الى هذه الdata base لكن لدي عدة استفسارات هنا حيث انه كيف ستعلم بقية الاجهزه مسار الجهاز الذي يوجد فيه الD.B وهل سيشكل overhead واذا اضطررنا الى نقلها الى مكان آخر لحصول ضرر او اي تغيير آخرالشي الثاني هل اجعل Amin قادر على انشاء محاسين جدد او عملية انشاء المحاسبين تكون بوقت التثبيت لانه لابد لكل محاسب اسم مستخدم وكلمة مرور معينه هنا مشكلها كنت اريد ان يكون اي محاسب قادر على الولوج على قاعدة البيانات باستخدام اسمه وكلمة مروره من اي جهاز في الLAN....!!قد يكون شرحي لس واضح بالدرجه الكافيه لان ليس لدي نظره كافيه عالnetwork... لذا تقدموا باي استفسار

  8. #7
    attachment


    وعليكم السلام. ردك واضح.
    طبعا هناك عدة أمور أريد أن أوضحها لك.

    فكرة عن الNetwork Programming : هو بناء تطبيق شبكي مع التركيز على التفاصيل المتعلقة بالبنية التحتية لهكذا برامج ، هذا كتاب قرأته أنا ومفيد جدا:ولا أنصحك باتخاذ هذا الطريق لأنه سيأخذ منك وقت وجهد كبيرين جدا.

    البنية الأفضل لبرنامجك هي : Service-oriented architecture أو (SOA) ، التي هي باختصار : بناء مجموعة من ال Services ، ووضعها في Server ، وعندها بإمكان أي Client أن يتصل بها ويستخدمها. هنا شرح عن هذه المعمارية:. (طبعا لا تختلط عليكي الأمور بين بنية ال Client/Server وال SOA ، هنا التوضيح smile

    الآن في حالة مشروعك:
    1-ما هي ال Services ؟
    هي ال Functional Requirements لل(سوفت وير) المراد صنعه ،أي أي شيء يقوم السوفت وير بفعله للمستخدم.أمثلة:
    سيرفس لإدخال قيد جديد.
    سيرفس لحذف قيد موجود.
    سيرفس لطلب جميع القيود.
    سيرفس لطلب فاتورة بيع رقم ****.
    إلخ....

    2-من هم ال Clients ؟
    أحد أهم ميزات بنية الSOA ،هي أنها Platform-Independent، أي بإمكان أي تطبيق على .net ،أو تطبيق جافا ،أو تطبيق على نظام لينوكس أو يونكس ،أو تطبيقات iOS أو Android ، أن تتحدث وتطلب من هذه ال Services . وحسب شرحك الClient هو تطبيق Windows Form ، وبإمكانك مستقبلا إذا أردتي من المشروع أن يتطور بناء تطبيقات لأي من Platforms التي ذكرتها.

    3-ما هو ال Server الواجب استخدامه ؟
    يعتمد جواب هذا السؤال على جواب السؤال 4 ، لأن لكل تقنية سيرفر بإمكانك تحميله عليه.

    4-كيف أصنع أو أنشئ Services ؟
    هناك عدة تقنيات:
    1-التقنية التي ذكرها أخي Diamond mas في بناء ال Web Services ،يُقال عنها ASMX ، وهي طريقة قديمة ،أظن انه تم الاستغناء عن تطويرها في ال(dot NET 3.0) او ال(dot NET 3.5) .

    2-تقنية ال WCF :هي جاءت لتحل محل ال ASMX ، وهي التي أنصحك باستخدامها.

    3-Python Web Services : بإمكانك استخدام لغة بايثون في إنشاء Services .

    إلخ من التقنيات المختلفة لكن الصراحة هذه التقنيات الوحيدة التي عملت بها.


    إذا النصيحة هي استخدام الWCF لبناء ال Services smile

    في التعليق الثاني سأحاول أن أشرح قليلا عن هذه التقنية وأسهل عليكي عملية تعلمها إن شاء الله.
    اخر تعديل كان بواسطة » Senya Phoenixia في يوم » 21-11-2012 عند الساعة » 10:09

  9. #8
    attachment


    إذا ال WCF هي طريقة لبناء Services ، كبداية سأنصحك ب:

    1-هذا الكتاب ، اقرأي ولو الفصول ال3 الأوائل منه . (ابحثي عنه كتحميل مجاني وإن لم تجديه أرسلي لي رسالة أرسله لك).

    2-سلسلة من الفيديوهات :
    و
    و
    و
    و
    و
    3-حاولي أن تبدأي رحلتك مع هذه القناة (وهي التي أخذت منها الفديوهات السابقة) :4-شاهدي فيديوهات الفقرة المجانية Programming Services ، في هذا الموقع : (ضروري).

    الآن بخصوص ال Hosting لهذه ال Services فهناك طرق عديدة بإمكانك الاطلاع على هذا الرابط :
    بعدها إن شاء الله ستكونين قادرة على استخدام ال WCF لبناء مشروعك.

    صراحة مع كل هذا الشرح إلا أنني لا أفضل هذا الخيار ، لكن هذه التقنية رائعة وأظن أنه من المفيد أن تتعلميها لتوسيع مجال معرفتك ،ولو كنت مكانك لاخترت إما بناء تطبيق ويب خصوصا أن معظم التطبيقات الآن تأخد منحى الويب ، أو استخدام تقنية اسمها ASP.net Web API وهي لبناء HTTP services (طبعا هي تندرج تحت إطار بناء ما يسمى RESTful Web services).

    أتمنى ان تعذروني على أخطائي وسوء ترتيبي لكتابتي
    اخر تعديل كان بواسطة » Senya Phoenixia في يوم » 21-11-2012 عند الساعة » 10:09

  10. #9

    )يكون لدي data base محمله بجهاز واحد وجميع الاجهزه الاخرى تعمل عملية قراءه/كتابه الى هذه الdata base لكن لدي عدة استفسارات هنا حيث انه كيف ستعلم بقية الاجهزه مسار الجهاز الذي يوجد فيه الD.B
    لا يجب أن تتصل الأجهزة بقواعد البيانات فهي تحتاج إلى الاتصال بالـ server فقط.. فالجهاز الوحيد الذي سيتصل بقواعد البيانات هو الـ Server نفسه فلا تقلقي من هذه الناحية.
    .
    .

    أنا أؤيد كلامك أخي فيما قلته.. وأشكرك على التصحيح gooood
    أنا لم أستخدم الـ ASMX ولا الـ WCF من قبل.. لكني أعرف مبدأ عمل الـ Web Services بشكل عام والـ SOAP بشكل خاص..
    وأظن أنه سيكون من الممتع قراءة وتعلم الـ REST والـ WCF smile
    اخر تعديل كان بواسطة » Diamond mas في يوم » 18-11-2012 عند الساعة » 11:54

  11. #10

    السلام عليكم ورحمة الله وبركاته

    مساء الخير ...أولاً أختي ترسل لكما أخوي الكريمان جزيل الشكر على مساعدتها وشرحكما الذي أفادها كثيراً

    ثانياً

    بالنسبه للاقتراحات التي قدمها اخوي Sun 1 جيده وفعاله وجاري دراستها

    انا لااريد ان استخدم Server لااني لاادري اذا كانت الجامعه وقت التنفيذ ستعطيني مساحه من السيرفر الموجود لديهم او لأ ..فقد سبق وكان هناك مشاريع اعتمدت عالسيرفر ورفضت ..

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

    في سيء بالنسبه للكتاب بحثت عن تحميله مجاني لم اجد ممكن اخوي
    Sun1 تدلني ع موقع لتحميله مجاناً ...ولكم جزيل الشكر ^_^


  12. #11
    أنا أؤيد كلامك أخي sun1 فيما قلته.. وأشكرك على التصحيح
    أنا لم أستخدم الـ ASMX ولا الـ WCF من قبل.. لكني أعرف مبدأ عمل الـ Web Services بشكل عام والـ SOAP بشكل خاص..
    وأظن أنه سيكون من الممتع قراءة وتعلم الـ REST والـ WCF
    العفو Diamond mas

    بالنسبة للServer فالمقصود هنا هو الServer من الناحية البرمجية وليس الفيزيائية ،وعموما أي جهاز بإمكانه يكون سيرفر،وموضروري تستخدمي سيرفر الجامعة ،يعني انتي اللي رح تساويه هو التالي:
    1-مشروعك رح يتطبق على لاب توبين أو أكثر ، بحيث واحد من الأجهزة رح يحوي قاعدة البيانات والServices اللي انتي صنعتيهم .
    2-الأجهزة التانية بتحتوي على التطبيق اللي بيتصل بهدول ال Services .
    3-مشروعك رح يكون على شبكة LAN ، مشان هيك وبشكل سهل خدي الIP للاب توب اللي عليه الServices والDB ،وخلي باقي الأجهزة يتصلو فيه.

    أهم شي خلصي من ال Services واعمليلهم Host ،وانا عطيتك طرق ال Host ،اختاري الاسهل منهم وبظن انه Managed Windows Serviceهو المكان الافضل بالحالة تبعك.

    drawing3e

    بالنسبة للكتاب هاد الرابط تبعه:

  13. #12
    بالنسبة لتساؤلاتك :

    كيف ستعلم بقية الاجهزه مسار الجهاز الذي يوجد فيه الD.B
    اول شي جهاز السيرفر أكيد اله IP وإله اسم ، مثال :
    IP:192.168.0.100
    Name:MyCompanyServer
    طبعا الاسم انتي اختاريه وحدديه، هلأ لما يشتغل برنامج الClient خليه يبحث عن الجهاز او السيرفر اللي عنوانه192.168.0.100 ،او اللي اسمه MyCompanyServer ،اذا ما كان موجود بتطالعي رسالة للمستخدم انه السيرفر غير متواجد حاليا.

    وهل سيشكل overhead
    overhead من شو؟ كل شغلة موجودة قد تسبب هذه المشكلة في حال تم استخدامها او تطبيقها بطريقة شبه خاطئة. هلأ بدي اعطيكي نصيحة ،حاولي قدر الامكان اذا حسنتي تنقلي العمليات الحسابية الضخمة للClient بيكون افضل، يعني اللي بقصده لا تخلي كتير عمليات عالسيرفر ،هاد الشي صعب وسهل تحديده .
    اقرأي هاد السؤال :
    اذا اضطررنا الى نقلها الى مكان آخر لحصول ضرر او اي تغيير
    بالSql server لازم تبرمجيه انه يعمل Backup بفترات محددة ،ممكن كل يوم، وبالتالي النسخة الأخير هي التي تبقى وبتاخديها وين ما بدك.

    هل اجعل Amin قادر على انشاء محاسين جدد او عملية انشاء المحاسبين تكون بوقت التثبيت لانه لابد لكل محاسب اسم مستخدم وكلمة مرور معينه هنا مشكلها كنت اريد ان يكون اي محاسب قادر على الولوج على قاعدة البيانات باستخدام اسمه وكلمة مروره من اي جهاز في الLAN
    لا خلي الأدمن هو اللي يدخل أسماء المستخدمين وكلمات المرور ، طبعا في كتير حلول ،وكل حل لمشكلة معينة ،لنفرض واحد اخد كلمة السر للمحاسب رقم 1 ،شو رح يصير؟؟
    بهالحالة لازم وقت الأدمن يدخل اسم المحاسب وكلمة المرور يدخل معه IP الجهاز لهاد المحاسب ، حتى ما يتمكن أي جهاز اخر دخل على الLAN بطريقة غير شرعية انه يدخل باسم هداك المحاسب ،وبإمكانك زيادة الأمان بحيث تخلي أغلب العمليات على قاعدة البيانات هي قراءة فقط ،وعمليات الكتابة والحذف خليها محدودة قدر الإمكان على الجداول عموما والجداول المهمة خصوصا.
    الأمان والسرية الها كتير طرق وحلول، الصراحة هاد اللي بعرفه .
    بالتوفيق

  14. #13
    السلام عليكم ورحمة الله وبركاته

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

  15. #14

  16. #15
    مرحبا أخي ...

    الحقيقة أن الرابط اللى أرسلته على 4shared
    مارضى يحمل منه لانه طلب عضويه وهى ليست مشتركة فإذا لم يكن لديك مانع أن ترفعه على مكان آخر

  17. #16

  18. #17

بيانات عن الموضوع

الأعضاء الذين يشاهدون هذا الموضوع

عدد زوار الموضوع الآن 1 . (0 عضو و 1 ضيف)

المفضلات

collapse_40b قوانين المشاركة

  • غير مصرّح لك بنشر موضوع جديد
  • غير مصرّح بالرد على المواضيع
  • غير مصرّح لك بإرفاق ملفات
  • غير مصرّح لك بتعديل مشاركاتك
  •  

مكسات على ايفون  مكسات على اندرويد  Rss  Facebook  Twitter