Windowsのファイルを開くダイアログでスラッシュを使用できますか?


4

Windowsの標準のファイルを開くダイアログ(たとえば、メモ帳の[ファイル]> [開く]メニューエントリで表示されるダイアログ)で、スラッシュを含むパスを入力できるようにしたいと思います/。ただし、バックスラッシュのみが受け入れられます(Windows XPとWindows 7の両方で試しました)。開けることはできますがc:\autoexec.bat、開けようとすると、/autoexec.batまたはc:/autoexec.batエラーメッセージが表示されます

c:/autoexec.bat
The file name is not valid.

Windowsでは、一部のコンテキストはパス区切り文字としてスラッシュを使用できますが、残念ながら、少なくともデフォルトでは、ファイルを開くダイアログでは使用できません。

Windowsファイルを開くダイアログでスラッシュ使用できるようにする、魔法のレジストリ設定、アドオンプログラム、またはその他の妥当な¹メソッドはありますか?Windows 7で実行されているOffice 2007に特に興味がありますが、XPおよび7で標準ダイアログを使用するすべてのアプリケーションに適用されるソリューションを希望します。

「Windowsを使用しない」はオプションではありません。


どうしてフォワードスラッシュが必要なのでしょうか?あなたはフルパスで入力していませんか?そして、もしそうなら、バックスラッシュにはドロップダウンボックスも来ることを知ってください。ドロップダウン補完を利用するよりも速く入力する方法はありません
stijn

私が考えることができる唯一のことは、OPがスラッシュを使用してソースからパスをコピー/ペーストすることです。その場合、ソースをWindowsスタイルの出力パスに修正します
-stijn

実際に、有効なパス区切り文字です。Windowsがある程度のPOSIX準拠を主張できるように、ずっと前に追加されました。すべてのWindowsアプリケーションがサポートしているわけではありません。たとえば、コマンドプロンプトで使用できます。より詳しい説明へのリンクについては、私の回答をご覧ください。これを使用して、OS間でより密接に連携するスクリプトとアプリケーションを作成することができます。
ジュリアンナイト

@stijnはい、コピー&ペーストが私のユースケースでした。私がコピーアンドペーストするアプリケーションは他のことにバックスラッシュを使用する傾向がありますが、Windowsはこのコンテキストではスラッシュを無効な文字として扱いますが、Windows側のみが適応可能です。
ジル

1
@JulianKnightは-ちょうどFYI、MSが持っているdoesntの度合い POSIX準拠のを、それがapporpriate MSアドオンに準拠し、100%POSIXです。参照してくださいen.wikipedia.org/wiki/Interix
Keltari

回答:


4

答えはノーだと思います。表示されるダイアログは標準のWindows APIのものであり、ほとんどのプログラムで使用されます。それをプログラミングする場合、オフ/オンし、あなたの問題をcasuing 1であることができるオプションがいくつかありますOFN_FILEMUSTEXISTOPENFILENAMEの構造。私はそれがどのようにチェックするかを正確に文書化するものを見つけることができませんでした。

私がWindows側で見る唯一の解決策は、関数を含むdllにパッチを適用し、スラッシュを許可する別のチェックを行うことですが、それにはかなりのスキルが必要です。

反対に、もしあなたが何らかのプログラマーであるなら、物事を修正することができます:私が考えることができる最も速いのは(文字列のソースを変更することを除いて)現在のクリップボード入力を受け取り、前方に変換する小さなコマンドラインプログラムを作成することですバックスラッシュに変換し、結果をクリップボードに再度配置します。それをバッチファイルに入れ、ショートカットを割り当てて完了します。ワークフローは次のとおりです:パスのコピー、ショートカットのヒット、ダイアログボックスでCtrl-Vのヒット、これはたった1つの簡単な追加ステップです。ほとんどのスクリプト言語は、Windowsでクリップボードのコンテンツを取得でき、すべて正規表現で置換できるため、実際には数行のコードだけです。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.