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

ما هو ال UNC

بدأه san978 في 9 مايو 2006 · 6 رد · 1,901 مشاهدة · في قواعد بيانات Microsoft Access
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

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

لقد قمت بعمل برنامج كامل على قواعد البيانات اكسس وعملت له صفحات وصول للبيانات والبرنامج على جهاز الكمبيوتر خاصتي عمل بكفاءة عظيمة وسلسة ولكن المشكلة عندما انقل البرنامج لجهاز اخر لا تعمل الصفحات لان امتداد الصفحات مقرونة بجهازي وخلال البحث تبين لي ان يجب ان اعمل الامتداد على uncuniversal naming convention (UNC

وبحثت كثيرا والجميع يقول نفس الكلام ولكن لا احد يقول كيف اعمل ال unc

مع الشكر الجزيل للجميع :blink: :wacko:

#2

اخي الفاضل

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

اتفاقية التسمية العالمية

Universal Naming Convention

(U-N-C)

تدعى هذه الطريقة بمشاركة الملفات على موقع معين كأن تكون مثلا شبكة داخلية او حتى موقع استضافة او حجز موقع به مساحة كافية لتخزين الملفات وشريطة ان يكون هذا الموقع الخاص بالاستضافة تتوفر به قبول جميع الملفات مثل ملفات الصور بجميع انواعها BMP GIF JPG او الملفات المضغوطه مثل RAR او ZIP او ملفات قواعد البيانات مثل MDB او DBF او الصفحات مثل HTM او HTML او ASP او ملفات الجافا سكربت JS . اضف الى ذلك قبول الموقع ( المشاركه ) سواء في الملفات او الاجهزه مثل الطابعات وغيرها اي انه يصبح كشيكة ولكن على نطاق واسع بحيث تستطيع ان تتصفح قاعدة بياناتك من خلال الصفحات التي قمت بعملها من اي مكان بعد الدخول سواء في الشبكة المحلية او على الانترنت

والذي يهمنا هنا في المقام الاول هو قاعدة البيانات MDB

فإذا اردت ان يصبح جهاز الكمبيوتر الخاص بك هو الخادم الرئيسي لهذه العملية فكل ما عليك هو احضار كرت شبكه مع جهاز HUB متعدد المخارج ( لا يقل عن ثمانية مخارج وسرعة النقل لا تقل فيه عن 100 ميقا بايت في الثانية ) اضف الى ذلك الاسلاك المراد ايصالها لجميع الاجهزة المرتبطه بهذا الخادم وبالطبع لابد من توفير عدد ثمانية كروت شبكه وتركيبها في الاجهزة الاخري ومن ثم تعريف هذه الاجهزة على جهاز الخادم من خلال منافذ IP بحيث يكون لكل جهاز IP مختلف ( يتم تغيير الارقام الاخيره فقط في العنوان ) .

عند الانتهاء من كل التركيبات والاجراءات يأتي الان دور تقسيم قاعدة البيانات بحيث تكون جميع الاجهزة محمل عليها صفحة قاعدة البيانات اما الخادم فتكون به القاعدة الاساسية لهذا عند التصفح او ادخال بيانات من خلال الصفحه في جمبع الاجهزة يتم تعبئتها في قاعدة البيانات الام في الخادم ( اشبه ما تكون بالمنتدى فترى اننا نكتب المشاركات هنا في هذه الصفحات ويتم تخزينها على قاعدة البيانات الموجوده في موقع الاستضافة )

اما اذا اردت ان تحجز موقع استضافة وتضع به الصفحات وقاعدة البيانات لكي يستطيع اي شخص ( له الصلاحيه التي تحددها له ) بإن يقوم بإدخال معلومات لهذه القاعدة فلك حرية الاختيار بين الدفع والحصول على خدمة او الحصول على مساحة مجانية محدوده تضع بها صفحاتك وقاعدة بياناتك مثل موقع http://www.geocities.com على الياهو YAHOO فهذا الموقع به مساحة مجانية حوالي 15 ميقا بايت ويدعم الملفات MDB والصفحات HTML

للفائدة العامة :

لمعرفة مسار محركات الاقراص على الشبكه قم بعمل التالي

1. انشىء وحدة نمطية جديده وضع بها هذا الكود

Option Explicit
'  API هذه تمثل الاخطاء العائدة من الـ
Public Const ERROR_BAD_DEVICE = 1200&
Public Const ERROR_CONNECTION_UNAVAIL = 1201&
Public Const ERROR_EXTENDED_ERROR = 1208&
Public Const ERROR_MORE_DATA = 234
Public Const ERROR_NOT_SUPPORTED = 50&
Public Const ERROR_NO_NET_OR_BAD_PATH = 1203&
Public Const ERROR_NO_NETWORK = 1222&
Public Const ERROR_NOT_CONNECTED = 2250&
Public Const NO_ERROR = 0

'  للاعلان عن محركات الاقراص التي ستظهر API هذا تصريح الـ
Declare Function WNetGetConnection Lib "mpr.dll" Alias _
                 "WNetGetConnectionA" _
                 (ByVal lpszLocalName As String, _
                 ByVal lpszRemoteName As String, _
                 cbRemoteName As Long) As Long

'هذه الرسائل التي ستخبرنا عن الاخطاء و اسماء محركات الاقراص على الشبكة
Function GetUNCPath(strDriveLetter As String) As String
   On Local Error GoTo GetUNCPath_Err
   Dim Msg As String, lngReturn As Long
   Dim lpszLocalName As String
   Dim lpszRemoteName As String
   Dim cbRemoteName As Long
   lpszLocalName = strDriveLetter
   lpszRemoteName = String$(255, Chr$(32))
   cbRemoteName = Len(lpszRemoteName)
   lngReturn = WNetGetConnection(lpszLocalName, _
                                 lpszRemoteName, _
                                 cbRemoteName)
   Select Case lngReturn
      Case ERROR_BAD_DEVICE
         Msg = "Error: Bad Device"
      Case ERROR_CONNECTION_UNAVAIL
         Msg = "Error: Connection Un-Available"
      Case ERROR_EXTENDED_ERROR
         Msg = "Error: Extended Error"
      Case ERROR_MORE_DATA
         Msg = "Error: More Data"
      Case ERROR_NOT_SUPPORTED
         Msg = "Error: Feature not Supported"
      Case ERROR_NO_NET_OR_BAD_PATH
         Msg = "Error: No Network Available or Bad Path"
      Case ERROR_NO_NETWORK
         Msg = "Error: No Network Available"
      Case ERROR_NOT_CONNECTED
         Msg = "Error: Not Connected"
      Case NO_ERROR
         ' all is successful...
   End Select
   If Len(Msg) Then
      MsgBox Msg, vbInformation
   Else
      'العائد من الوظيفة السابقة UNC  عرض المسار في الرسالة من خلال الـ 
      MsgBox Left$(lpszRemoteName, cbRemoteName)
      GetUNCPath = Left$(lpszRemoteName, cbRemoteName)
   End If
GetUNCPath_End:
   Exit Function
GetUNCPath_Err:
   MsgBox Err.Description, vbInformation
   Resume GetUNCPath_End
End Function

ملاحظة هامة :

لتجربة هذه الوظيفة يجب ان تكون داخل الشبكه فهي لا تعمل على جهاز كمبيوتر شخصي بمفرده

للتجربه

1. بعد وضع هذا الكود في الوحدة النمطية اضغط على المفتاحين Ctrl + G في لوحة المقاتيح لتظهر لك اسفل الكود النافذة الفورية Immediate Window

2. اكتب هذا التعبير

?GetUNCPath("h:")

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

اختكم

زهره

#3

لك جزيل الشكر اخت زهرة

ولكن الموضوع اني عملت برنامج لشخص لديه شبكة انترانت محدودة بين المدن وجهازي ليس سيرفر ولا اريده سيرفر وانا لا اعرف اسماء محركات الاقراص لديه ومن خلال بحثي في الانترنت وجدت هذا الموضوع ولكني لا استوعبه جيدا

عنوان الموضوع على الانترنت هو

http://support.microsoft.com/?kbid=210050

وبارك الله فيك

#4

الى جميع الاخوة الكرام

لقد قمت بحمد الله حل المشكلة

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

#5

مع الاسف الشديد

بعد تجربة البرنامج بقية نفس المشكلة

ارجو من الاخوة المشرفين النظر للمشكلة وشكرا

#6

اخي الفاضل

اين تكمن المشكلة فأنت لم توضح شيء ليتم حلها

وعلى اقل تقدير ضع المثال او البرنامج الذي قمت بعمله او الخطوات التي قمت بعملها فلعلنا نساعدك بما نستطيع

#7

شكرا جزيلا على المعلومات القيمة

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