PDA

View Full Version : سوال: مشکل در دسترسی به فایل های خود نرم افزار وقتی که در programfiles نصب میشود! (win7)



ahmad.khaliq
چهارشنبه 24 فروردین 1390, 02:10 صبح
سلام!
فکر کنم عنوان کامل و واضح بود!

من یه برنامه نوشتم که اگر کاربر، در داخل شاخه progra,files ویندوز سون نصبش کنه، برنامه نمیتونه به فایل های خودش دسترسی داشته باشه و خطای cannaot access file میده.

اما اگر در درایو های دیگه کامپیوترش نصب کنه، مشکلی نداره و درست عمل میکنه.

لطفا بفرمایید چطور میشه در ویندوز سون (و احتمالا ویستا) طوری برنامه رو نوشت که به اگر در programfiles نصب شد، به فایل های خودش دسترسی داشته باشه. مثلا اگر یک فایل تکست در کنارش هست که میخواد چیزی توش ذخیره کنه به مشکل نخوره.



ممنون

Felony
چهارشنبه 24 فروردین 1390, 07:15 صبح
شما به عنوان برنامه نویس اجازه نوشتن اطلاعات برنامه در ProgramFiles رو ندارید ، در ویندوز XP و قبلتر از اون این سخت گیری اعمال نشده بود و مایکروسافت این موضوع رو فقط در حد یک توصیه یاداوری کرده بود ولی در ویندوز ویستا و 7 این محدودیت از حالت توصیه خارج شد و به یک اصل تبدیل شد ؛ پوشه ProgramData که به صورت مخفی هست برای همین مورد در نظر گرفته شده ، برنامتون باید تنظیمات و دیگر اطلاعات مورد نیازش رو در این پوشه ذخیره کنه نه ProgramFiles ، اگر اصرار به نوشتن در ProgramFiles دارید باید برنامتون دسترسی Admin داشته باشه که میتونید با اضافه کردن Manifest به فایل اجرایی برنامتون این دسترسی رو برای برنامتون درخواست کنید .

ahmad.khaliq
چهارشنبه 24 فروردین 1390, 12:51 عصر
شما به عنوان برنامه نویس اجازه نوشتن اطلاعات برنامه در ProgramFiles رو ندارید ، در ویندوز XP و قبلتر از اون این سخت گیری اعمال نشده بود و مایکروسافت این موضوع رو فقط در حد یک توصیه یاداوری کرده بود ولی در ویندوز ویستا و 7 این محدودیت از حالت توصیه خارج شد و به یک اصل تبدیل شد ؛ پوشه ProgramData که به صورت مخفی هست برای همین مورد در نظر گرفته شده ، برنامتون باید تنظیمات و دیگر اطلاعات مورد نیازش رو در این پوشه ذخیره کنه نه ProgramFiles ، اگر اصرار به نوشتن در ProgramFiles دارید باید برنامتون دسترسی Admin داشته باشه که میتونید با اضافه کردن Manifest به فایل اجرایی برنامتون این دسترسی رو برای برنامتون درخواست کنید .

سلام. ممنون از توضیحاتتون.
میشه بفرمایید از mainfest رو از کجا باید تهیه کنم؟ آیا باید بابتش هزینه ای پرداخت بشه؟ کلا چطوری به برنامه اضافه میشه.
ممنون

Felony
چهارشنبه 24 فروردین 1390, 14:22 عصر
خیر ، خریدنی نیست ، یک فایل هست که به فایل اجرایی الحاق میشه و مشخصات برنامه و یکسری دسترسی های لازم برای برنامه رو داخل خودش نگهداری میکنه و شما باید درش تغییر ایجا کنید ؛ قبلا در موردش بحث شده همین کلمه رو جست و جو کنید .

ahmad.khaliq
چهارشنبه 24 فروردین 1390, 16:33 عصر
خیر ، خریدنی نیست ، یک فایل هست که به فایل اجرایی الحاق میشه و مشخصات برنامه و یکسری دسترسی های لازم برای برنامه رو داخل خودش نگهداری میکنه و شما باید درش تغییر ایجا کنید ؛ قبلا در موردش بحث شده همین کلمه رو جست و جو کنید .

سلام
جستجو کردم! متاسفانه چیزی پیدا نشد. در گوگل هم گشتم، به نتیجه مطلوب نرسید. تا جایی که من متوجه شدم این فایل دارای محتویاتی از جنس xml هست. اما نمیدونم چطور میشه به برنامه اضافه کرد. و یک سوال دیگه اینکه اگر این فایل به برنامه اضافه بشه، آیا فقط در ویندوز سون و ویستا کار میکنه؟ دیگه توی اکس پی کار نمیکنه؟

Felony
چهارشنبه 24 فروردین 1390, 17:29 عصر
http://msdn.microsoft.com/en-us/library/bb756929.aspx

ahmad.khaliq
چهارشنبه 24 فروردین 1390, 17:56 عصر
http://msdn.microsoft.com/en-us/library/bb756929.aspx

ممنون. موفق شدم ریسورس برنامه رو ویرایش کنم و در قسمت requestedExecutionLevel مقدار ادمینیستریتو رو بنویسیم. امام متاسفانه به یک مشکل بزرگتر برخورد کردم!!!! وقتی برنامه اجرا میشه، ویندوز از کاربر میپرسه که "آیا تمایل دارید این نرم افزار با دسترسی ادمین اجرا شود؟" :ناراحت:
میشه کاری کرد این سوال رو نپرسه؟

Felony
چهارشنبه 24 فروردین 1390, 18:14 عصر
خیر ، همون اول هم گفتم که برنامه باید درخواست دسترسی Admin بکنه ، برنامه تا زمانی که کاربر بهش اجازه اجرا به صورت Admin رو نده نمیتونه با دسترسی Admin اجرا بشه .

اگر هم راهی داشته باشه من اطلاع ندارم .