نمایش نتایج 1 تا 8 از 8

نام تاپیک: مشکل در دسترسی برنامه به پوشه در درایو C

  1. #1
    کاربر تازه وارد آواتار Imenam
    تاریخ عضویت
    خرداد 1389
    محل زندگی
    اصفهان
    پست
    54

    Question مشکل در دسترسی برنامه به پوشه در درایو C

    با سلام
    یه برنامه نوشتم با سی شارپ و بانک sql----- وقتی رو درایو C(درایو ویندوز) نصب می کنم برنامه به دلیل محدودیت دسترسی، با بانک اطلاعاتی ارتباط برقرار نمی کنه... در صورتی که تمامی تنظیمات UAC و Run as administrator را انجام دادم و حتی توی یوزر adminstrator ویندوز هم نصب کردم ولی باز مشکل داره. وقتی روی درایو دیگه ای نصب می کنم به طور کامل اجرا میشه و با بانک ارتباط برقرار می کنه...
    جالب اینجاست که اگه تو پوشه program files نصب نکنم ، برنامه هیچ مشکلی نداره و به خوبی کار میکنه...
    به نظر اساتید مشکل کجاست و باید چطور حلش کنم؟
    یه راه حل خودم پیدا کردم و اینکه رو پوشه برنامه خودم که تو program files نصب شده کلیک راست می کنم و از قسمت security دسترسی رو روی full control بزارم ولی من میخوام وقتی برنامه نصب میشه دیگه نیاز به دستکاری تنظیمات توسط کاربر نباشه؟

    کمک؟؟؟؟

  2. #2
    کاربر دائمی
    تاریخ عضویت
    دی 1383
    محل زندگی
    اصفهان
    پست
    1,436

    نقل قول: مشکل در دسترسی برنامه به پوشه در درایو C

    اگه از SQL Server استفاده میکنید باید به کاربر NT AUTHORITY\NETWORK SERVICE اجازه دسترسی به پوشه مورد نظر رو بدین.این کار رو میتونید موقع نصب با اجرای فایل (calcs (Access Control List Editor و یا توسط #C و کلاس ها System.IO.Directory انجام بدین و البته مطمئن بشین که فایل های دیتابیس Read-Only نیستن.

  3. #3
    کاربر تازه وارد آواتار Imenam
    تاریخ عضویت
    خرداد 1389
    محل زندگی
    اصفهان
    پست
    54

    نقل قول: مشکل در دسترسی برنامه به پوشه در درایو C

    با اجرای فایل calcs (Access Control List Editor مشکل حل شد.

    به خاطر راهنماییتون ممنونم

  4. #4

    نقل قول: مشکل در دسترسی برنامه به پوشه در درایو C

    سلام منم دقیقا همین مشکل رو دارم شما چه مراحلی رو انجام دادین که مشکلتون حل شد اگه میشه بیشتر توضیح بدین

  5. #5
    کاربر تازه وارد آواتار Imenam
    تاریخ عضویت
    خرداد 1389
    محل زندگی
    اصفهان
    پست
    54

    نقل قول: مشکل در دسترسی برنامه به پوشه در درایو C

    با سلام
    من تو C#‎‎‎‎ با کد زیر دسترسی full control برای یوزر Everyone ایجاد میکنم و مشکلم حل میشه... شما هم امتحان کن ببینید کار میده یا نه؟
    به جای Application.StartupPath می تونید آدرس پوشه موردنظر خودتون رو بدید.


    try
    {
    string userName = "Everyone";

    FileSystemAccessRule accessRule = new FileSystemAccessRule(userName, FileSystemRights.FullControl,
    InheritanceFlags.ContainerInherit
    | InheritanceFlags.ObjectInherit, PropagationFlags.None, AccessControlType.Allow);

    DirectoryInfo directoryInfo = new DirectoryInfo(Application.StartupPath);
    DirectorySecurity directorySec = directoryInfo.GetAccessControl();
    directorySec.AddAccessRule(accessRule);
    directoryInfo.SetAccessControl(directorySec);

    }
    catch (Exception error)
    {

    MessageBox.Show(error.Message + "خطا در اجرای کد");

    }


  6. #6

    نقل قول: مشکل در دسترسی برنامه به پوشه در درایو C

    نقل قول نوشته شده توسط Imenam مشاهده تاپیک
    با سلام
    من تو C#‎‎‎‎‎‎ با کد زیر دسترسی full control برای یوزر Everyone ایجاد میکنم و مشکلم حل میشه... شما هم امتحان کن ببینید کار میده یا نه؟
    به جای Application.StartupPath می تونید آدرس پوشه موردنظر خودتون رو بدید.


    try
    {
    string userName = "Everyone";

    FileSystemAccessRule accessRule = new FileSystemAccessRule(userName, FileSystemRights.FullControl,
    InheritanceFlags.ContainerInherit
    | InheritanceFlags.ObjectInherit, PropagationFlags.None, AccessControlType.Allow);

    DirectoryInfo directoryInfo = new DirectoryInfo(Application.StartupPath);
    DirectorySecurity directorySec = directoryInfo.GetAccessControl();
    directorySec.AddAccessRule(accessRule);
    directoryInfo.SetAccessControl(directorySec);

    }
    catch (Exception error)
    {

    MessageBox.Show(error.Message + "خطا در اجرای کد");

    }

    این کد رو کجای برنامه باید نوشت؟؟؟؟

  7. #7

    نقل قول: مشکل در دسترسی برنامه به پوشه در درایو C

    نقل قول نوشته شده توسط parsa_7373 مشاهده تاپیک
    این کد رو کجای برنامه باید نوشت؟؟؟؟
    بهتره در Program.cs باشه

  8. #8

    نقل قول: مشکل در دسترسی برنامه به پوشه در درایو C

    نقل قول نوشته شده توسط Shadow_net مشاهده تاپیک
    بهتره در Program.cs باشه
    سلام من دارم یه برنامه ساختم براش اپدیت اتوماتیک گذاشتم ولی وقتی داخل درایو c نصب میکنم موقع اپدیت فایل اپدیت دانلود میشه ولی جایگزین فایل اصلی نمیشه درصورتی که وقتی داخل یه درایو دیگه نصب میکنم اوکیه
    که با خودم گفتم شاید بخاطر دسترسی درایو c باشه این کدی که شما گذاشتین رو امتحان کردم ولی کار نکرد ممنون میشم راهنمایی کنید
    یجا دیگه هم باز به همین مشکل برخوردم اینکه وقتی میخوام داخل برنامه از پایگاه داده فایل پشتیبان تهیه کنم رو درایو c اجازه نمیده و ارور میده

تاپیک های مشابه

  1. سوال: مشکل در دسترسی نداشتن پوشه shareشده در win7 از win8
    نوشته شده توسط delafarin در بخش تالار های مرتبط با شبکه و امنیت
    پاسخ: 1
    آخرین پست: سه شنبه 18 شهریور 1393, 09:38 صبح
  2. مشکل با ساخت برنامه ای مثل کلن درایو
    نوشته شده توسط benyamin_pc در بخش C#‎‎
    پاسخ: 20
    آخرین پست: یک شنبه 23 بهمن 1390, 16:25 عصر
  3. مشکل در دسترسی با پایگاه اکسس از داخل برنامه
    نوشته شده توسط Yama12 در بخش Access
    پاسخ: 8
    آخرین پست: شنبه 19 شهریور 1390, 08:54 صبح

قوانین ایجاد تاپیک در تالار

  • شما نمی توانید تاپیک جدید ایجاد کنید
  • شما نمی توانید به تاپیک ها پاسخ دهید
  • شما نمی توانید ضمیمه ارسال کنید
  • شما نمی توانید پاسخ هایتان را ویرایش کنید
  •