تقييم الموضوع :
  • 0 أصوات - بمعدل 0
  • 1
  • 2
  • 3
  • 4
  • 5
معرفة بلدة مستخدم الحاسوب
#1
شكرا لكم
الرد }}}}
تم الشكر بواسطة:
#2
السلام عليكم...

إذا كنت تقصد معرفة البلد الموجود به الحاسوب عند اتصاله بالإنترنت فأعتقد أنه يتم من خلال الـ IP address لكني لا أملك الكود الآن.

أما إذا كنت تريد معرفة البلد حسب الإعدادات الإقليمية للنظام فيمكن ذلك باستعمال الدالة GetLocaleInfo (من دوال API) و لتجربة ذلك:

* ضع على الـ Form عدد 8 مربعات نص، و اترك أسماءها كما هي: TextBox1 إلى TextBox8 (للتجربة فقط).

* ضع التصريحات التالية في بداية الـ Class:

كود :
Private Declare Function GetLocaleInfo Lib "kernel32" Alias "GetLocaleInfoA" (ByVal Locale As Integer, ByVal LCType As Integer, ByVal lpLCData As String, ByVal cchData As Integer) As Integer

    Private Const LOCALE_SLANGUAGE = &H2        ' اسم اللغة كاملاً
    Private Const LOCALE_SENGLANGUAGE = &H1001  ' اسم اللغة كاملاً بالإنجليزي
    Private Const LOCALE_SABBREVLANGNAME = &H3  ' رمز اختصار اللغة
    Private Const LOCALE_SNATIVELANGNAME = &H4  ' الاسم المحلي أو القطري للغة

    Private Const LOCALE_SCOUNTRY = &H6         ' اسم البلد كاملاً
    Private Const LOCALE_SENGCOUNTRY = &H1002   ' اسم البلد كاملاً بالإنجليزي
    Private Const LOCALE_SABBREVCTRYNAME = &H7  ' رمز اختصار اسم البلد
    Private Const LOCALE_SNATIVECTRYNAME = &H8  ' الاسم المحلي أو القطري للبلد

    Private Const LOCALE_SYSTEM_DEFAULT = &H800
    Private Const LOCALE_USER_DEFAULT = &H400

* في الحدث Load للـ Form ضع الكود التالي:

كود :
Dim MyLocale As Integer = LOCALE_SYSTEM_DEFAULT
        Dim RetLen As Integer
        Dim Buffer As String

        ' اللغة:
        Buffer = StrDup(255, " ")
        RetLen = GetLocaleInfo(MyLocale, LOCALE_SLANGUAGE, Buffer, Buffer.Length)
        If RetLen <> 0 Then
            TextBox1.Text = Buffer.Substring(0, RetLen)
        End If

        Buffer = StrDup(255, " ")
        RetLen = GetLocaleInfo(MyLocale, LOCALE_SENGLANGUAGE, Buffer, Buffer.Length)
        If RetLen <> 0 Then
            TextBox2.Text = Buffer.Substring(0, RetLen)
        End If

        Buffer = StrDup(255, " ")
        RetLen = GetLocaleInfo(MyLocale, LOCALE_SABBREVLANGNAME, Buffer, Buffer.Length)
        If RetLen <> 0 Then
            TextBox3.Text = Buffer.Substring(0, RetLen)
        End If

        Buffer = StrDup(255, " ")
        RetLen = GetLocaleInfo(MyLocale, LOCALE_SNATIVELANGNAME, Buffer, Buffer.Length)
        If RetLen <> 0 Then
            TextBox4.Text = Buffer.Substring(0, RetLen)
        End If

        ' البلد:
        Buffer = StrDup(255, " ")
        RetLen = GetLocaleInfo(MyLocale, LOCALE_SCOUNTRY, Buffer, Buffer.Length)
        If RetLen <> 0 Then
            TextBox5.Text = Buffer.Substring(0, RetLen)
        End If

        Buffer = StrDup(255, " ")
        RetLen = GetLocaleInfo(MyLocale, LOCALE_SENGCOUNTRY, Buffer, Buffer.Length)
        If RetLen <> 0 Then
            TextBox6.Text = Buffer.Substring(0, RetLen)
        End If

        Buffer = StrDup(255, " ")
        RetLen = GetLocaleInfo(MyLocale, LOCALE_SABBREVCTRYNAME, Buffer, Buffer.Length)
        If RetLen <> 0 Then
            TextBox7.Text = Buffer.Substring(0, RetLen)
        End If

        Buffer = StrDup(255, " ")
        RetLen = GetLocaleInfo(MyLocale, LOCALE_SNATIVECTRYNAME, Buffer, Buffer.Length)
        If RetLen <> 0 Then
            TextBox8.Text = Buffer.Substring(0, RetLen)
        End If

* عند تشغيل البرنامج ستظهر في مربعات النص معلومات حسب قيمة البارامتر الثاني (LCType) للدالة.

* نرجو الاستفادة و السلام.
بِسْمِ اللهِ الرَّحْمَنِ الرَّحِيمِ ( وَ مَا تُقَدِّمُوا لِأَنفُسِكُم مِّنْ خَيْرٍ تَجِدُوهُ عِندَ اللهِ هُوَ خَيْراً وَ أَعْظَمَ أَجْراً ) صَدَقَ اللهُ الْعَظِيمُ
الرد }}}}
تم الشكر بواسطة: sooriaty03 , sherif khalid , kslawy , Mr.ILI , hoob computer , aftfm
#3
السلام عليكم ورحمة الله وبركاتة

يمكنك يا اخى الاطلاع على هذا الرابط

ستجد فية ما تريدة بالتحديد

http://www.codeproject.com/Articles/2836...untry-name

-----------------------
Software Developer

Microsoft Partner

الرد }}}}
تم الشكر بواسطة: sooriaty03 , kslawy , Mr.ILI , hoob computer , aftfm
#4
جزاكم الله خيراً ..........



تحياتي
الرد }}}}
تم الشكر بواسطة:


المواضيع المحتمل أن تكون متشابهة .
الموضوع : الكاتب الردود : المشاهدات : آخر رد
  [سؤال] تعديل اسم مستخدم قاعدة البيانات ( ايقاف و تفعيل المستخدم ) عماد البشبيشى 4 147 14-11-17, 02:29 PM
آخر رد: عماد البشبيشى
Photo [VB.NET] معرفة من لم يدفع في نظام الفواتير الشهرية ( مهم جدا) Rabeea Qbaha 13 455 02-11-17, 06:24 PM
آخر رد: محمود صالح
  [VB.NET] التحققمن تنصيب برامج معينه علي الحاسوب عبدالرحمن المكاوي 2 120 19-09-17, 12:22 PM
آخر رد: عبدالرحمن المكاوي
  كيفية معرفة رقم تم حذفه وسط ارقام متسلسلة تناسيم 11 370 21-08-17, 11:38 PM
آخر رد: محمود بكرى
  معرفة أسماء الأعمدة فى الجدول كرم ابوهشام 2 115 16-08-17, 02:03 AM
آخر رد: سعود الشامان
  [VB.NET] طلب كود معرفة TextBox النشطة waelalmsry75 4 181 08-08-17, 02:25 AM
آخر رد: waelalmsry75
  [VB.NET] طلب كود معرفة موضع مؤشر الماوس داخل التيكست بوكس waelalmsry75 7 294 07-08-17, 02:46 AM
آخر رد: waelalmsry75
  [VB.NET] كيفة معرفة اذا كان في فراغ في Textbox e-coder 3 159 04-08-17, 12:19 AM
آخر رد: سعود
  معرفة اذا كان الايميل مفتوح او لا هاوي1995 0 136 08-06-17, 09:16 AM
آخر رد: هاوي1995
  سؤال بخصوص التحكم بالمحرك عن طريق الحاسوب Basil Abdallah 1 176 16-05-17, 12:17 AM
آخر رد: محمود بكرى

التنقل السريع :


يقوم بقرائة الموضوع: بالاضافة الى ( 1 ) ضيف كريم