يؤدي تنزيل الملف باستخدام webclient إلى ظهور "تم رفض الوصول إلى المسار"

StackOverflow https://stackoverflow.com//questions/9676061

  •  12-12-2019
  •  | 
  •  

سؤال

لدي زر، بنقرة واحدة أريد تنزيل الملف على جهاز الكمبيوتر المحلي، وأنا أستخدم webclient.downloadfile()، ولكنني أتلقى الخطأ أدناه:

Access to the path 'C:\Windows\SysWOW64\inetsrv\ms-banner.gif' is denied.

أنا أستخدم الكود أدناه لتنزيل الملف:

WebClient client = new WebClient();
        client.DownloadFile(new Uri("http://www.contoso.com/library/homepage/images/ms-banner.gif"), "ms-banner.gif");

لا أفهم سبب جلب الملف من الخادم المحلي، كما ذكرت بالفعل عنوان uri البعيد

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

المحلول

إنه يجلب الملف من الخادم البعيد ولكنه يحاول حفظه في الدليل الحالي لأنك حددت اسم ملف نسبي فقط كوسيطة ثانية: "ms-banner.gif".ويبدو أن الحساب الذي تقوم بتشغيل تطبيقك من خلاله ليس لديه إذن بالكتابة إلى دليل العمل الحالي الذي يحدث C:\Windows\SysWOW64\inetsrv.

لذلك لديك في الأساس احتمالين:

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

نصائح أخرى

contoso.com يعيد توجيه إلى Microsoft.com ... المسار الذي لديك هناك في عنوان URL غير موجود ولن تكون قادرا على تنزيله.لست متأكدا من السبب في أنه يحاول الذهاب إلى جهازك المحلي، ولكن هل جربت بعض صورة أخرى على موقع آخر؟مثل http://i.cdn.turner.com / cnn / ne / img / 3.0 / global / hder / hdr-main.gif على سبيل المثال؟

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