it-swarm.asia

قم بإيقاف تشغيل

هل هناك طريقة لإيقاف تشغيل مربع حوار إعادة تسمية امتداد الملف في Windows 7؟

الشخص الذي يطالبك

إعادة التسمية: إذا قمت بتغيير ملحق اسم الملف ، فقد يصبح الملف غير قابل للاستخدام. هل أنت متأكد أنك تريد تغييره؟

69
Simon

إنه ممكن باستخدام برنامج نصي AutoHotkey:

While, 1
{
 WinWait, Rename ahk_class #32770
 WinActivate, 
 ControlClick, Button1
}

قم بتثبيت AutoHotkey ، احفظ الكود أعلاه في ملف بامتداد .ahk وقم بتشغيل البرنامج النصي. سينتظر ظهور نافذة إعادة التسمية. عندما يحدث ذلك ، فإنه "ينقر" تلقائيًا على الزر "نعم" (يتم تحديده هنا مع "Button1").

إذا كنت لا تريد تثبيت AutoHotkey ، فإليك إصدارًا برمجيًا من البرنامج النصي نفسه. تشغيل الملف القابل للتنفيذ ومشاهدته يفعل السحر :-).

لاحظ أنه لا يجيب على السؤال ، حيث لا يزال السؤال يظهر. لكنها آلية حتى لا تتضايق من ذلك.

9
Snark

رداً على تعليق حول الإجابة المقبولة ، وجدت أيضًا أن البرنامج النصي AHK بطيء جدًا. يبدو أن هذا التعديل يجعله أسرع:

While, 1
{
 WinWaitActive, Renommer ahk_class #32770
 send o
}

ستلاحظ أنني أستخدم النوافذ باللغة الفرنسية. لاستخدام اللغة الإنجليزية:

While, 1
{
 WinWaitActive, Rename ahk_class #32770
 send y
}

بالنسبة للنوافذ في البرتغالية (على الأقل إصدار pt-BR) ، استخدم:

While, 1
{
 WinWaitActive, Renomear ahk_class #32770
 send s
}
21
LiamHanks

إنه ممكن جداً ، مع الأدوات المناسبة ، والصبر ، وفك نيس ، وبعض الحظ يمكنك تعطيله.

ومع ذلك ، فهي ليست بسيطة مثل تغيير مفتاح التسجيل.

فيما يلي مثال على قيام شخص ما بتعطيل "التأخير" عند محاولة حذف ملف قيد الاستخدام. http://www.codeproject.com/KB/system/NoDeleteDelay.aspx
لقد حاولت أن أتجول ولم أجد شيئًا مفيدًا.

أعتقد أن الحل الأفضل من RtvReco هو قيام شخص ما بإنشاء خيار قائمة إلى قائمة السياق التي تظهر مثل "Rename2" وينبثق صندوق رسائل يطالب باسم الملف الجديد ويستخدم Windows API لإعادة تسميته.

9
Natalie Adams

لا يمكنك تعطيل رسالة تحذير امتداد الملف. لديه هذا التصميم لضمان سلامة المستخدم من تعديل الملفات عن طريق الخطأ.

مصدر:

مجتمع Microsoft Answer

3
r0ca

لا يمكنك ، ومع ذلك ، لا تضيع كل شيء.

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

... أو استخدم برنامج إدارة ملف لائق بدلاً من Windows Explorer (على سبيل المثال قائد المجموع).

كلا البرنامجين برنامج تجريبي ، جرب قبل الشراء.

أنا على دراية باختراق التسجيل هذا ، ومع ذلك ، فهو لا يعمل مع Windows 7

[HKEY_LOCAL_MACHINE\SOFTWARE\مايكروسوفت\ويندوز\\ سياسات\نظام]

قم بتعيين قيمة ConsentPromptBehaviorAdmin إلى صفر (0) وإعادة التشغيل.

ص.: بالطبع هناك بدائل مجانية لـ Total Commander ، لذلك يحدث أن يكون مدير الملفات المفضل لدي.

2
Molly7244

بدلاً من تنزيل أحد التطبيقات ، لماذا لا تستخدم فقط الأمر "ren * .aa * .bb" في cmd (موجه الأوامر)؟

2
Helpful

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

قم بتنزيل برنامج يسمى F ree Commander. لديهم إصدار محمول يمكن تثبيته على محرك أقراص USB الإبهام إذا لزم الأمر.

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

1
Glenn

إليك الرمز الذي استخدمته لحل المشكلة في البرنامج النصي AutoIT. المشكلة الوحيدة هي أن تبقي على التوالي وخنازير بعض الموارد. ما لم يكن لديك فكرة أفضل لإصلاح البرنامج النصي. :-)

While 1
  if WinActive("Rename","") Then
    Send("!y")
  EndIf
  WEnd
1
Mike

لا أعتقد حقًا أن هذا ممكن دون استخدام إما:

  1. موجه الأوامر (متاعب ما لم تكن معتادًا عليها)
  2. حل طرف ثالث ، إما مدير ملفات أو شيء يتعامل مع الموجه حتى لا تضطر إلى ذلك

أنا شخصياً أستخدم PTFB (اضغط على زر Freakin) ؛ انها منخفضة جدا على الموارد وسريعة جدا. إنها ليست رخيصة تمامًا ، ولكنها شيء مفيد بالنسبة للأشياء الأخرى.

0
Paul Roberts

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

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

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

لذلك ، هناك بعض الشروط لهذه الوظيفة للعمل. أولاً ، ستعمل على إطارات Explorer وعلى سطح مكتب Windows. مع بقية البرامج أو البيئات ، سوف تستمر F2 في العمل بشكل طبيعي. أيضًا ، لمنع التعارضات مثل ما سبق ذكره ، يتحقق البرنامج النصي من عرض وإطار نافذة حوار إعادة التسمية للتحقق من مطابقتها.

أخيرًا ، لقد قمت أيضًا بتضمين ميزة الاختيار التلقائي لاسم الملف بالكامل (مع الملحق ، مثل قبل نظام التشغيل Windows 7) ، لأنني أفضل ذلك بهذه الطريقة. لا تتردد في إزالة السطر Send ^ + {end} إذا كنت لا تريد ذلك.

بالنسبة للإصدارات الإنجليزية من Windows ، سيتعين عليك تغيير "cambiar nombre" إلى كل ما هو على عنوان نافذة حوار إعادة تسمية. أيضًا ، قم بتغيير "s" بـ "y". في حالة عدم نجاحها ، يمكنك أيضًا استخدام Autoit3 Window Spy للتحقق من أن نافذة حوار إعادة تسمية لديك بالفعل بهذا الحجم (إذا (warnw = 515) و (warnh = 154).

#SingleInstance force

GroupAdd, folders2, ahk_class CabinetWClass
GroupAdd, folders2, ahk_class WorkerW
GroupAdd, folders2, ahk_class ExploreWClass
GroupAdd, folders2, ahk_class Progman
return

$F2::
if ( Winactive("ahk_group folders2") )
{
Send {F2}
Send ^+{end}
settimer, renombrar, 20
return
}
Else
{
Send {F2}
Return
}

renombrar:
WinWaitActive, Cambiar nombre ahk_class #32770
WinGetPos,,, warnw, warnh, Cambiar nombre
if (warnw = 515) and (warnh=154)
{
send, s
click up left
settimer, renombrar, off
return
}
Else
{
settimer, renombrar, off
return
}
0
Elaphe

قم بإنشاء برنامج نصي vb يعيد تسمية الملف ، ضعه في مجلد خاص "SendTo" ، وانقر بزر الماوس الأيمن على الملف الذي يحتاج إلى تغيير ملحقه وتعبئة الاسم الجديد. لا توجد أي تحذيرات ، ولا يستغرق إنشاء البرنامج النصي سوى بضع دقائق. البرنامج النصي يحتوي على هذا:

on error resume next
Set objArg = Wscript.Arguments
do
   if objArg.Count < 1 then exit do
   fil=objArg(0)
   Set FSO = CreateObject("Scripting.FileSystemObject")
   if Err.Number > 0 then exit do
   Set f1 = FSO.GetFile(objArg(0))
   fil=f1.Name
   i=inputbox("","",fil)
   if i = fil then exit do
   f1.Name = i
   exit do
loop
0
Richard