![]() |
|
بخصوص برمجة عميل وخادم - نسخة قابلة للطباعة +- delphi4arab منتديات دلفي للعرب (https://delphi4arab.net/forum) +-- قسم : منتديات دلفي للعرب التعليمية (https://delphi4arab.net/forum/forumdisplay.php?fid=3) +--- قسم : سؤال و جواب حول دلفي (https://delphi4arab.net/forum/forumdisplay.php?fid=15) +--- الموضوع : بخصوص برمجة عميل وخادم (/showthread.php?tid=3363) الصفحات:
1
2
|
بخصوص برمجة عميل وخادم - mahboub2011 - 20-08-2011 السلام عليكم ورحمة الله تعالى وبركاته سوال بخصوص socket عندما اقوم ببرمجة عميل وخادم . عندما ادخل الايبي الافتراضي 127.0.0.1 فان الاتصال يتم وعندما ادخل الايبي المحلي 192.168.1.50 الاتصال يتم ايضا ولكن عندما ادخل الايبي الحقيقي في الانترنت 41.101.51.11 متلا فان الاتصال لا يتم مع العلم ان التطبيق يكون على جهازي بخصوص برمجة عميل وخادم - محمد عبد العزيز - 20-08-2011 وعليكم السلام ورحمة الله عليك بالاطلاع ومراجعة بعض الشيئ عن الشبكات وكيف تعمل 41.101.51.11 ليس IP جهازك وانما جهاز أخر يمر اتصالك عبره راجع http://www.delphi4arab.net/forum/showpost.php?p=7878&postcount=29 بخصوص برمجة عميل وخادم - mahboub2011 - 25-08-2011 شكرا اخي ولكن هل هده المشكلة خاصة بفوري فقط ام جميع انواع الشبكات وكيف ادرج النوايبي في البرمجة يعني انا عندي نو ايبي فكيف اجعل البرنامج يتعامل معه بخصوص برمجة عميل وخادم - محمد عبد العزيز - 26-08-2011 الأمر متعلق بنوع اشتراك الاتصال بغض النظر عن مزود خدمة الانترنت fawri (ذكرته كمثال) أو غيره هناك اشتراك يوفر لك ip ثابت بثمن مرتفع عن اتصالك الحالي. راجع الوكالة التجارية لمزود الانرنت لديك بالنسبة لخدمة no-ip ومثيلاتها راجع موقعها فهو يزودك بكل ما تحتاج من معلومات بخصوص برمجة عميل وخادم - DAMAX2010 - 26-08-2011 السلام عليكم أنصحك باستعمال برنامج no-ip فهو يسهل ك عملية الاتصال بأيبي الانترنت تحياتي لك بخصوص برمجة عميل وخادم - achi - 27-08-2011 السلام عليكم اسطيع مد يد العون فما ذا تريد بالضبط و سا قوم بعمل البرنامج مع الشرح مع العلم للاتصال يجب ان تجرب على جهازين مثال انت Client و الجهاز الاخر Server سهل جدا اما اذ اردت ان تكون Server الاخر ِClient اي بمعنى اخر reverse connection يجب ان تكون لك ip ثابت او تقوم بالحصول على ip ثابت من عدة مواقع اشهرها no-ip.org اما عن سؤالك انت تجرب ب127.0.0.1 Localhost كل شئ يكو ن تمام وعندما تقوم بادخال ip الذي تز دوك به الشركة يضهر خطا هذا صحيح يجب ان تجرب على جهازين مختلفين اذا كنت server والاخر client يجب ان يضع هو ip الخا صة بك لكي يتم الاتصال والعكس صحيح هذا اذا كان Modem ليس ٌrouter و اذا كان مودموهrouter يجب reverse connection...لقد تعبت كثيرا لفهم ذلك ولقد ساعدني صديق من استراليا كثيرا ولن ابخل احد في العلم لفعل الخير و التبصر و شكرا عذرا على التعبير التعبير اللغوي السئ فانا افضل الانجليزية في الشرح وانت تعلم هذا ممنوع في النتدى و انا احترم القوانين بخصوص برمجة عميل وخادم - mahboub2011 - 30-08-2011 b.m.abdelaziz كتب :بالنسبة لخدمة no-ip ومثيلاتها راجع موقعها فهو يزودك بكل ما تحتاج من معلوماتشكا اخي الكريم في الحقيقة انا استعمل النو ايبي ولكن استفسار عن كيفية جعل البرنامج يتاقلم معه هل سيعتبره متل الايبي ام يجب ادخال كود خاص له damax2010 كتب :برنامج no-ip فهو يسهل ك عملية الاتصال بأيبي الانترنتتحياتي لك اخي الكريم انا فعلا استعمل النو ايبي ولكن السوال عن كيفية جعل الدلفي يفهم النو ايبي فانا لما جربت النو ايبي لم يحدت اتصال في جهازي مع العلم ان السرفر والكليون كلهم على جهازي achi كتب :جزاك الله خيرا على هده المعلومات القيمة بخصوص برمجة عميل وخادم - justnick - 18-09-2011 السلام عليكم ورحمة الله وبركاته تحية طيبة وبعد لجعل تطبيقك يتاقلم مع ال no.ip كل ما عليك هو تحويل ال host الى ip Address داخل تطبيقك كيف يتم هذا؟؟ عن طريق الوحدة winsock كود : uses winsock;يوجد بها Function تقوم بتحويل اسم الhost الى ip Address وهى GetHostByName كيف الاستخدام ؟؟ نقوم بانشاء Function كالاتى: كود : function GetHostByNameDelphi4Arab(hostname: string): string;
//هذا المثال من كتاب The Tomes of Delphi Basic 32-bit Communications Programming
var
WSAData : TWSAData;
Hostent : PHostent;
ipaddress : String;
h_addr : PChar;
begin
if WSAStartUp($101, WSAData) = 0 then
try
if inet_addr(PChar(HostName)) = INADDR_NONE then
begin
Hostent := gethostbyname(PChar(HostName));
if Hostent <> NIL then
begin
Move(Hostent^.h_addr_list^, h_addr, SizeOf(Hostent^.h_addr_list^));
ipaddress:=Format('%d.%d.%d.%d',[byte(h_addr[0]),byte(h_addr[1]),byte(h_addr[2]),byte(h_addr[3])]);
end;
end;
finally
WSACleanUp;
end;
Result:=ipaddress;
end;كود : ShowMessage(GetHostByNameDelphi4Arab('delphi4arab.net'));استبدلdelphi4arab.net باسم الهوست الذى تريد 'delphi4arab.no.ip' هذا طبعا على سبيل المثال بخصوص برمجة عميل وخادم - S.M.Abdelhak - 24-09-2011 justnick كتب :السلام عليكم ورحمة الله وبركاته السلام عليكم لست بحاجة للنزول الى مستوى WinSock بدل ClientSocket.Address استخدم ClienSocket.Host عن طريق مكونات clientsocket بخصوص برمجة عميل وخادم - justnick - 25-09-2011 فى انتظار النتيجة |