إصلاح ويندوز 7 اختصارات سطح المكتب تختفي

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

سيؤدي أولاً إلى إزالة اختصارات سطح المكتب التي لم يتم استخدامها لمدة ثلاثة أشهر على الأقل. ستقوم "صيانة النظام" أيضًا بإزالة الاختصارات المعطلة على سطح المكتب إذا كان هناك أكثر من أربعة منها. تكمن المشكلة في أن Windows 7 سيتعرف على الاختصارات لمواقع الشبكة التي تم قطع اتصالها على أنها مقطوعة وأيضًا الاختصارات التي ترتبط بمجلدات shell.

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

الاقتراح الثاني المقدم من Microsoft هو إيقاف تشغيل صيانة الكمبيوتر:

  • انقر فوق ابدأ ، ثم انقر فوق لوحة التحكم.
  • ضمن النظام والأمان ، انقر فوق بحث عن المشكلات وحلها.
  • في جزء التنقل الأيمن ، انقر فوق تغيير الإعدادات.
  • ضبط صيانة الكمبيوتر على وضع إيقاف التشغيل.

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

يتم تشغيل جميع مهام الصيانة بواسطة البرامج النصية الموجودة في c: \ windows \ Diagnostics \ المجدولة \ الصيانة \. الخيارات هي لتحرير البرامج النصية مباشرة في هذا الدليل. تحظر الأذونات تحرير الملفات بواسطة المستخدم الحالي.

إصلاح ويندوز 7 اختصارات سطح المكتب تختفي

يرجى ملاحظة: هذا اختراق قد يؤثر على أجزاء أخرى من نظام التشغيل. كل شيء سار على ما يرام بعد ذلك على نظام اختبار ولكن تأكد من نسخ الملفات احتياطيًا بشكل صحيح قبل تحريرها

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

الجزء الأول يمكن أن يكون آليا. فقط قم بتنزيل البرنامج النصي في هذا المنتدى وتنفيذه. سيؤدي ذلك إلى إضافة إدخال "أخذ الملكية" إلى قائمة النقر بزر الماوس الأيمن في مستكشف Windows.

انتقل إلى C: \ Windows \ diagnostics \ المجدولة \ الصيانة في مستكشف Windows بعد تثبيت البرنامج النصي وانقر بزر الماوس الأيمن فوق الملف TS_BrokenShortcuts.ps1 . حدد خيار أخذ الملكية الذي يجب أن ينقل الملكية إلى المستخدم الذي قام بتسجيل الدخول.

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

افتح موجه سطر أوامر مرتفع. يمكنك القيام بذلك عن طريق النقر فوق Start orb ، كافة البرامج ، ثم البرامج الملحقة. انقر بزر الماوس الأيمن فوق ارتباط موجه الأوامر وحدد "تشغيل كمسؤول".

الآن أصدر الأمر التالي لمنح المستخدم النشط الحقوق الكاملة للملف. تأكد من استبدال USERNAME باسم المستخدم النشط.

icacls c:\windows\diagnostics\scheduled\maintenance\TS_BrokenShortcuts.ps1 /grant USERNAME:F

الآن يمكنك تحرير الملف بشكل طبيعي في محرر نصوص مثل المفكرة. فتحه وتحديد موقع السطر (السطر 11)

[string]$list = ""

احذف كل شيء أسفل هذا السطر حتى (السطر 22)

return $list

الأسطر التي تم حذفها هي:

Get-ChildItem -Path $path -filter *.lnk | Foreach-Object {

$ fullPath = ConvertTo-WQLPath $ _. FullName

$ wmiLinkFile = Get-WmiObject - استعلام "SELECT Name ، Target ، AccessMask FROM Win32_ShortcutFile WHERE Name = '$ fullPath'"

إذا (- ليس (Test-ValidLink $ wmiLinkFile) - و (Test-Delete $ wmiLinkFile))

{

$ list = قائمة $ AttachTo $ wmiLinkFile.Name

}

}

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

أدى ذلك إلى إصلاح الاختصارات المقطوعة ، لكن لا تزال لدينا مشكلة أن الاختصارات التي لم يتم استخدامها لبعض الوقت يتم حذفها بواسطة نظام التشغيل Windows 7 أيضًا.

يتعين علينا (تقريبًا) تنفيذ نفس العملية هنا. حدد موقع الملف TS_UnusedDesktopIcons.ps1 في نفس الدليل. استحوذ عليها ومنح حقوق وصول المستخدم النشطة.

تحرير الملف بعد ذلك وتحديد موقع السطر (24)

[string]$list = ""

حذف كل شيء حتى السطر (35)

return $list

بحيث يتم حذف الأسطر التالية

Get-ChildItem -Path $path -filter *.lnk | Foreach-Object {

$ fullPath = ConvertTo-WQLPath $ _. FullName

$ wmiLinkFile = Get-WmiObject - استعلام "SELECT Name ، Target ، AccessMask FROM Win32_ShortcutFile WHERE Name = '$ fullPath'"

$ lastAccessTime = Get-LastAccessTime $ _. FullName

إذا ((Test-ValidLink $ wmiLinkFile) - و (Test-Delete $ wmiLinkFile) - و (Test-FileShortcut $ wmiLinkFile) - و (الاختبار - غير مستخدم $ lastAccessTime $ عتبة))

{

$ list = قائمة $ AttachTo $ wmiLinkFile.Name

}

}

يرجى ملاحظة أنني لم أختبر البرنامج النصي الثاني ولكن يجب أن يعمل بشكل جيد.

سيؤدي هذا إلى حل جميع المشكلات التي يواجهها المستخدمون مع الاختصارات التي تمت إزالتها على سطح مكتب Windows 7.

تأكد من عمل نسخة احتياطية للملفات بشكل صحيح قبل تحريرها. الرجاء إخبارنا إذا كان هذا الأمر مناسبًا لك أو إذا كان لديك فكرة أفضل حول كيفية إصلاح مشكلة الاختصار المحذوفة في Windows 7.