سؤال

لدي بعض الأسئلة ذات الصلة:

1) من الممكن جعل البرنامج تغيير نوع الملف جمعية ولكن فقط عندما يتم تشغيل ؟ هل ترى أي شيء خاطئ مع هذا السلوك ؟

2) الخيار الآخر الذي أراه هو السماح للمستخدمين تقرر فتح مع بلدي التطبيق أو استعادة الافتراضي جمعية ...شيء من هذا القبيل:"التقاط كل شيء .لالا الملفات" أو "استعادة .لالا جمعية".كيف يمكن أن أفعل هذا ؟ ماذا كنت تعتقد أن أفضل نهج ؟

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

المحلول

وفيما يتعلق ملف الجمعيات، لقد كتبت جوابا في وقت سابق أن <لأ href = على الأقل "https://stackoverflow.com/questions/212906/script-to-associate-an-extension-to-a-program# 212921 "> يغطي" كيف ".

وهذا ينبغي أن نشير بكم في الاتجاه الصحيح كيفية التعامل مع النسخ الاحتياطي والاستعادة. مع الوصول إلى التسجيل المباشر من خلال C #، لن تكون هناك حاجة لاستخدام الملفات ريج، لذلك أنت حر لإجراء نسخ احتياطي القيمة السابقة كيفما تشاء في التطبيق الخاص بك، وأيضا استعادته من هناك.

والسؤال الرئيسي هنا هو: <م> يجب قمت بتغيير ملف الجمعيات بشكل عشوائي؟ على الأقل يطلب من المستخدم مقدما سيكون من الواضح لزم الأمر (كما أشرت أيضا).

وعلاوة على ذلك، مستخدمي ويندوز فيستا مع UAC تمكين، أو المستخدمين غير متميز من إصدارات Windows الأخرى قد لا يكون الإذن المطلوب للتغيير ملف الجمعيات العالمية. قد يكون (الامم المتحدة) إجراء التثبيت من البرنامج المكان الوحيد الذي يمكن النجاح.

وتحرير

وكما هو مبين فرانسي Penov في جوابه ، هناك <م> هو وسيلة لتغيير ملف الجمعيات المحلية على أساس لكل مستخدم، حتى بالنسبة لغير المسؤولين (هذا هو السبب الأول تحدث عن "الرابطات العالمية" في الفقرة السابقة). وذكر أيضا ذكر لماذا الذهاب الى هناك ليس من المستحسن للغاية.

نصائح أخرى

يمكنك تنفيذ برنامج "على الطاير" ملفات تغيير بربط صغير قابل للتنفيذ مع هذا الملف عند بدء سوف تحقق إذا كان لديك التطبيق الرئيسي هو تشغيل تمرير اسم الملف أو إذا كان لا يعمل فإنه سوف تحتج "العادية" التطبيق المقترن.

والميزة الرئيسية لهذا النهج هو أن تحتاج إلى الوحل مع التسجيل مرة واحدة فقط.

أهم عيوب هذا النهج هي:

  • كنت في حاجة الى مساعد العملية
  • التطبيق الذي "يملك" هذه امتداد الملف يمكن الكشف عن التغيير وتقديم شكوى إلى المستخدم ، مما دفع "إصلاح" وبالتالي الحصول على لك من الصورة.

بدلا من ذلك, يمكنك تغيير اقتران الملف عند الرئيسية الخاصة بك بدء البرنامج.هذا العمل حتى المستخدمين غير المسؤولين.في حين اقترانات الملفات المخزنة في HKEY_CLASSES_ROOT, هناك خدعة صغيرة - HKCR هو في الواقع خريطة على حد سواء HKEY_LOCAL_MACHINE\SOFTWARE\Classes و HKEY_CURRENT_USER\SOFTWARE\Classes.وهكذا مؤقتا يمكنك تسجيل امتداد الملف للمستخدم الحالي في HKCU و "الظل" الأصلي جمعية من HKLM.

بالطبع أنصح ضد هذا النهج على الرغم من أنه يأخذ واحد فقط من تحطم الطائرة في التطبيق الخاص بك لجعل هذه الشراكة الدائمة منذ قليل جدا من التطبيقات يعرفون كيفية التعامل مع ملف الجمعيات في HKCU, وهناك احتمالات أنه سوف يكون غير قابل للاسترداد حالة الطلب الأصلي.

ومن المحتمل أنه يمكن القيام به ولكن أعتقد أنه سيكون في نهاية الأمر مرهقة. يتم تخزين كافة اقترانات نوع الملف في التسجيل بحيث سيكون لديك لكتابة / تعود إدخالات التسجيل في كل مرة يبدأ التطبيق ويتوقف. أيضا، اعتمادا على عدد المرات التي تفعل ذلك قد لا يمكن الحصول عليها من جمعيات جديدة تصل في ويندوز اكسبلورر فورا.

ويتم سرد الجمعيات تحت HKEY_CLASSES_ROOT في التسجيل ويمكن تعيين عدد لا يحصى كله من الطرق (أنواع التمثيل الصامت / progIDs / الخ).

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

وأنا لا أعتقد أنني أنصح "على الطاير" اقترانات نوع الملف

1) تحصل على تحديد أنواع الملفات التي هي في فتح حوار نوع الملف droplist. خارج ذلك، انها <م> ممكن لتغيير الافتراضي نوع الملف على تطبيق مفتوح، ثم قم باستبدال خلال قريبة التطبيق، كنوع ملف جمعية يست سوى إعداد التسجيل لذلك.

وأما بالنسبة للخطأ، أنا لن. السبب الأول هو أنه ليس السلوك القياسي من التطبيقات. والسبب الثاني هو أنه إذا كان التطبيق الخاص بك أو جهاز الكمبيوتر بشكل غير متوقع إنهاء، كنت عرضة لخطر من عدم العودة للجمعية لانها الإعداد الأصلي.

2) ويندوز بشكل افتراضي يسمح للمستخدم لاختيار هذه الخيارات باستخدام بزر الماوس الأيمن فوق وحركة "فتح مع" القيادة.

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