[ 新規に投稿する ]

秀丸エディタで副ストリームが編集出来ないNo.42325
rtle さん 25/11/27 03:56 [ コメントを投稿する ]
  以下のようなコマンドラインを秀丸ファイラーのショートカットに登録し、任意のディレクトリに副ストリームでコメントをしています。
"Hidemaru.exe" "/(500,500,500,300)" "/n" "/i" "/@private" "C:\hoge\kage:Comment"

ですが、ある条件で副ストリームの書き込みが出来ない事がありました。

・8dot3名が無効になっているドライブである事
・・自分の環境では外付けのストレージが該当。管理者権限のコマンドプロンプトで以下のコマンドを実行しました。4行目の「無効です」がポイント。
$ fsutil 8dot3name query D:
ボリュームの状態は 1 です (8dot3 名の作成は無効です)。
レジストリの状態は 2 です (ボリューム単位で設定します - 既定値)。
以上の設定に基づいて、8dot3 名の作成は D: で無効です

・・Cドライブでは以下の通り「有効です」表記になり、この問題は発生しません。
$ fsutil 8dot3name query C:
ボリュームの状態は 0 です (8dot3 名の作成は有効です)。
レジストリの状態は 2 です (ボリューム単位で設定します - 既定値)。
以上の設定に基づいて、8dot3 名の作成は C: で有効です

・D:\abc\def というディレクトリを作る。
・"Hidemaru.exe" "/(500,500,500,300)" "/n" "/i" "/@private" "D:\abc\def:Comment" で秀丸エディタを起動して、適当な文字「あいうえお」を入力して保存しようとすると以下のエラーが表示される
「ファイルへのアクセスが拒否されました。
読み取り専用属性のファイルに書き込みしようとしたか、またはファイルへのアクセス権限が制限されてます。
名前を付けて保存しますか?」
・そして副ストリームは記録されていない。以下の方法で確認
・・秀丸ファイラーで表示されない。
・・コマンドプロンプトで dir /R D:\abc\ と実行して、副ストリームの def:Comment:$DATA が表示されない

以下の場合は発生しません。これも8.3名が関係してそうだなと思いました。
・フォルダ名に日本語が入っている。 D:\abc\defあ というフォルダでは問題なく副ストリームが記録され、秀丸ファイラーでも dir /R コマンドでも表示される。
・フォルダ名が英語だけでも充分に長い場合。 D:\abcabcabcabc\defdefdefdefdefdefdefdefdefdefdefdef というフォルダ名ではok。これがフォルダ名の文字数が鍵なのか、フルパスの文字数が鍵なのかは不明です。

保存できない D:\abc\def でもコマンドプロンプトで以下を実行すれば保存できますので、NTFS側の制限という事ではないかなと思います。
echo 追記します >> "D:\abc\def:Comment"

10年くらい前から副ストリームについて言及しているの自分だけなんじゃないかと薄々感じてはいるのですが、ご確認頂けますでしょうか。
秀丸エディタ Ver 9.50で確認しています。
[ ]
RE:42325 秀丸エディタで副ストリームが編集出来ないNo.42326
秀丸担当 さん 25/11/27 08:45 [ コメントを投稿する ]
  バグ情報ありがとうございます。
確かにできない場合が確認できました。
8.3ファイル名は関係なく、秀丸エディタ上の問題です。
何かしらの対策を検討します。
[ ]
RE:42326 秀丸エディタで副ストリームが編集出来ないNo.42327
rtle さん 25/11/27 21:08 [ コメントを投稿する ]
  ありがとうございます。
[ ]
RE:42327 秀丸エディタで副ストリームが編集出来ないNo.42351
rtle さん 25/12/07 19:35 [ コメントを投稿する ]
  Ver9.52β4 で保存できるようになっていました。ありがとうございます
[ ]

[ 新規に投稿する ]