Windows 7でファイル拡張子の変更の警告をオフにする


73

Windows 7でファイル拡張子の名前変更ダイアログをオフにする方法はありますか?

プロンプトを表示するもの

名前の変更:ファイル名の拡張子を変更すると、ファイルが使用できなくなる場合があります。変更してもよろしいですか?


4
私のように、特定のタイプのファイルを作成するとき(つまり、新しい「テキストドキュメント」を作成して名前を変更する)にこの警告が頻繁に表示される場合は、代わりに「新しい」コンテキストメニュー目的のタイプを追加できます
MrWhite

回答:


9

AutoHotkeyスクリプトを使用すると可能です。

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

AutoHotkeyをインストールし、上記のコードを拡張子.ahkのファイルに保存して、スクリプトを起動します。[名前の変更]ウィンドウが表示されるまで待機します。実行すると、[はい]ボタン(ここでは[Button1]で識別されます)が自動的に「クリック」されます。

AutoHotkeyをインストールしたくない場合は、同じスクリプトのコンパイル済みバージョンを以下に示します。実行可能ファイルを実行し、その魔法を実行するのを見ます:-)。

質問がまだ表示されているため、実際には質問に答えていないことに注意してください。しかし、自動化されているため、もう煩わされることはありません。


4
これを試しましたが、スクリプトが応答して「はい」をクリックするのにまだ数秒かかります。これを軽減する方法はありますか?
セシルの名前は

このスクリプトは、他のエラーやプロンプトではなく、ウィンドウが予期しているものであると想定しています。私の知る限り、クリックする前に適切なウィンドウ(タイトルなど)の存在を問い合わせることができます。
horatio

これは回避策です。他に方法はありませんか?拡張機能を見て、それらを変更します。私は
スーパーユーザーであり

2
このクラス#32770は多くの種類のウィンドウで非常に一般的です(検索してみてください)。したがって、このスクリプトは「名前の変更」というタイトルの多くの種類のウィンドウで何かを行います。つまり、あなたが交渉したよりも多くの助けを得ているかもしれません:)
エフゲニーセルゲエフ

このソリューションは、ダイアログがポップアップしたときに再生される迷惑なサウンドを停止しません。多数のファイルの名前を変更する必要がある場合、非常に迷惑になります。あなたは何かのためにあまりにも多くの仕事である、リストを鳴らしシステムからの音を削除(およびその後戻ってそれを置く)しなければならない必要がある設定可能。:-(
Synetech

21

受け入れられた答えについてのコメントに応じて、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
}

2
ブリリアント。これは、受け入れられている答えよりもはるかに高速に機能します!おそらく0.1秒対0.5秒のように
ジョニー

1
まだ毎回鳴っている。
Synetech

9

適切なツール、忍耐、素敵な逆アセンブラー、そして運があれば無効にすることができます。

ただし、レジストリキーを変更するほど簡単ではありません。

使用中のファイルを削除しようとすると、誰かが「遅延」を無効にする例を次に示します。 http://www.codeproject.com/KB/system/NoDeleteDelay.aspx
いろいろと調べてみたところ、有用なものが見つかりませんでした。

RtvRecoよりも優れたソリューションは、誰かが「Rename2」のようなコンテキストメニューにメニューオプションを作成し、新しいファイル名を要求するメッセージボックスをポップアップし、Windows APIを使用して名前を変更することだと思います。


1
実際、数年前にNoDeleteDelayを多目的のExplorerハックに組み込みました。リストに次の名前変更プロンプトを追加するように見えます。:-)
Synetech

@Synetech:あなたの「万能エクスプローラーハック」についてのさらなる情報は大歓迎です。
コクシー

1
@Coxy、それは単にexplorer.exe、デフォルトのものについて私を悩ます多くのものを修正/改善/削除するためにパッチを当てるプログラムです。
Synetech

1
@Synetech:ああ、そうだったけど、github / codeplex / geocitiesのページを見て、同じ方法で自分のエクスプローラを修正できるかどうか疑問に思っていた。
コクシー

1
はい、ファイルに自由にパッチを当てると明らかに問題が発生する可能性があり、明らかに更新後に再適用する必要があります。別のファイルマネージャーについては、エクスプローラーで気に入っているものをまだ使用していません。それらはすべて乱雑になりすぎて過負荷になる傾向があります。その上、名前変更プロンプトは、Explorerについての唯一の迷惑な(まだ修正可能ですが、強制ではありますが)ものです。
Synetech

3

アプリをダウンロードするのではなく、cmd(コマンドプロンプト)で 'ren * .aa * .bb'コマンドを使用しないのはなぜですか?


3
Windows 7のコマンドプロンプトはDOSではありません。
マイケルフランク

3
DOSではありませんが、この回答は他の回答よりも役立ちます。
ネイト14年

2
あんまり。せいぜい、1つまたは2つのファイルの名前を変更する必要がある場合にのみ有用であり、それでも、コマンドプロンプトを開いて正しいファイルの名前を変更するのに必要な余分な時間はYes、エクスプローラーがポップアップするダイアログでクリックするのに必要な時間よりも長いアップ。
Synetech

3

ファイル拡張子の警告メッセージを無効にすることはできません。この設計により、ユーザーがファイルを誤って変更するのを防ぐことができます。

ソース:

マイクロソフトコミュニティの回答


29
スーパーユーザーは、自分が何をしているのかを(できれば)知っています-ファイル拡張子の名前を「誤って」変更したことはありません。そして、もしそうなら-私は誤って...名前を変更した後、Windowsがブルースクリーンの右を投げるとは思わない
FiveO

私はSUコミュニティに完全に同意しますが、このサイトは世界規模のリファレンスであり、一部の人々は、ここの一部の人々がシステムの名前を変更して台無しにしようとするかもしれません。それにもかかわらず、これはマイクロソフトの制限であるため、その時点で、技術的であろうとなかろうと、それが何であるかです。(コースのソースごと)
r0ca

2
You cannot disable the file extension warning message. It has this design to ensure the user's safety from modifying the files accidentally.MicrosoftはGoogleとほぼ同じくらい悪いです。初心者にはデフォルトで安全に設定するのではなく、上級ユーザーが選択して上書きできるようにするのではなく、ユーザーに最適なものを決定します。
Synetech

2

ただし、すべてが失われるわけではありません。

RtvRecoを使用して、警告が表示されたらすぐに自動的に閉じることができます。この気の利いた小さなツールは、迷惑なダイアログボックスでボタンを押し、メニュー項目を選択し、ウィンドウを最大化、最小化することで、Windowsの多くの側面を自動化するように設計されています。

...または、Windowsエクスプローラの代わりに適切なファイルマネージャーを使用します(例:Total Commander)。

どちらのプログラムもシェアウェアです。購入する前に試してください。

私はこのレジストリハックを知っていますが、Windows 7では動作しません

[HKEY_LOCAL_MACHINE \ SOFTWARE \ Microsoft \ Windows \ CurrentVersion \ Policies \ System]

ConsentPromptBehaviorAdminの値をゼロ(0)に設定して再起動します。

ps:もちろん、Total Commanderに代わる無料の選択肢があります。たまたま私が選んだファイルマネージャーです。


3
私はUACを無効にするだけだと考えていますが、他の誰かが確認/拒否できますか?
ナタリーアダムス

うん、しかし、MSDNのスレッドで、これとまったく同じ迷惑な解決策として見つけましたが、うまくいきません。

1

AutoITスクリプトの問題を解決するために使用したコードを次に示します。唯一の問題は、実行を続け、いくつかのリソースを消費することです。yallがスクリプトを修正するより良いアイデアを持っていない限り。:-)

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

1

自動的にダウンロードされると、拡張子として日付と時刻が追加されたファイルがあるためです。だから私は解決策を探していて、それを見つけました。

F ree Commanderというプログラムをダウンロードします。ポータブルバージョンがあり、必要に応じてUSBサムドライブにインストールできます。

このプログラムを使用すると、私の場合のように複数のファイルを選択することができ、本当に確認せずに拡張子の名前を変更します。


0

私はこれをどちらも使わないで本当に可能だとは思いません:

  1. コマンドプロンプト(慣れていない場合は面倒です)
  2. サードパーティの回避策、ファイルマネージャー、またはプロンプトを処理するもののいずれかであるため、必要はありません。

個人的にはPTFB(Push the Freakin 'Button)を使用しています。リソースがかなり少なく、非常に高速です。それは正確に安くはありませんが、他のもののために持っている便利なものです。


0

また、この愚かなメッセージに非常にうんざりしていたので、いくつかの新しいアイデアを使って独自のAutohotkey Scriptを作成しました。

永続的なsettimerや「while」コマンドが常にリソースを消費するのは望ましくありません。ファイルの名前変更には常にF2を使用しているため、このキーに特別な機能を追加するホットキーを作成しました。したがって、タイマーはこのキーを押したときにのみトリガーされ、タスクが完了するとオフになります。

また、スクリプトがこの特定のダイアログボックスにのみ影響するようにしたいと考えました。たとえば、スタートメニューの項目の名前を変更しようとすると、同じ名前変更ダイアログが表示されるため、名前だけを考慮するだけでは十分ではありませんでした。

そのため、この関数が機能するにはいくつかの条件があります。まず、エクスプローラーウィンドウとWindowsデスクトップで動作します。残りのプログラムまたは環境では、F2は引き続き正常に動作します。また、前述のような競合を防ぐために、スクリプトは名前変更ダイアログウィンドウの幅と高さをチェックして、一致することを確認します。

最後に、ファイル名全体を自動選択する機能も追加しました(Windows 7以前のように、拡張子と共に)。不要な場合は、Send ^ + {end}行を削除してください。

Windowsの英語版の場合、「cambiar nombre」を名前変更ダイアログウィンドウのタイトルにあるものに変更する必要があります。また、「s」を「y」に変更します。機能しない場合は、Autoit3 Window Spyを使用して、名前変更ダイアログウィンドウが実際にこのサイズ(if(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

ファイルの名前を変更するvb-scriptを作成し、特別なフォルダー「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
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.