سؤال

أنا تلقي ردود الفعل من المطور أن "الطريقة الوحيدة visual basic (6) يمكن التعامل مع مسار UNC هو الخريطة إلى محرك الأقراص." هل هذا دقيق ؟ وإذا كان الأمر كذلك ، ما هي القضية الأساسية و هل هناك أي بدائل أخرى من تعيين محرك الأقراص ؟

هل كانت مفيدة؟

المحلول

هنا هو الطريقة التي يعمل.

Sub Main()

    Dim fs As New FileSystemObject ' Add Reference to Microsoft Scripting Runtime
    MsgBox fs.FileExists("\\server\folder\file.ext")

End Sub

نصائح أخرى

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

حتى المدرسة القديمة نوع من التعامل مع الملف لا يعمل:

Open "\\host\share\file.txt" For Input As #1
Dim sTmp
Line Input #1, sTmp
MsgBox sTmp
Close #1

أنا لا أعتقد أن هذا صحيح إذا كنت تستخدم Scripting.Runtime المكتبة.

تغذية rss VB بعض بنيات اللغة من أجل التعامل مع الملف.هذه هي الشر.لا تستخدم لهم.

في VB6 لا يمكنك استخدام CHDrive إلى مسار UNC.

منذ التطبيق.مسار إرجاع UNC محاولة استخدام ChDrive إلى هذا المسار ، ChDrive App.Path تسبب خطأ.

مايكروسوفت تقول "ChDrive لا يمكن التعامل مع مسارات UNC ، وبالتالي يثير خطأ عند التطبيق.مسار عوائد واحد".لمزيد من المعلومات, انظر http://msdn.microsoft.com/en-us/library/aa263345(v=مقابل 60).aspx

ما هو نوع ملف I/O الذي تفعله ؟ إذا كان النص ، انظر إلى استخدام FileSystemObject.

ولقد لوحظ VB6 UNC المسائل عند مجموعة من البنود التالية موجودة:

  • unc النقاط الخفية '$' مشاركة
  • اسم الملقم يتجاوز 8 أحرف أو غير القياسية حرف
  • جزء من الطريق طويلة بشكل استثنائي
  • الملقم 8.3 دعم تحولت من لأغراض الأداء

عادة 75 المسار خطأ في الوصول إلى الملف أو 54.في بعض الأحيان قد تكون ذات صلة إلى API مثل getshortfilename و getshortpathname على ما سبق UNC هو.

بخلاف ذلك أنها عمل عظيم...على تعيين مسار عادة سوف لا يكون لديك هذه القضايا ولكن تلك مرتق تعيينات محرك الأقراص قطع كثير من الأحيان يمكن أن تتغير في أي وقت مما تسبب في العديد من الدعم الصداع.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top